High performance
GPGPU
Rust
Comments 14
0
Паникует на макросе build!() с сообщением «Platform::default(): Unable to get platform id list after 10 seconds of waiting.». C opencl дел вообще не имеел. Наверное, это как-то подстраивается, но гугл такой ошибки не знает.
0

У меня такая же проблема была. Решилось просто обновлением драйвера для NVIDIA, т.к. все их новые драйвера поддерживают OpenCL.

0
Вообще странный статус у OpenCL.

Так как CUDA более распространена в ML, то инженеры компании AMD начинают двигаться в сторону HIP и GPUOpen, и создавать инструменты, которые позволяют транслировать эти апи в CUDA. В свете этого есть подозрение, что OpenCL станет не нужен.

Однако большое количество исследователей утверждает, что за OpenCL большое будущее, так как все последние драйвера от Nvidia поддерживают OpenCL из коробки.
Короче, не понятно.

gpuopen.com/compute-product/hip-convert-cuda-to-portable-c-code
+2

Идиоматичность в том, что отпадает необходимость как-то связывать C/C++ с Rust чтобы получить доступ к GPU, весь процесс написания кода идёт непосредственно в исходниках Rust с помощью вспомогательного языка.

0
В примере не продемонстрировано как аллоцировать память на GPU и работать с её содержимым. Если этого не делать, то каждый вызов функций emu будет приводить к передаче данных RAM <-> GPU RAM, что может оказаться медленнее собственно вычисления на CPU.
0

Я включу в статью пример связки ocl крейта с emu (смотреть https://github.com/calebwin/emu/blob/master/examples/multiply_with_ocl/src/main.rs).


В любом случае, в реальном проекте я бы Emu не использовал, т.к. отсутствуют такие фичи как __managed__ в CUDA и т.д, что производительность будет ухудшать по сравнению с реальными библиотеками.


Emu слишком много берёт на себя.

0
>> с помощью вспомогательного языка.

Ну так это как раз и НЕ идеоматично. Избавились от С\С++ но ввязались в «вспомагательный язык».
NVCC давно использует llvm, как и Rust, между прочим. Идеоматично было бы писать на чистом Rust. А я уж думал Нвидия расщедрилась…
0
  • Про StackOverflow все знают;
  • В телеграмм-чат ответ можно оперативнее получить.
0
В русском сегменте SO вообще растаманов мало, а по английски я обычно в течение дня получаю ответы, они еще подчищают мои вопросы, видимо эта работа как-то финансируется :)
0

День — это довольно долго, в чатике обычно в течении 15 минут можно получить ответ.

Only those users with full accounts are able to leave comments. , please.