我在Matlab中求解非线性偏微分方程。我的代码多次调用fft2和ifft2命令。所以我想使用集群的GPU来加速计算。我已经使用gpuArray准备了我的gpu代码并收集了。但是,我在群集使用方面很天真,我唯一知道的是我应该使用putty的ssh终端,并且群集上没有安装Matlab,我的代码需要先编译。 首先,我想知道如何编译我的Matlab代码 第二,如何在这个远程集群上运行此代码?什么是命令?
非常感谢您的帮助
答案 0 :(得分:0)
首先,为了使用GPU,您需要将fft2(x)
更改为gather(fft2(gpuArray(x)))
。同样,ifft2(x)
变为gather(ifft2(gpuArray(x)))
。
假设您没有谈论将群集用作并行计算的工作者,您可以使用matlab -r 'myfunction'
形式的命令从Linux终端运行MATLAB命令。请注意,myfunction.m
必须存在于当前工作目录或MATLAB的默认路径中。
修改脚本以使用GPU,ssh进入群集后,切换到包含脚本的目录并运行matlab -r
命令。