在CCSV5中启动多线程编译

现在的计算机一般都使用多核的CPU,但是在CCS下编译的时候,并没有充分使用CPU的多核特性,缺省时只有一个CPU参与编译。在CCSV5中很容易可以使能多线程编译。CCSV5使用gmake解析makefile,gmake本身是支持多线程编译的,只要在gmake选项中加上-jN选项就可以。其中N是需要支持的线程数目。gmake建议N的取值是CPU核数的两倍。例如一个双核的Centrino,应该使用-j4。

如果是在CCS的图形界面,可以通过选择工程属性,选择C/C++ build, 把buildCommand改成

${CCS_UTILS_DIR}/bin/gmake -j4  -k

如果使用脚本来生成工程文件,可以在com.ti.ccstudio.apps.projectCreate中时使用

          -ccs.buildCommandFlags " -j4 "



在CCSV5.2/V5.3中,在工程属性->build属性窗口,选择behaviour tab,窗口中有使能parallel build选项,使能以后选择和CPU核数匹配的jobs个数就可以使能并行编译了。

 

同样,如果能够支持分布式编译,可以把4改成分布式编译系统中CPU个数的两倍


http://www.deyisupport.com/question_answer/dsp_arm/c6000_multicore/f/53/t/10179.aspx

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是使用汇编语言在ccsv5实现DFT运算的示例代码: ``` ; DFT.asm ; 使用汇编语言实现DFT运算 .cdecls C,LIST,"msp430.h" ; 定义常量 .const N = 8 ; DFT长度 PI = 3.1416 ; 圆周率 ; 定义变量 .bss .align 2 x: .space 2*N X: .space 2*N .text ; DFT函数 .global DFT DFT: ; 初始化变量 push R4 push R5 push R6 mov #x, R4 mov #X, R5 mov #N, R6 ; 计算DFT mov #0, R2 ; 初始化k=0 loop: mov.w @R4+, R1 ; x(k) mov.w #0, R0 ; 初始化X(k) mov #0, R3 ; 初始化n=0 inner_loop: mov.w @R4+, R7 ; x(n) mov.w R2, R8 ; k*n mpy R7, r12 ; x(n) * cos(k*n) mac R7, r13 ; x(n) * sin(k*n) add R12, R0 ; X(k) += x(n) * cos(k*n) sub R13, R0 ; X(k) -= x(n) * sin(k*n) inc R3 ; n++ cmp R3, R6 ; n<N? jl inner_loop mov.w R2, R12 ; k mov.w R0, @R5+ ; X(k) add #2, R4 ; x++ inc R2 ; k++ cmp R2, R6 ; k<N? jl loop pop R6 pop R5 pop R4 ret ; 主函数 .global main main: ; 初始化x数组 mov #x, R4 mov.w #1, @R4+ mov.w #2, @R4+ mov.w #3, @R4+ mov.w #4, @R4+ mov.w #5, @R4+ mov.w #6, @R4+ mov.w #7, @R4+ mov.w #8, @R4+ ; 调用DFT函数 call #DFT ; 输出X数组 mov #X, R4 mov.w #N, R6 loop2: mov.w @R4+, R5 ; 输出X(k)的实部和虚部 call #printf mov.w #"\n", R1 call #putchar inc R6 cmp R6, #2*N jl loop2 ; 退出程序 mov.w #0, R15 ; printf函数 .global printf ; putchar函数 .global putchar ``` 这个示例代码实现了一个DFT函数,它可以计算给定长度为N的复数序列x的DFT,结果存储在另一个长度为N的复数序列X。主函数初始化了一个长度为8的复数序列x,然后调用DFT函数计算其DFT,最后输出结果。由于ccsv5没有内置printf和putchar函数,所以你需要自己实现这些函数,或者使用msp430-gcc等其他编译器。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值