Сродство процессора в OpenCL

Можем ли мы навязать сродство к Prossor в OpenCl? Например, поток № 1 выполняется на процессоре № 5,
поток № 2 выполняется на процессоре № 6, поток № 3 выполняется на процессоре № 7 и так далее?

Спасибо

1 ответ

Решение

Насколько я знаю, вы не можете указать сходство на этом низком уровне с OpenCL. Но, начиная с OpenCL 1.2, есть некоторый контроль над сродством путем разделения на подустройства с помощью clCreateSubDevices (возможно, с одним процессором в каждом подустройстве с помощью CL_DEVICE_PARTITION_BY_COUNTS, 1) и выполнение отдельных исполнений ядра на каждом подчиненном устройстве.

Скорее всего, это будет плохо работать на чем-либо, кроме реализации OpenCL на базе процессора, и мне придется задаться вопросом, почему вы захотите сделать такую ​​вещь. Если вы хотите ограничить использование процессора для реализации OpenCL-CPU, вы можете использовать clCreateSubDevices разделить некоторые из ваших вычислительных ресурсов.

PDF-файл с описанием "деления устройств" от Intel находится здесь, и в нем содержится много информации о том, как использовать разделение устройств и clCreateSubDevices эффективно.

Другие вопросы по тегам