与并行for循环生成代码(PARFOR)

这个例子说明如何生成C代码为MATLAB®算法包含PARFOR-循环。

  1. 编写包含一个功能的MATLABPARFOR-循环。例如:

    函数A = test_parfor%#代码生成一个=酮(10256);R =兰特(10256);PARFOR I = 1:10(ⅰ,:)=实际(FFT(R(I,:)));结束
  2. 生成C代码test_parfor。在MATLAB命令行中输入:

    代码生成-config:LIB test_parfor

    因为你没有指定要使用的线程的最大数量,生成C代码上的内核数量可并行执行循环迭代。

  3. 要指定线程的最大数目,重写功能test_parfor如下:

    函数A = test_parfor(u)的%#代码生成一个=酮(10256);R =兰特(10256);PARFOR(I = 1:10,U)A(I,:)=实际(FFT(R(I,:)));结束
  4. 生成C代码test_parfor。用-args 0指定输入,ü,是一个标量的两倍。在MATLAB命令行中输入:

    代码生成-config:LIB test_parfor -args 0

    在生成的代码,的迭代PARFOR-loop至多运行由输入指定的核的数量,ü。如果小于ü核心可用,迭代上可在通话时的内核上运行。

相关话题