how to use parallel programming or multi threading or multicore in matlab?
32 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Jack Ie
il 5 Apr 2016
Risposto: Walter Roberson
il 5 Apr 2016
I have a program in matlab. It run in 1 hour. It is very slow!. how can I use parallel programming or multi threading or multicore in matlab? Is there any other way to improve run time?
1 Commento
Ced
il 5 Apr 2016
To your actual question, the short answer is: yes, matlab can use multithreading and process things in parallel. Check out Parallel Processing in Matlab
Parallelization is not the first thing I would try though. In many cases, a huge speed up can be achieved by writing the process in an optimized form such as vectorizing operations instead of loops and conditional statements.
You can check which part of your code take up most of the time using the profiler. Just run
profile on
then run your code (or a part of it) and afterwards, call
profile viewer
This will give you a detailed description of which parts of the code are most worth optimizing.
Risposta accettata
Walter Roberson
il 5 Apr 2016
You would need the Parallel Computing Toolbox for that. It turns out that for a lot of programs, using Parallel Processing is slower rather than faster, because of the communications overhead.
A lot of the time, code can be sped up more by vectorizing and clever rewriting than by switching to Parallel Computing. But it depends on what the code does.
0 Commenti
Più risposte (0)
Vedere anche
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!