How to set up multithreading on repetitive programs

1 回表示 (過去 30 日間)
Eugene Kogan
Eugene Kogan 2011 年 2 月 14 日
I am running a program which involves iterating through images and building a large matrix of results. There are no interactions or races between each iteration -- just simple brute force calculation on a different set of images. Since my computer has 8 cores, I'd like to divide up the task into 8 chunks and have them all go at the same time. I've actually done this manually by opening up 8 instances of matlab, loading the same dataset 8 times into RAM, and just changing the start and ending indexes of the program in each instance, and it worked great, reducing run time to nearly 1/8th. Of course this is silly -- is there some way to do this same process but on one instance of matlab with one dataset loaded into RAM but 8 processes?

採用された回答

Walter Roberson
Walter Roberson 2011 年 2 月 14 日
You need the Parallel Processing Toolkit for this. Parfor might be suitable, as might be codistributed arrays; if not, there is always SMPD.
  1 件のコメント
Jiro Doke
Jiro Doke 2011 年 2 月 17 日
Walter, can you rename the product name to "Parallel Computing Toolbox" and add a link to it? Thanks.
http://www.mathworks.com/products/parallel-computing/

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeLoops and Conditional Statements についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by