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

2 ответа

Как блокировки реализованы на нескольких ядрах

Для однопроцессорной системы алгоритм блокировки довольно прост. Lock(threadID) { Disable Interrupts If lock is already owned by same thread{ Restore Interrupts return } if lock is free { make lock busy set current thread as the owner of the lock } …
1 ответ

Иерархическое поведение блокировки CLH

Может ли кто-нибудь объяснить, как блокировка HCLH обрабатывает новые узлы, созданные в локальном кластере после того, как мастер кластера слил локальную очередь в глобальную очередь?
13 окт '14 в 03:49
1 ответ

Как мне найти процессор, на котором работает текущий поток, для Mac и BSD?

Я ищу функцию в Mac OS и BSD, которая эквивалентна Linux sched_getcpu()и Windows GetCurrentProcessorNumberEx() для того, чтобы реализовать библиотеку для локального хранилища процессора. Ясно, что это можно эмулировать с помощью инструкций cpuid или…
14 май '12 в 00:05
4 ответа

Что я могу сделать, чтобы приложение C# использовало преимущества нескольких процессорных ядер?

Я провел несколько тестов на предмет того, как приложение.NET C# использует ресурсы, такие как процессор или память. Я написал несколько циклов, которые вычисляют значения для большого количества чисел, и я удовлетворен весом алгоритма. У меня проце…
11 янв '11 в 12:05
1 ответ

Почему 2 регистра необходимы для построения Regular Boolean MRSW Register?

public class RegBoolMRSWRegister implements Register<Boolean> private boolean old; private SafeBoolMRSWRegister value; public void write(boolean x ) { if (old != x ) { value.write(x); old = x ; } } public boolean read() { return value.read ();…
2 ответа

Откуда процессор знает о последней копии строки кэша в многопроцессорной системе

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

Когерентность кэша: отслеживание на основе каталогов

Из того, что я понимаю: система, основанная на каталогах, больше ориентирована на сервер, а слежка больше однорангова. Вот почему на основе каталога требуется меньше сообщений для любого промаха чтения, поскольку он может достичь процессора, который…
26 фев '13 в 10:44
1 ответ

Доступ к памяти в многоядерных процессорах против нескольких процессоров

У меня вопрос, Возможно ли многопроцессорному компьютеру доступ к данным из ОЗУ (система с одним ОЗУ) Например, если машина имеет 2 процессора p1, p2, которые выполняются параллельно, возможно ли, что они имеют доступ к одному и тому же оперативной …
30 июл '13 в 08:08
2 ответа

Синхронизация данных в многоядерной среде (на основе Java)

Это мой первый вопрос, так что будьте осторожны со мной. Что происходит, когда два потока, скажем, t1 и t2, работающие на отдельных ядрах ЦП, в одно и то же время вызывают синхронизированный метод для общего объекта, то есть в одном и том же цикле н…
1 ответ

Что подразумевается под масштабируемостью системы SMP?

В настоящее время я готовлюсь к своему последнему экзамену по операционным системам, и я застрял с (возможно, очень простым) вопросом из предыдущих экзаменов. Проблема в том, что у нас никогда не было этой темы в лекции, и я не совсем уверен, что хо…
5 ответов

Что произойдет, если два процесса в разных процессорах попытаются получить блокировку ровно в одно и то же время

Итак, я читаю о синхронизации и читаю различные алгоритмы, такие как спин-блокировки, семафоры и мьютексы, чтобы избежать состояния гонки. Однако эти алгоритмы не могут предотвратить состояние гонки в SMP, когда множественные процессы обращаются к д…
23 окт '11 в 00:54
3 ответа

Как заставить WebLogic использовать все процессоры на многопроцессорной машине

Вчера мы заметили своеобразное поведение с Java/Web Logic на одном из наших многопроцессорных серверов, поэтому хотели подумать об этом. По какой-то причине в Web Logic/Java используется только один процессор из двух доступных процессоров. Когда мы …
21 авг '09 в 20:34
1 ответ

Многопоточная программа (процесс) на многоядерных процессорах с гиперпоточностью

Для многоядерных вычислений меня с самого начала смущает то, что модель многоядерного оборудования слишком абстрагирована от реальной машины. Я работал на ноутбуке с одним процессором Intel, содержащим 4 ядра и поддерживающим гиперпоточность, что де…
18 ноя '14 в 02:43
2 ответа

Определить количество доступных ядер на машине?

Я хочу, чтобы мое программное обеспечение создавало один поток на ядро, очевидно, у разных компьютеров Mac разное количество ядер. Кто-нибудь знает как (программно, через Какао) определить количество ядер?
16 ноя '11 в 16:06
1 ответ

Сетка потоковых блоков и мультипроцессора

Руководство по программированию CUDA гласит: Архитектура CUDA построена на масштабируемом массиве многопоточных потоковых мультипроцессоров (SM). Когда программа CUDA на хост-процессоре вызывает сетку ядра, блоки сетки перечисляются и распределяются…
14 май '13 в 18:05
1 ответ

Влияет ли количество ядер на время выполнения

Скажем, я написал программу, которая выполняется на двухъядерном процессоре за 30 секунд. Сколько времени займет 16-ядерный процессор? то же самое или отличается Два случая: Один - программа написана с учетом нескольких ядер. Двухпрограммная написан…
21 мар '12 в 09:11
1 ответ

Зачем вызывать метод join() после получения результатов?

Я видел этот код, опубликованный где-то, и мне было трудно понять, как он может работать должным образом out_q = Queue() chunksize = int(math.ceil(len(nums) / float(nprocs))) procs = [] for i in range(nprocs): p = multiprocessing.Process( target=wor…
1 ответ

Обеспечивает ли API-интерфейс pthread синхронизацию в многопроцессорной среде?

Я только начал изучать API-интерфейс pthread. Я использую разные книги и веб-сайты и, судя по тому, что они все сообщают, функции синхронизации pthread (например, с мьютексами) работают как для однопроцессорной, так и для многопроцессорной среды. Но…
30 окт '16 в 17:54
2 ответа

Многопроцессорность не позволяет полностью использовать процессор на двухпроцессорной машине с Windows

Я работаю на двухпроцессорной машине с Windows и пытаюсь запустить несколько независимых процессов Python, используя многопроцессорную библиотеку. Конечно, я стремлюсь максимально использовать оба процессора, чтобы ускорить время вычислений. Детали …
1 ответ

Блокировка шаблонов обработки карт GPU с использованием их ядер SM

У меня есть вопрос о процессах планирования вычислительных возможностей карт памяти 1.3 и 2.0. Максимальное количество блоков, запланированных каждый раз в потоковом мультипроцессоре, равно 8 в обоих случаях, по крайней мере, это то, что я заметил в…
13 май '13 в 14:30