matlab 并行计算_MATLAB并行计算之多进程连续滤波

为了提高MATALB的滤波效率,采用了spmd并行计算来提高滤波速度。针对大数据分块后滤波的不连续问题,每次分段滤波时,设置每段overlap值等于滤波器中寄存器的个数。

下面直接上代码。

function

作为对比,下面是单进程滤波的代码

function

测试,比较单进程与多进程滤波的运行时间,并二进制比较滤波后的输出文件是否相同。

function

测试结果表明,使用68阶FIR滤波器对1.2G的int8文件进行滤波,单进程需要138秒,6进程需要46秒,花费的时间约为1/3。(之所以不是1/6,是因为文件读取与写入是单进程的。)

上述代码的测试环境为MATLAB R2019a,Intel i7 8700 4.3GHz, 6核6线程(关闭了超线程),内存32G。

易夕:MATLAB Tricks 专栏目录​zhuanlan.zhihu.com
表情包
插入表情
评论将由博主筛选后显示,对所有人可见 | 还能输入1000个字符
相关推荐
©️2020 CSDN 皮肤主题: 1024 设计师:白松林 返回首页