MatLab R2011a detects 8 physical cores when I only have 4!

1 visualización (últimos 30 días)
Hey! I have a computer that has a single Xeon X3480 (4 cores) CPU and 16 GB of PC-1333 RAM. This computer is currently running Windows Server 2008 R2. I am running MatLab R2011a. My problem is that when I run 'matlabpool open', MatLab gives me a pool of 8 workers when I only have 4 physical cores. In all my other machines, MatLab only gives me one worker per physical core. I am wondering whats wrong? I have checked all the properties of my local configuration and they are all on default. I have the "Number of workers available to scheduler (Cluster Size)" option empty so as far as I know it is supposed to give me only 4 workers. Thanks in advance!

Respuesta aceptada

Jan
Jan el 19 de Oct. de 2011
This Xeon uses hyper-threading, as shown here:
This means, that each core can process two threads at the same time. Therefore it is a good idea to start 8 workers.

Más respuestas (1)

Thomas
Thomas el 20 de Oct. de 2011
Also if you do not want to use hyper-threading or run just 1 instalnce of matlab/physical core you can give the command
matlabpool open local 4
and matlab will open a local pool of only 4 workers ( I hope it would be on the 4 physical cores and not use hyper-threading on two cores and leave the other two cores unused..)

Categorías

Más información sobre Parallel for-Loops (parfor) en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by