Using parfor

Hi I successfully implemented a parfor loop in Matlab. However on my computer which has 4 cores I am not getting the improvement in computation time I expected to get. When I go to the task manager and check the CPU usage it rarely goes over 25% which is the same as before the parfor loop What could be the problem?

 Respuesta aceptada

Thomas
Thomas el 27 de Abr. de 2012

0 votos

What kind of problem have you set up using parfor.. a general fact about the Parallel Computing Toolbox is that the parallel tasks have to be pretty intensive/expensive in order for parallelization be effective..
If your computation is trivial then you might not get the speedup you expect.. Not a lot more can be said without looking at what code you have parallelized.
Also, is your machine quad core or a two core hyperthreaded which would show up as 4 virtual cores?

1 comentario

Peter
Peter el 27 de Abr. de 2012
Hi thanks for your reply,
My processor is an Intel(R) Core(TM)2 Quad CPU Q8200 @2.33GHz.
Yes the tasks are pretty heavy.I use bintprog with a hundreds or thousands of variables that take a while to compute and other computationally expensive stuff.
I define the parfor this way on MATLAB 7.5.0(R2007b):
parfor (r=1:m_dash,4)
... end
Is that the correct way?

Iniciar sesión para comentar.

Más respuestas (1)

Edric Ellis
Edric Ellis el 2 de Mayo de 2012

0 votos

One thing to check - have you opened MATLABPOOL before issuing PARFOR? You need to do this in each MATLAB session to make the extra workers available. I.e.
matlabpool open local 4

Categorías

Más información sobre Parallel Computing Toolbox en Centro de ayuda y File Exchange.

Preguntada:

el 27 de Abr. de 2012

Community Treasure Hunt

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

Start Hunting!

Translated by