использовать все ядра процессора

Я хочу использовать параллельные вычисления в Matlab, у меня есть процессор i7-960 с 4 ядрами и 8 потоками, когда я запускаю команду feature('numCores') в Matlab, я получаю это

feature('numCores') 
MATLAB detected: 3 physical cores.
MATLAB detected: 6 logical cores.
MATLAB was assigned: 6 logical cores by the OS.
MATLAB is using: 3 logical cores.
MATLAB is not using all logical cores because hyper-threading is enabled.

ans =

     3

почему Matlab обнаруживает только 3 физических ядра! и как я могу использовать все логические и физические ядра для параллельных вычислений. Благодарю.


person ensberg    schedule 19.02.2016    source источник
comment
можешь попробовать parpool(6) и посмотреть, что получится? Кроме того, гиперпоточность на самом деле не обеспечивает большой эффективности, она больше подходит для легких вещей.   -  person GameOfThrows    schedule 19.02.2016
comment
Вы можете взглянуть на это сообщение и установить количество потоков в настройках Matlab. Более того, поскольку feature не поддерживается и не документирован, трудно сказать, что на самом деле означает его результат.   -  person Emilien    schedule 19.02.2016
comment
Когда я пытаюсь использовать parpool (6), я получаю эту ошибку: Ошибка использования parpool (строка 99) Вы запросили минимум 6 рабочих процессов, но в локальном кластере установлено свойство NumWorkers, разрешающее максимум 3 рабочих процесса. Чтобы запустить задание связи на большем числе рабочих процессов (максимум до 512 для локального кластера), увеличьте значение свойства NumWorkers для кластера. Значение по умолчанию NumWorkers для локального кластера — это количество ядер на локальном компьютере.   -  person ensberg    schedule 19.02.2016


Ответы (1)


Чтобы использовать все логические процессы (количество потоков), вам нужно изменить NumWorkers в настройке Matlab. в меню Matlab 2018 выполните следующее: Настройки >> Панель инструментов параллельных вычислений >> Диспетчер профилей кластера >> нажмите «Изменить» в правом нижнем углу >> Установите «NumWorkers» на номер логического процесса, 8 в вашем случае. > Готово >> закрыть и применить

person CpuX    schedule 27.03.2019