Как профилировщик захватывает данные о эффективности

Как работает профилировщик

Профилировщик собирает данные о эффективности во время моделирования вашей модели. Он определяет части вашей модели, которые требуют наибольшего времени для моделирования. Используйте информацию о профилировании, чтобы решить, где сфокусировать усилия по оптимизации модели.

Примечание

Вы не можете использовать профилировщик в режиме Rapid Accelerator.

Simulink® сохраняет данные о эффективности в отчете профиля симуляции. Данные показывают время, потраченное на выполнение каждой функции в вашей модели.

Базис для Профилировщика является моделью выполнения, которую суммирует этот псевдокод.

Sim() 
	ModelInitialize(). 
	ModelExecute() 
		for t = tStart to tEnd
		Output()
		Update()
		Integrate()
			Compute states from derivs by repeatedly calling: 
				MinorOutput() 
				MinorDeriv() 
			Locate any zero crossings by repeatedly calling: 
				MinorOutput() 
				MinorZeroCrossings() 
		EndIntegrate 
		Set time t = tNew. 
	EndModelExecute
	ModelTerminate
EndSim 

Согласно этой концептуальной модели, Simulink запускает модель, вызывая следующие функции нули, один или много раз, в зависимости от функции и модели.

ФункцияЦельУровень
sim

Симулируйте модель. Эта функция верхнего уровня вызывает другие функции, необходимые для симуляции модели. Время, потраченное в этой функции, является общим временем, необходимым для симуляции модели.

Система

ModelInitialize

Настройте модель для симуляции.

Система

ModelExecute

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

Система

Output

Вычислите выходы блока на текущем временном шаге.

Блок

Update

Обновите состояние блока на текущем временном шаге.

Блок

Integrate

Вычислите непрерывные состояния блока путем интегрирования производных состояний на текущем временном шаге.

Блок

MinorOutput

Вычислите выход блока в незначительном временном шаге.

Блок

MinorDeriv

Вычислите производные по состоянию блока во незначительном временном шаге.

Блок

MinorZeroCrossings

Вычислите значения пересечения нулем блока в незначительном временном шаге.

Блок

ModelTerminate

Освободите память и выполните любую другую очистку конца симуляции.

Система

Nonvirtual Subsystem

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

Блок

Профилировщик измеряет время, необходимое для выполнения каждого вызова этих функций. После моделирования модели Profiler генерирует отчет, который описывает количество времени симуляции, потраченное на каждую функцию.

Стартовый профилировщик

  1. Откройте модель.

  2. На вкладке Debug выберите Performance Advisor > Simulink Profiler.

  3. Симулируйте модель.

Когда симуляция завершена, Simulink генерирует и отображает профиль симуляции для модели на панели в редакторе Simulink.

Вид иерархии блоков

Представление иерархии блоков отчета представляет информацию о профилировании модели во вложенной древовидной форме. Первая строка таблицы - которая является верхней частью дерева - соответствует всей модели. Последующие строки на первом уровне вложения соответствуют блокам на корневом уровне модели.

nested hierarchy view

Представление стека выполнения

Представление стека выполнения разбивает отчет о профилировании на фазы симуляции модели. Основными фазами симуляции модели являются компиляция, инициализация, симуляция и прекращение. Для получения более подробного объяснения фаз моделирования смотрите Фазы симуляции в динамических системах.

Сохранение результатов профилировщика

Можно сохранить отчет профилирования в mat файл. Позже можно импортировать и просмотреть отчет путем загрузки сохраненных mat файл в текущую рабочую область или импортировать его в существующий сеанс профилировщика.

Чтобы сохранить отчет о профилировании, выберите Export to MAT в Share разделе вкладки Profile и опционально задайте имя для mat файл.

Чтобы просмотреть сохраненный отчет в открытом сеансе профилирования в редакторе Simulink, выберите Import from File на вкладке Profile.

Чтобы просмотреть сохраненный отчет в командной строке, загрузите mat файл, содержащий отчет. Информация о профилировании загружается в текущую рабочую область как Simulink.profiler.Data объект. Для получения дополнительной информации смотрите Simulink.profiler.Data.

Похожие примеры

Подробнее о

Для просмотра документации необходимо авторизоваться на сайте