Parallel processing is not able to use all my cores.
조회 수: 62 (최근 30일)
이전 댓글 표시
I have dual processors (2x Intel® Xeon® Processor E5-2699 v3), each with 18 physical cores (hyperthreading is disabled) for a total of 36 physical cores. For some reason I cannot execute "parpool(36)". I can only run "parpool(18)". Is there a way to fully utilize both processors? I am running R2016b on Redhat 6. Any ideas?
댓글 수: 2
Edric Ellis
2016년 12월 6일
Are the two processors running a single instance of the OS? (If not, then you'll need MATLAB Distributed Computing Server). What does feature('numcores') return? Did you try using the cluster profile manager to manually set the number of workers to 36?
Iman Aganj
2022년 3월 16일
편집: Iman Aganj
2022년 3월 16일
Hello. Any update on this? I am running R2022a on a Windows Server 2022 machine with 96 physical cores (192 logical cores). According to
feature('numcores')
the OS is restricting Matlab to only 48 cores, which I think is because Matlab is only using a single processor group. How can I use 96 cores (e.g. in a parpool) on this machine? There is a bug report here, but the workaround didn't resolve the issue.
Thanks.
A quick update: Processor Group Extender feature of Process Lasso fixed the issue. With its help, Matlab can now use more than a single processor group and practically all the cores in parpool.
답변 (3개)
Iman Aganj
2022년 3월 16일
A quick update: Processor Group Extender feature of Process Lasso fixed the issue. With its help, Matlab can now use more than a single processor group and practically all the cores in parpool.
댓글 수: 0
Alexander Eiermann
2018년 1월 31일
I don't think Sean's answer is accurate. I just set up a rig with dual Xeon E5-2630s on separate motherboards for a total of 20 physical and 40 logical cores. I had absolutely no problem creating parallel profiles with more than 20 workers. Your issue probably stems from the fact hyperthreading is disabled on your system. Make sure it's enabled in the BIOS. Once you've done that, also make sure that "preferred number of workers in a parallel pool" is set to 36 under Parallel Preferences.
댓글 수: 3
Sinan Islam
2022년 1월 25일
편집: Sinan Islam
2022년 1월 25일
@Walter Roberson Windows 10 Pro for Workstations (or Windows 11 Pro for Workstations) can operate a single OS instance on multiple CPUs. I wonder if this is relevant to what you are talking about, and perhaps it would allow MATLAB to work on multiple CPUs on different motherboards on a single machine.
Walter Roberson
2022년 1월 25일
Windows is interesting because it has a limit of 64 logical cores in one group; https://docs.microsoft.com/en-us/windows/win32/procthread/processor-groups . I seem to recall seeing some remarks along the way that on Windows, MATLAB's parallel groups are limited by this and so more than one parallel group is required to work with more than 64 logical cores.
Sean de Wolski
2016년 12월 5일
You'll need MATLAB Distributed computing server in order to take advantage of all of the cores since they are controlled by separate motherboards.
댓글 수: 0
참고 항목
카테고리
Help Center 및 File Exchange에서 MATLAB Parallel Server에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!