Производительность и память

Профилируйте код, улучшайте производительность, уменьшайте требования к памяти

Запишите свой код, чтобы быть простыми и читаемыми, специально для первой реализации. Код, который преждевременно оптимизирован, может быть излишне комплексным, не предоставляя значительное усиление в производительности. Затем если скорость является проблемой, можно измериться, сколько времени код берет, чтобы запустить и профилировать код, чтобы идентифицировать узкие места. При необходимости можно предпринять шаги, чтобы улучшать производительность.

MATLAB® обрабатывает хранение данных для вас автоматически. Однако, если память является проблемой, можно идентифицировать требования к памяти и применить методы, чтобы использовать память более эффективно.

Функции

развернуть все

timeitИзмерьте время, требуемое для работы функции
ticЗапустите таймер секундомера
tocСчитайте прошедшее время из секундомера
cputimeЗатраченное процессорное время
profileПрофилируйте время выполнения для функций
benchСравнительный тест MATLAB
memoryОтобразите информацию о памяти
inmemИмена функций, файлов MEX, классов в памяти
packКонсолидируйте память рабочей области
memoizeДобавьте memoization семантику в указатель на функцию
MemoizedFunctionВызовите мемоизованную функцию и результаты кэша
clearAllMemoizedCachesОчистите кэши для всех объектов MemoizedFunction

Темы

Измерение и профилирование кода

Измерение уровня вашей программы

Измерить, сколько времени ваш код берет, чтобы запустить, использовать функцию timeit или таймерные функции секундомера, tic и toc.

Профилирование, чтобы улучшить производительность

Чтобы идентифицировать, какие строки кода используют большую часть времени или какие строки MATLAB не запускаются, профилируйте свой код.

Использование профилировщика, чтобы определить покрытие кода

Определить, сколько из файла выполняет MATLAB, когда вы профилируете его, запускаете Отчет Покрытия.

Улучшение производительности

Методы, чтобы улучшить производительность

Чтобы ускорить производительность вашего кода, существует несколько методов, которые можно рассмотреть.

Идентификация и сокращение требований к памяти

Как MATLAB выделяет память

Поймите, как MATLAB выделяет память, чтобы записать код, который использует память более эффективно.

Стратегии эффективного использования памяти

Уменьшайте объем памяти, которого требует ваша программа, определите соответствующее хранение данных, постарайтесь не фрагментировать память и исправьте используемую память.

Избегайте ненужных копий данных

MATLAB может применить оптимизацию памяти когда передающие входные параметры функции значением.

Решение “Из памяти” ошибок

MATLAB генерирует of Out сообщение Memory каждый раз, когда это запрашивает сегмент памяти от операционной системы, которая больше, чем, что доступно.

Сопутствующая информация