Я запускаю алгоритм, который требует много ресурсов и максимизирует процессор.Множественные ядра Matlab
Проблема в том, что он использует только один процессор.
Как сделать MATLAB многопоточным вычислениями и использовать более 1 процессора?
Я запускаю алгоритм, который требует много ресурсов и максимизирует процессор.Множественные ядра Matlab
Проблема в том, что он использует только один процессор.
Как сделать MATLAB многопоточным вычислениями и использовать более 1 процессора?
настройки находятся в:
Файл> настройки> Общие> Многопоточность в R2007a или п Кувшин
Затронутые функции описаны в:
Если вы специально не используете параллельные конструкции - то есть, используя явный параллелизм - или используйте встроенные функции, которые уже были распараллелированы для вас - Matlab не будет работать быстрее на многоядерной машине. Это сообщение содержит список встроенных функций, которые были распараллеливаемый и так будет использовать несколько ядер:
http://www.walkingrandomly.com/?p=1894
Вот пример использования параллельной конструкции, чтобы свернуть свой собственный параллелизм:
Это просто неправда. Он будет работать быстрее на параллельных машинах. –
@Yochai - отредактирован для уточнения (он работает быстрее, если вы используете уже распараллеливаемые функции, в противном случае - нет). – EmeryBerger
+1 Правильно, но сам MATLAB параллелизирует даже основные операции с матрицей (умножение, MIN, MAX, INV, SQRT, POW). Для матриц, размер которых превышает 40K элементов. НО вы дали хороший пример того, как распараллелить свои собственные функции. –
вам нужна среда подходит для многоядерных и MATLAB не очень подходит –
я знаю, что это возможно, документация действительно говорит, что это, но Я не мог найти КАК это сделать. –