Как стать автором
Поиск
Написать публикацию
Обновить

Комментарии 8

Существуют ли какие-либо среды отладки, например плагины для Linux+Eclipse или что-то непосредственно от Nvidia. И насколько сильно отличается CUDA/CuDNN, например, от OpenCL, который (?) подойдёт и для других ускорителей поддерживающих этот стандарт. Также, может будет удобнее использовать PyCUDA даже если он чуть (?) медленнее. И есть ли некие фичи которые позволяют работать с многоядерными загрузчиками. Например OpenGL - исключительно однопоточное формирование сцены, Vulkan - уже можно в параллель. (образно говоря, cuMemAllocManaged вызывается в пуле а не последовательно, включая макросы OpenMP)

Существуют ли какие-либо среды отладки, например плагины для Linux+Eclipse или что-то непосредственно от Nvidia

NVIDIA Nsight ?

OpenGL можно и многопоточно использовать - шарится контекст и вперед.
CUDA для NVidia дает значительно больше возможностей чем OpenCL.
Смысла особого параллелить потоки для CUDA нет, если только много мелких взаимодействий с ускорителем, а для конкурентного исполнения, там есть стримы.

NVRTC - правильно, а NVCC - как ни крути что-то в этом остается вечно неправильно )

Спасибо переводчику (и автору, но он не узнает)! Очень интересно!
Тройным скобкам я удивлялся, вроде у нас С++, а тут какие-то сильно новые штуки - и главное непонятно зачем. Почему не что-то типа э... ну пусть... CUDA_Run_Kernel(...

Вот так через десятилетия работы с CUDA люди приходят к выводам:
- хорошо бы иметь полный контроль над загрузкой и запуском ядра;
- хорошо бы разделить код для GPU от кода для CPU и собирать разными компиляторами;
и идут использовать CUDA Driver API.

А ведь всё это было в OpenCL!

Это и в cuda было с самого начало, людям наоборот хотелось с нулевыми знаниями о том как все устроенно внутри пускать код на гпу.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации