MATLAB Coder генерирует C/C++ код из кода алгоритмов MATLAB для различных аппаратных платформ, от настольных систем до встраиваемых платформ. Поддерживается большая часть языка MATLAB и широкий набор тулбоксов. Поддерживается генерация как исходного кода, так и статических и динамических библиотек. Сгенерированный код является читаемым и переносимым. Унаследованный код и библиотеки могут быть подключены к MATLAB, чтобы получить максимальную эффективность для ключевых частей алгоритма или чтобы повторно использовать ранее созданные алгоритмы. Для ускорения расчетов алгоритмов, разработанных в MATLAB можно сгенерировать MEX-функцию, исполняющуюся в MATLAB.
Embedded Coder расширяет MATLAB Coder и поддерживает настройки кода, специфичные для конкретной целевой платформы, создания платформозависимого кода, а также верификции кода в режимах SIL и PIL.
Чтобы развернуть программы MATLAB как автономные приложения, используйте MATLAB Compiler. Чтобы сгенерировать программные компоненты для интеграции с другими языками программирования, используйте MATLAB Compiler SDK.
Создание читаемого и переносимого ANSI C-кода. Развертывание кода без лицензионных платежей.
Сгенерированный C-код может быть скомпилирован и запущен на любом оборудовании, от настольных систем до мобильных устройств и встраиваемых систем. Сгенерированный код может быть развернут в коммерческих приложениях бесплатно и не зависит от MATLAB.
Инженеры и ученые в различных отраслях промышленности используют MATLAB Coder для создания C-кода для своих приложений.
MATLAB Coder генерирует код из широкого спектра возможностей языка MATLAB, которые инженеры-проектировщики используют для разработки алгоритмов в качестве компонентов более крупных систем. Это включает в себя более 2500 операторов и функций из MATLAB и сопутствующих инструментов.
Быстрый переход к реализации алгоритмов в железе при помощи автоматической трансляции алгоритмов в С-код.
Быстрая генерация кода для алгоритмов обработки сигналов, компьютерного зрения, глубокого обучения, систем управления или других областей с помощью приложения MATLAB Coder или эквивалентных функций командной строки.
Генерация кода для любого устройства при помощи ручной интеграции сгенерированного кода и кода приложений. Автоматизация процесса развертывания алгоритмов для Raspberry Pi с использованием пакета поддержки MATLAB для Raspberry Pi.
Embedded Coder расширяет возможности MATLAB Coder для генерации кода, использующего преимущества встроенных функций процессора, которые выполняются быстрее, чем стандартный код ANSI/ISO C/C++.
Переиспользование алгоритмов MATLAB в виде C-кода в пользовательском ПО.
Сгенерированный код естественным образом использует типы Си, упрощая интеграцию с внешним кодом. Сгенерированный код интегрируется с пользовательским ПО в виде исходного кода или библиотеки. Ранее разработанные библиотеки или компоненты могут быть перенесены в MATLAB для более точного тестирования, а также автоматически вызываются из сгенерированного кода.
Сгенерированный код может быть оптимизирован, чтобы обеспечить компромисс между скоростью выполнения, использованием памяти, удобочитаемостью и переносимостью. Инструменты профилирования используются для выявления узких мест в коде. Для дальнейшего повышения производительности кода поддерживается генерация OpenMP-кода и вызовы оптимизированных библиотек, таких как LAPACK, BLAS и FFTW.
Переиспользование тестов для кода MATLAB для сгенерированного кода. MATLAB Unit Test Framework используется для быстрой разработки регрессионных тестов, которые можно использовать для проверки сгенерированного C-кода.
Генерация C-кода и его компиляция для использования внутри MATLAB.
Генерация MEX-функций из алгоритмов MATLAB для ускорения их выполнения. Доступно профилирование MEX-функций для обнаружения малой производительности и планирования оптимизаций.
Parallel Computing Toolbox используется для ускорения алгоритмов, работающих в MATLAB. GPU Coder позволяет сгенерировать CUDA- код для ускорения расчетов или развертывания алгоритмов, с использованием графических ускорителей NVIDIA.