2010-12-06 5 views
15

Для моей работы особенно интересно делать целочисленные вычисления, для которых, очевидно, не предназначены графические процессоры. Мой вопрос: совместимы ли современные графические процессоры с эффективными целыми операциями? Я понимаю, что это должно быть легко понять для себя, но я нахожу противоречивые ответы (например, yes против no), поэтому я подумал, что лучше спросить.Целочисленные вычисления на GPU

Кроме того, существуют ли библиотеки или методы для произвольных целых чисел точности на графических процессорах?

ответ

12

Во-первых, вам необходимо рассмотреть аппаратное обеспечение, которое вы используете: производительность устройств GPU сильно отличается от конструктора к другому.
Во-вторых, это также зависит от рассмотренных операций: например, добавление может быть быстрее, чем умножает.

В моем случае я использую только устройства NVIDIA. Для такого оборудования: official documentation анонсирует эквивалентную производительность как для 32-разрядных целых чисел, так и для 32-битных одноточечных поплавков с новой архитектурой (Fermi). Предыдущая архитектура (Tesla) использовалась для эквивалентной производительности для 32-битных целых чисел и поплавков, но только при рассмотрении добавлений и логических операций.

Но это может быть неверно в зависимости от устройства и инструкций, которые вы используете.

+1

Я думаю, что одна вещь, которую следует отметить, - это то, что почти для всех архитектур все ядра CUDA на графическом процессоре могут использоваться для целых операций, но для целых чисел не существует плавного умножения для целых чисел, так что пиковые целые операции в секунду наполовину пиковых ПЛОП. – mxmlnkn 2016-02-06 03:50:56

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