Подтвердить что ты не робот

Отладчик для OpenCL

Я работаю над OpenCL. Кто-нибудь знает хорошего отладчика для OpenCL, чтобы я мог войти в код OpenCL и трассировать?

4b9b3361

Ответ 2

Вы также можете посмотреть в CodeXL:

https://gpuopen.com/compute-product/codexl/

CodeXL был первоначально разработан AMD, но позже был выпущен как проект с открытым исходным кодом.

Ответ 5

Только AMD gDEBugger поддерживает OpenCL пошаговый запуск и другие вкусные функции http://developer.amd.com/tools/gDEBugger/Pages/default.aspx

NVidia Parallel NSight и другие продукты NVidia не будут поддерживать отладку OpenCL из-за маркетинговых решений.

Ответ 6

Обычно я рекомендую использовать GPUVerify из Imperial College London и Oclgrind из Университета Бристоля, особенно когда вы задерживаете отладку своих программ OpenCL (но лучше даже до этого).

Ответ 7

NVIDIA Отладчик Parallel Nsight (ранее известный как Nexus) поддерживает OpenCL (GPU).

С веб-сайта:

Параллельный Nsight поддерживает CUDA C, OpenCL, DirectCompute, Direct3D и OpenGL.

Ответ 8

Я не использовал его, но CLBuilder выглядит многообещающим

Основные функции CLBuilder

  • Запись ядер OpenCL с синтаксисом цвета
  • Скомпилируйте ядро ​​для проверки ошибок без необходимости запуска и отлаживать собственное приложение.
  • Легко создавать и выбирать параметры сборки.
  • Определить входные значения ядра и проверить результаты.
  • Профилируйте время выполнения ядра, чтобы улучшить производительность.
  • Создайте различные настройки размеров рабочего элемента (глобальные и локальные), чтобы проверить выступления.
  • Выполнить ядро ​​с printf на CPU и легко отладить код.
  • Отображать значения ввода и вывода на диаграмме.
  • Проконсультируйтесь с журналом выполнения, чтобы узнать, что делает CLBuilder (журнал каждая функция OpenCL C).
  • Проверить локальные и постоянные аргументы и ресурсы, используемые ядра.
  • Сгенерируйте код C для запуска ядра, CLBuilder также скомпилирует этот сгенерированный исходный код и выполнить его.
  • Легко проверить все свойства OpenCL, включая информацию о платформе.