2016-07-31 4 views
1

Я новичок в CUDA, и я хотел бы попросить вашу помощь узнать, можно ли изменить количество ядер, чтобы вычислить эффективность и масштабируемость программы, помимо изменения ядра с количеством потоков на блок и блоки потоков для выполнения. То есть, если предполагается, что эффективность и масштабируемость основаны на числе процессоров, и я начинаю с 512 ядер в моем GPU FERMI, я могу изменить от 512 до 256, 128 и т. Д. Ядер, чтобы получить разницу. Ускорение для заданная загрузка данных? Спасибо заранее!Как изменить количество ядер CUDA для расчета эффективности и масштабируемости?

+2

CUDA не предоставляет прямой метод для этого. Аналогичный вопрос [здесь] (http://stackoverflow.com/questions/38427369/set-max-cuda-resources), и я уверен, что есть другие подобные вопросы. Вероятно, можно заняться одним SM, используя тщательные методы блочного кодирования, но это не даст вам детализации уровня ядра CUDA. –

+0

Вы хотите уменьшить количество ядер, означает ли это, что вы хотите деактивировать часть оборудования? Или вы имеете в виду логику cuda threads? –

+0

спасибо за ответы, очень полезно мне !!! Я имею в виду деактивировать часть аппаратного обеспечения, но я понял. так есть ли другой способ вычисления эффективности и масштабируемости в программе с фиксированным числом ядер? – 00ivan00

ответ

3

CUDA не поддерживает этот тип аппаратной детализации, и нет способа контролировать ядра так, как вы просите.

+0

Спасибо !!! Итак, если я не могу манипулировать ядрами, чтобы сделать это, есть ли какой-то метод для вычисления эффективности и масштабируемости в программе с фиксированным числом ядер? Я имею в виду, чтобы получить разное ускорение с фиксированным числом ядер? – 00ivan00

+0

@ 00ivan00: Измените количество параллельной работы для фиксированного количества ядер, а не меняйте количество ядер для фиксированного количества параллельной работы. – talonmies

Смежные вопросы