CUDA: Что рассеивается запись?

Предложение "Отбрасывания и воссоздает таблицу", вероятно, не хороший, потому что это проваливает Ваши внешние ключи.

Вы используете внешние ключи, правильно?

8
задан shoosh 18 October 2009 в 19:12
поделиться

2 ответа

Я собираюсь использовать здесь терминологию CUDA.

разрозненная запись означает, что вы пишете из каждого потока cuda по произвольному адресу (например, потоки вашей основы не будут записывать в последовательную память, например). Это контрастирует с записью в буфер кадра, которая является двумерной когерентной и может быть объединена с помощью оборудования. До недавнего времени это были единственные операции записи, доступные для графических процессоров.

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

5
ответ дан 5 December 2019 в 17:38
поделиться

Разрозненная запись - это здорово, потому что она позволяет вам писать по любому адресу памяти. Предыдущие реализации шейдеров обычно ограничивались адресами памяти, в которые данная программа шейдера могла писать.

«В то время как программы фрагментов в графических API ограничены выводом 32 чисел с плавающей запятой (цели рендеринга RGBA * 8) в заранее заданном месте, CUDA поддерживает разрозненную запись - то есть неограниченное количество магазинов по любому адресу. # entry478583

В основном это упрощает написание программ CUDA, поскольку они не так ограничены тем, где они могут записывать результаты. Имейте в виду, что один из ключей к достижению хорошей производительности на GPU - это использование локальности памяти. Чрезмерное использование разрозненной записи при записи в глобальную память, скорее всего, повлияет на вашу производительность.

# entry478583

В основном это упрощает написание программ CUDA, поскольку они не так ограничены тем, где они могут записывать результаты. Имейте в виду, что один из ключей к достижению хорошей производительности на GPU - это использование локальности памяти. Чрезмерное использование разрозненной записи при записи в глобальную память, скорее всего, повлияет на вашу производительность.

5
ответ дан 5 December 2019 в 17:38
поделиться
Другие вопросы по тегам:

Похожие вопросы: