Вопросы по теме 'barrier'
Программа исключения Гаусса не работает параллельно - OpenCL
Я уже некоторое время пытаюсь выполнить параллельную реализацию процесса исключения Гаусса. Кажется, что ядра игнорируют установленные барьеры, выполняя все операции, которые могут, И ЗАТЕМ позволяет следующему ядру делать свою работу. Но мне нужно,...
199 просмотров
schedule
21.10.2021
Как барьеры могут разрушаться, как только возвращается pthread_barrier_wait?
Этот вопрос основан на:
Когда безопасно разрушать барьер pthread?
и недавний отчет об ошибке glibc:
http://sourceware.org/bugzilla/show_bug.cgi?id=12674
Я не уверен в проблеме с семафорами, о которой сообщается в glibc, но,...
5302 просмотров
schedule
28.02.2022
Всегда ли для спин-блокировок требуется барьер памяти? Дорогое вращение на барьере памяти?
Я написал код без блокировки, который отлично работает с локальным чтением в большинстве условий.
Обязательно ли локальное вращение при чтении памяти означает, что я должен ВСЕГДА вставлять барьер памяти перед вращением чтения?
(Чтобы проверить...
4731 просмотров
schedule
15.03.2022
Барьер прядильной нити с использованием атомных встроенных модулей
Я пытаюсь реализовать барьер вращающегося потока с помощью атомики, в частности __sync_fetch_and_add. https://gcc.gnu.org/onlinedocs/gcc-4.4.5/gcc/Atomic-Builtins.html
Я в основном хочу альтернативу барьеру pthread. Я использую Ubuntu в...
964 просмотров
schedule
22.03.2022
Почему барьер() достаточно для отключения или включения вытеснения?
Из кода ядра Linux я вижу, что preempt_enable() и preempt_disable() не что иное, как просто barrier() :
#define preempt_disable() barrier()
#define preempt_enable() barrier()
Я не могу этого понять. Почему для отключения...
814 просмотров
schedule
01.04.2022
Алгоритм многоразового барьера
Я изучаю алгоритм многоразового барьера из книги "Маленькая книга семафоров", доступной здесь http://greenteapress.com/semaphores/downey08semaphores.pdf
Загадка находится на странице 31 (Основные шаблоны синхронизации/Многоразовый барьер), и я...
2785 просмотров
schedule
04.05.2022
Каков правильный способ реализации барьера потока и сброса барьера в C?
Я попытался реализовать простой барьер в своем коде, который выглядит так:
void waitOnBarrier(int* barrier, int numberOfThreads) {
atomicIncrement(barrier); // atomic increment implemented in assembly
while(*barrier < numberOfThreads);...
7925 просмотров
schedule
31.05.2022
Предел итераций барьерного метода CPLEX
Я пытаюсь решить задачу невыпукло-квадратичной оптимизации на CPLEX с установкой целевого показателя оптимальности равным 2. Пробуя разные наборы данных, я заметил, что барьерный метод останавливается на 500-й итерации. Проверил настройки, выставлено...
74 просмотров
schedule
26.06.2022
Реальные варианты использования барьеров (DSB, DMB, ISB) в ARM
Я понимаю, что DSB, DMB и ISB являются препятствиями для предотвращения изменения порядка инструкций. Я также могу найти множество очень хороших объяснений для каждого из них, но довольно сложно представить себе случай, когда мне придется их...
27071 просмотров
schedule
05.08.2022
Что такое атомарный API C++11, эквивалентный ```__asm__ volatile(::: memory)```
В кодовой базе есть макрос COMPILER_BARRIER , определенный как __asm__ volatile("" ::: "memory") . Цель макроса — предотвратить переупорядочивание операций чтения и записи через барьер компилятором. Обратите внимание, что это явно барьер...
748 просмотров
schedule
15.08.2022
Ожидание завершения задачи OpenMP на неявных барьерах?
Если я создам кучу задач OpenMP и не использую taskwait , где программа будет ждать завершения этих задач? Рассмотрим следующий пример:
#pragma omp parallel
{
#pragma omp single
{
for (int i = 0; i < 1000; i++) {
#pragma...
1215 просмотров
schedule
20.10.2022
Как заборы/барьеры памяти между потоками взаимодействуют с заборами/барьерами в других потоках?
Каково взаимодействие заборов памяти в разных потоках?
В частности, ограждение памяти в потоке только предотвращает переупорядочивание инструкций внутри потока или происходит синхронизация между потоками, например, один поток ждет, пока...
40 просмотров
schedule
25.07.2023
Барьерные операции в NSOperationQueue
Как мы можем реализовать поведение, эквивалентное dispatch_barrier_async , используя NSOperationQueue или любую пользовательскую структуру данных, основанную на NSOperationQueue ?
Требование состоит в том, что всякий раз, когда отправляется...
2908 просмотров
schedule
31.01.2024