Parallel running coroutines in Matlab

2 次查看(过去 30 天)
Hello, I am wondering if there is any way to get a functional co-routine in Matlab, a function that runs alongside another script. The example here is that I have a loop that pulls a subset of large set of data off of the hard drive into active memory and performs operations on it (largely on the GPU), and then saves image products, again to the hard drive. The hard drive read/write operations are fairly slow, so one way to improve performance would be to have the read/write routines running simultaneously as the intermediate operations; writing a finished data subset to one drive while processing the current data subset on the GPU while loading the next subset from another drive.
One could imagine other cases where running multiple functions in parallel would also be of benefit, if they do not need to be performed in a pipeline.
Is this possible in Matlab? Either "legitimately" or using some kludged combination of feval and cellfun?

采纳的回答

Joss Knight
Joss Knight 2018-4-28
This is one of the major purposes of the Parallel Computing Toolbox. Start by taking a look at the documentation for Asynchronous Parallel Programming.
  1 个评论
D. Plotnick
D. Plotnick 2018-4-29
Helpful as always Joss. This is exactly what I was looking for. I was aware of 'parfor' and the GPU related portions of the PCT, but somehow missed this capability. Cheers! -Dan

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Parallel and Cloud 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by