Описание тега coalescing

2 ответа

Что быстрее в CUDA: запись в глобальную память + __threadfence() или atomicExch() в глобальную память?

Предполагая, что у нас есть много потоков, которые будут последовательно обращаться к глобальной памяти, какой вариант работает быстрее в целом? Я сомневаюсь, потому что __threadfence() учитывает все записи в общую и глобальную память, но записи объ…
20 июл '12 в 19:57
0 ответов

Является ли Request Coalescing просто еще одним названием противодавления?

Мне интересно, если объединение запроса и обратное давление - это одно и то же? Или запрос объединяет только реализацию обратного давления? Для меня это означает, что "если запросов слишком много, не отправляйте их сразу". Хум, после второй мысли: М…
01 дек '18 в 23:28
4 ответа

Оператор объединения C# с 3 возможными возвращаемыми значениями?

Просто читая о спецификациях для этого оператора ?? так как он принимает левую сторону и, если ноль возвращает значение на правой стороне. Мой вопрос, могу ли я получить 3 возможных значения вместо этого? Что-то вроде этого: int? y = null; int z = 2…
15 апр '14 в 13:24
2 ответа

Нулевой оператор слияния на десятичной и десятичной

Я сталкиваюсь со следующей ошибкой при применении нулевого оператора слияния. private decimal _currentImpulseId; // ... later on used in public property getter as follows public decimal CurrentImpulseId { get { return _currentImpulseId ?? 0M; } set …
22 авг '12 в 11:54
1 ответ

Программирование CUDA - кеши L1 и L2

Не могли бы вы объяснить разницу между использованием кешей "L1 и L2" или кеша "только L2" в программировании CUDA? Чего мне ожидать во время исполнения? Когда я мог ожидать меньшее время GPU? Когда я включаю оба кэша L1 и L2 или просто включаю L2? …
16 апр '12 в 20:10
1 ответ

Таймер слияния до Windows 7

В Windows 7 и Windows 8 есть поддержка объединения таймеров, см., Например, следующее: Объединение таймеров в.net Windows 7 имеет функцию SetWaitableTimerEx о котором утверждается, что он поддерживает объединение здесь и здесь. Windows 8 имеет допол…
15 май '14 в 22:09
2 ответа

Cuda - выборочный магазин памяти

В моем ядре, если условие выполнено, я обновляю элемент буфера вывода if (condition(input[i])) //? output[i] = 1; в противном случае вывод может остаться прежним, имея значение 0. Плотность обновлений довольно непредсказуема, в зависимости от ввода.…
22 авг '12 в 22:18
1 ответ

Задача-c, как пакетировать несколько операций чтения

Я выполняю несколько операций чтения на одном и том же ресурсе, хранящемся на диске. Иногда сама операция чтения занимает больше времени, чем время между запросами к тому же ресурсу. В этих случаях имеет смысл объединить операции чтения в один запро…
1 ответ

CUDA закрепила память и слилась

На устройстве с вычислительными возможностями 2.x как мне убедиться, что gpu использует объединенный доступ к памяти при использовании сопоставленной закрепленной памяти и при условии, что обычно при использовании глобальной памяти 2D-данные требуют…
30 сен '13 в 18:37
2 ответа

Доступ к объединенной памяти - это функция или явление?

В настоящее время я пишу небольшой проект в OpenCL, и я пытаюсь выяснить, что действительно вызывает объединение памяти. В каждой книге по программированию GPGPU говорится, что именно так должны программироваться GPGPU, но не то, почему аппаратное о…
01 окт '17 в 08:26
2 ответа

Объединение при использовании NSNotificationQueue

Я написал следующий код, чтобы выполнить объединение с использованием NSNotificationQueue. Я хочу опубликовать только одно уведомление, даже если событие происходит несколько раз. - (void) test000AsyncTesting { [NSRunLoop currentRunLoop]; [[NSNotifi…
12 янв '11 в 11:45
1 ответ

Объединяется ли неполный глобальный доступ к памяти?

Это объединилось, если n < warpSize? // In kernel int x; if (threadId < n) x = globalMem[threadId]; Такая ситуация возникает в последней итерации цикла, если некоторые N неделима warpSize, Должен ли я выполнять эти ситуации и распределять памя…
21 фев '14 в 11:56
1 ответ

Не сращенное ядро ​​float2 CUDA

У меня возникли проблемы с оптимизацией размеров сетки и блоков в приведенном ниже примере. Когда я делаю профилирование, кажется, что операция записи в память в коде ядра не объединена. Я нашел некоторые решения в интернете, но они предложили мне и…
16 ноя '12 в 01:12
1 ответ

Оператор быстрого слияния с массивом

Я пробую упражнение по созданию простого списка задач. Перед тем, как представить Realm или coreData, я хотел протестировать его и посмотреть, все ли идет гладко. Я знаю, что, возможно, смогу выполнить эту работу при некоторых условиях, но мне бы хо…
14 май '18 в 21:02
1 ответ

Откуда происходят глобальные издержки воспроизведения памяти?

Запустив приведенный ниже код для записи 1 ГБ в глобальную память в NVIDIA Visual Profiler, я получаю:- 100% эффективность хранения- 69,4% (128,6 ГБ / с) использования DRAM- 18,3% от общего количества накладных расходов на повтор- 18,3% затрат на гл…
25 июн '13 в 23:09
2 ответа

CUDA - Объединение доступа к памяти и ширины шины

Таким образом, у меня есть идея объединить доступ к памяти в CUDA, что потоки в деформации должны обращаться к смежным адресам памяти, так как это вызовет только одну транзакцию памяти (значения каждого адреса затем передаются потокам) вместо нескол…
25 сен '12 в 19:00
4 ответа

CUDA объединила доступ к глобальной памяти

Я прочитал руководство по программированию CUDA, но я упустил одну вещь. Допустим, у меня есть массив 32-битных int в глобальной памяти, и я хочу скопировать его в общую память с объединенным доступом. Глобальный массив имеет индексы от 0 до 1024, и…
25 апр '12 в 23:30
0 ответов

Явное объединение свободного списка

Я сейчас работаю над самодельной malloc а также free функция. Для этого я использую явный свободный список, который не содержит предыдущего указателя. Мой вопрос: возможно ли (с этой структурой данных) реализовать объединение?
16 ноя '18 в 03:11
1 ответ

CUDA: размер транзакции памяти для вычислительных возможностей 1.2 или новее

Все, из "Руководства по программированию NVIDIA CUDA 2.0", раздел 5.1.2.1: "Объединение на устройствах с вычислительной способностью 1.2 и выше" "Найдите сегмент памяти, который содержит адрес, запрашиваемый активным потоком с наименьшим номером. Ра…
17 мар '11 в 20:06
2 ответа

Как написать правильный нуль-безопасный оператор объединения в scala?

Увидев ответы на такие вопросы, как этот с участием ужасов, таких как попытка поймать NPE и вытащить искалеченное имя из трассировки стека, я задаю этот вопрос, чтобы ответить на него. Комментарии или дальнейшие улучшения приветствуются.
01 сен '09 в 20:01