Конвертировать OpenCL / CUDA в Металл - PullRequest
0 голосов
/ 12 сентября 2018

Я собираюсь преобразовать некоторые ядра GPU моего проекта из OpenCL / Cuda в Metal для запуска моего приложения на устройствах Apple.В настоящее время мой проект полностью написан на C / C ++.После некоторых исследований я думаю, что мне нужно испачкать руку с помощью Swift или Objective-C.Но, честно говоря, я не уверен в этом, потому что язык Metal для вычислений и глубокого изучения довольно новый.

Я знаю, что есть библиотека под названием " CoreML ", но мое приложениетребует некоторых пользовательских ядер.Мой вопрос: как лучше всего справиться с низкоуровневым API устройств Apple в моей ситуации?

1 Ответ

0 голосов
/ 12 сентября 2018

Metal Shading Language - это версия C ++.У меня не было особых проблем с переносом ядер OpenCL или CUDA на Metal.

Core ML поддерживает только ограниченный набор слоев.Вы можете написать свои собственные пользовательские слои, которые включают в себя написание версии для процессора и, по желанию, версии для графического процессора (на языке Metal).

Я написал сообщение в блоге об этом: http://machinethink.net/blog/coreml-custom-layers/

...