Файлы кэша Simulink® содержат артефакты сборки, которые могут ускорить симуляцию и генерацию кода. Чтобы сгенерировать эти артефакты сборки и автоматически группировать их в файлах кэша Simulink, выполните одно из этих действий:
Обновите схему для иерархии модели, которая содержит модели, на которые ссылаются в режиме Accelerator
Симулируйте иерархию модели, которая содержит модели, на которые ссылаются в режиме Accelerator
Симулируйте топ-модель в акселераторе или быстром режиме Accelerator
Сгенерируйте код для иерархии модели или иерархии модели
Второй раз, что вы выполняете любое из этих действий, Simulink, создает только устаревшие файлы, пока параметр конфигурации Rebuild установлен в If any changes detected
(значение по умолчанию) или If any changes in known dependencies detected
. С меньшим количеством файлов, чтобы создать, действия завершаются быстрее.
Примечание
В то время как можно избежать, чтобы вся модель, на которую ссылаются, восстановила путем установки параметра конфигурации Rebuild на Never
, использование этой установки может произвести недопустимые результаты симуляции.
Члены команды или системы непрерывного интегрирования (CI) могут сгенерировать файлы кэша Simulink для моделей, которые вы используете. Чтобы уменьшать время, это берет, когда вы создаете те модели впервые, можно скопировать соответствующие файлы кэша Simulink в локальную папку, заданную настройкой Simulation cache folder. Simulink извлекает любое содержимое файла кэша Simulink, которое отличается от содержимого на диске. Если Simulink генерирует или обновляет артефакты сборки на диске, он локально обновляет соответствующие файлы кэша Simulink.
Можно идентифицировать файл кэша Simulink его .slxc
расширение. Его имя файла совпадает с именем соответствующей модели.
Файлы кэша Simulink могут содержать несколько типов артефактов сборки, включая:
Цели акселератора
Быстрые цели акселератора
Цели симуляции модели - ссылки
Переменная информация об использовании
Цели генерации кода (Simulink Coder™, Embedded Coder®)
Представления модели (Simulink Design Verifier™)
Файлы кэша Simulink накапливают артефакты сборки для нескольких платформ и релизов Simulink.
Чтобы учиться, что содержит определенный файл кэша Simulink, откройте отчет путем двойного клика по файлу.
В качестве альтернативы, чтобы получить содержимое файла кэша Simulink в таблице MATLAB®, используйте slxcinfo
функция.
Можно снова использовать артефакты сборки, которые поддерживают платформу и релиз, который вы используете. Например, предположите, что вы используете машину Windows® и релиз R2019a Simulink. В файле кэша Simulink, описанном этим отчетом, можно использовать цели симуляции под R2019a : win64. Член команды, который использует машину Linux® и R2019b, может использовать симуляцию и цели генерации кода под R2019b : glnxa64 и представления модели под R2019b : all platforms.
Файл кэша Simulink может накопить артефакты сборки для релиза, в котором он был создан и более поздние релизы. Предположим, что вы создаете файл кэша Simulink в R2019b. Вы не смогли бы использовать тот файл кэша Simulink в R2019a.
В то время как большинство команд может извлечь выгоду из использования файлов кэша Simulink, среда разработки с этими функциями подходит лучше всего для использования файлов кэша Simulink.
Иерархия модели, которая содержит много моделей, на которые ссылаются.
Топ-модель, которая симулирует в акселераторе или быстром режиме Accelerator, заставляя Simulink сгенерировать цель симуляции для топ-модели и всех моделей, на которые ссылаются.
Стандартизированная платформа, компилятор и Simulink выпускают для целой группы разработчиков.
Относительные пути или сопоставимые абсолютные пути, которые вы задаете с параметром конфигурации директорий Include для целой группы разработчиков.
Система контроля версий, такая как Git™, который управляет файлами проекта. Смотрите Настроенную Систему контроля версий Git.
Примечание
Поскольку файлы кэша Simulink являются производными файлами, вы не должны управлять ими под системой контроля версий. Даже если вы совместно используете файлы кэша Simulink путем хранения их в системе контроля версий, вы не можете diff или объединять различные версии этих файлов.
Система CI, такая как Jenkins™, который периодически создает последнюю версию иерархии модели с помощью пула параллельных рабочих.
Примечание
Избегать ненужный восстанавливает для симуляции и целей кодера, которые используют пользовательский код, сопоставляют системные директории CI с именованными объемами или символьными ссылками, которые являются тем же самым в песочницах члена команды. Например, имейте систему CI, и члены команды хранят пользовательский код в сопоставленной директории, такой как B:\path\customcode
.
В этой среде разработки вы взаимодействуете с файлами в системе контроля версий и создаете архив.
Чтобы уменьшать количество времени, что вы тратите обновляющиеся цели симуляции, выполните эти шаги.
Вытяните последнюю версию всех файлов проекта от системы контроля версий.
Скопируйте последнюю версию всех файлов кэша Simulink от сборки, архивируют и размещают их в ваш Simulation cache folder.
Откройте топ-модель и симулируйте его.
Simulink извлекает необходимые артефакты сборки из файлов кэша Simulink. Симуляция завершается, не восстанавливая моделей, пока модели не изменились начиная с новой сборки, завершенной системой CI.
Примечание
Чтобы распаковать симуляцию и цели генерации кода от файлов кэша Simulink без обновления, симуляция или генерация кода для иерархии модели, использует slxcunpack
функция.
Измените модель и симулируйте иерархию модели снова.
Simulink восстанавливает необходимые модели и обновляет локальную копию соответствующего файла кэша Simulink.
Передайте обновленную модель системе контроля версий. Вы не фиксируете файл кэша Simulink, который является производным файлом.
Когда вы создаете проект от топ-модели, проект включает соответствующие файлы кэша Simulink для модели и ее моделей, на которые ссылаются.
К зависимостям от файла кэша представления Simulink в иерархии модели можно выбрать Dependency Analyzer в панели Views соответствующего проекта.
Если какие-либо файлы кэша Simulink отсутствуют в проекте, анализ зависимостей идентифицирует их.
Для получения дополнительной информации смотрите то, Что Анализ зависимостей?