How to set up multithreading on repetitive programs

5 visualizzazioni (ultimi 30 giorni)
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?

Risposta accettata

Walter Roberson
Walter Roberson il 14 Feb 2011
You need the Parallel Processing Toolkit for this. Parfor might be suitable, as might be codistributed arrays; if not, there is always SMPD.
  1 Commento
Jiro Doke
Jiro Doke il 17 Feb 2011
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/

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Loops and Conditional Statements in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by