Вопросы с тегом «concurrency»

Вопрос о проблемах параллелизма, таких как синхронизация и взаимоблокировки.

5
Разница между параллельным и параллельным программированием?
При рассмотрении параллельного программирования обычно используются два термина: параллельный и параллельный. А некоторые языки программирования специально заявляют о поддержке параллельного программирования, например, Java . Означает ли это, что параллельное и параллельное программирование на самом деле отличаются?

3
Контрастные алгоритмы Петерсона и Деккера
Я пытаюсь понять алгоритмы Петерсона и Деккера, которые очень похожи и имеют много симметрий. Я попытался сформулировать алгоритмы на неформальном языке следующим образом: Peterson's: "I want to enter." flag[0]=true; "You can enter next." turn=1; "If you want to enter and while(flag[1]==true&&turn==1){ it's your turn I'll wait." } Else: Enter CS! …

2
В чем разница между потоками уровня пользователя и потоками уровня ядра?
Прочитав несколько источников, я все еще не понимаю, какие темы нужны пользователям и ядру. Особенно: Потоки могут существовать как на уровне пользователя, так и на уровне ядра. В чем разница между уровнем пользователя и уровнем ядра?

2
Что означает «истинный параллелизм»?
Я часто слышу такие фразы, как «истинная семантика параллелизма» и «истинные эквивалентности параллелизма» без каких-либо ссылок. Что означают эти термины и почему они важны? Каковы некоторые примеры истинных совпадений параллелизма и зачем они нужны? Например, в каких случаях они более применимы, чем более стандартные эквиваленты (бисимуляция, эквивалентность трасс и т. …

3
Сходства и различия в основных алгебрах процессов
Насколько мне известно, есть три основных алгебры процессов, которые вдохновили широкий спектр исследований формальных моделей параллелизма. Эти: CCS и калькуляция Робин Милнерππ\pi CSP Тони Хоаром и ACP Ян Бергстра и Ян Виллем Клоп Все трое, по-видимому, по сей день ведут довольно активную работу, и было проведено огромное количество исследований по …

1
Без блокировки, постоянное время обновления параллельных древовидных структур данных?
В последнее время я немного читал литературу и нашел довольно интересные структуры данных. Я исследовал различные методы уменьшения времени обновления до худшем случае [1-7].O ( 1 )О(1)\mathcal{O}(1) Недавно я начал изучать структуры данных без блокировок для поддержки эффективного параллельного доступа. Использовались ли какие-либо из этих методов обновления времени худшем случае …

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

1
Существуют ли реализации аппаратной блокировки без тестирования и установки или подкачки?
Блокировки, как правило, реализуются с помощью инструкций на уровне проверки и установки и обмена на уровне машины. Есть ли другие реализации, которые не используют их? Кроме того, можем ли мы сказать, что все аппаратные решения критической секции можно разделить на три, а именно: отключение прерываний, тестирование и установка и своп?


1
Различия между актерской моделью и последовательными процессами связи (CSP)
Когда мы смотрим на модель актора и передачу последовательных процессов, мы видим, что они оба пытаются выполнять параллелизм на основе передачи сообщений , но они различны . (Мы видим реализации НСП модели в ходу-лане «s goroutines (и Clojure в core.async ) и актер модель в компании Scala Akka инструментарии) Я …

2
Возможно ли, чтобы язык программирования на основе стека был параллельным?
Я читал о стековых языках программирования, таких как FORTH и Cat , и кажется, что, учитывая их природу, они могут выполнять только одно действие за раз, независимо от их парадигмы (FORTH обязателен, тогда как Cat функционален). Императивный язык изменил бы стек, а чисто функциональный язык, такой как Joy , вернул …

3
Кому нужна линеаризуемость?
Я читал о различиях между сериализуемостью и линеаризуемостью , которые являются критериями согласованности для реплицируемых систем, таких как реплицируемые базы данных. Однако я не знаю, в каких случаях потребуется линеаризуемость, даже если она сильнее, чем сериализуемость. Не могли бы вы придумать сценарии, где такое сильное свойство действительно было бы необходимо?

2
Архитектура ЦП смещена в сторону процедурного времени выполнения?
Могут ли быть внесены какие-либо изменения в ЦП, чтобы они работали лучше для одновременных сред выполнения, таких как Rust? Например, есть ли изменения в реализациях прогнозирования ветвлений или размерах кэша, которые могли бы помочь одновременным выполнениям? У меня сложилось впечатление, что текущие конструкции ЦП могут быть оптимизированы в большей степени …

2
Хорошая снимковая структура данных для индекса в памяти
Я проектирую базу данных объектов в памяти для очень конкретного случая использования. Это один писатель, но должен поддерживать эффективное одновременное чтение. Чтения должны быть изолированными. Нет языка запросов, база данных поддерживает только: получить объект / -ы по атрибуту / набору атрибутов (например, может быть поддержка выражений x.count < 5) получить …

1
Какова цель потоков M: N (Hybrid)?
Другими словами, какие преимущества имеет гибридная многопоточность по сравнению с 1: 1 (только для ядра) и N: 1 (только для пользователя)? Это продолжение к тому, В чем разница между потоками уровня пользователя и потоками уровня ядра?

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.