exponenta event banner

Управление компиляцией циклов parfor

По умолчанию MATLAB ® Coder™ генерирует код, который может запускать parfor-закольцовывание по нескольким потокам. Для лечения parfor-loops as for-loops, которые выполняются в одном потоке, отключите parfor одним из следующих способов:

  • С помощью codegen функция с -O disable:openmp в командной строке.

  • Использование объекта конфигурации генерации кода со свойством EnableOpenMP установите значение false. Например:

    cfg = coder.config('lib'); 
    cfg.EnableOpenMP = false; 
    codegen myFunction -config cfg

  • Путем установки для параметра Включить библиотеку OpenMP, если это возможно No на вкладке «Все параметры» диалогового окна «Параметры проекта».

Когда следует отключить Parfor

Отключить parfor, если необходимо:

  • Сравните время выполнения последовательной и параллельной версий созданного кода.

  • Расследование отказов. При сбое параллельной версии сгенерированного кода отключите parfor и создать последовательную версию для облегчения отладки.

  • Используйте компиляторы C, не поддерживающие OpenMP.

См. также

Связанные темы