I have an i7-M620 processor that have 2 physical cores and 2 threads (multi-threaded CPU) per core (a total of 4 threads). When I use the MATLAB Parallel Computing Toolbox,
I got around this (with my core i5 with 2 cores and 4 threads) by editing the "local" configuration for the parallel computing stuff:
Parallel->Manage Cluster Profiles
Validate
the local
profile before changing anything.edit
and change the NumWorkers
variable to suit your needs.Then you can start matlabpool
like this:
matlabpool local
Note I have never gotten a speedup using parfor
. Matlab's overhead has always outweighed the benefits. What I'm saying is: benchmark your code first, then decide if parfor
(or other parallel stuff) works for you or not.