Проблема с использованием printf в ядре OpenCLC++

Программы на C++. Форум разработчиков
Ответить
Гость
 Проблема с использованием printf в ядре OpenCL

Сообщение Гость »


Я использую OpenCL 2.0 на AMD. Код довольно прост. Если я использую 1 printf, работа идет хорошо. А вот если я добавлю второй printf, то будут кривые данные.
Мой код на хосте C++:

cl_int код ошибки; // Получаем доступные платформы платформы вектор; Платформа::get(&платформы); // Выбираем платформу по умолчанию и создаем контекст, используя эту платформу и графический процессор cl_context_properties cps[3] = { CL_CONTEXT_PLATFORM, (cl_context_properties)(платформы[0])(), 0 }; Контекстный контекст (CL_DEVICE_TYPE_GPU, cps); устройства вектора = context.getInfo(); Очередь CommandQueue = CommandQueue(context, devices[0]); // Читаем исходный файл имя строки; имя += "CalcN.cl"; std::ifstream sourceFile (имя); std::string sourceCode( std::istreambuf_iterator(sourceFile), (std::istreambuf_iterator())); Программа::Sources source(1, std::make_pair(sourceCode.c_str(), sourceCode.length() + 1)); Программа program = Программа(контекст, источник); код ошибки = program.build(устройства); если (код ошибки!= CL_SUCCESS) { cout
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»