ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Пятница
19 апреля
785810
sav6622 (10.10.2017 11:52, просмотров: 563)
Amazon открыла исходный код компилятора NNVM. http://www.tvmlang.org/2017/10/06/nnvm-compiler-announcement.html
https://www.linux.org.ru/news/opensource/13738143
Открыт код (Apache 2.0) компилятора NNVM, генерирующего машинный код, оптимизированный для машинного обучения высокоуровневых графов. Компилятор может генерировать код для GPU (CUDA, OpenCL, Metal), LLVM, который может компилироваться уже в машинный код архитектуры x64 и WebAssembly. Компиляция происходит следующим образом: сначала оптимизируется граф, затем операторы компилируются в исполняемые модули для различных аппаратных бэкэндов. Потом компилируется промежуточное предствление графа. Происходит это с помощью TVM, предметно-ориентированного языка, в котором есть базовые оптимизации (многопоточность, кэширование, разбивка цикла) оптимизированные представления операторов для целевой архитектуры. Проведение тестирования генерации кода для CPU ARM и GPU NVIDIA показало, что формируемый компилятором итоговый код превосходит по производительности фреймворк MXNet. Размер формируемого модуля зависит в основном от размера runtime TVM, который при сборке для Raspberry Pi и мобильных устройств занимает около 300 Кб.