11.02.2013 |
1:09:16 |
progr. |
general methodology for implementing highly concurrent data structures |
общая методология реализации высоко параллельных структур данных |
11.02.2013 |
1:08:08 |
progr. |
implementing highly concurrent data structures |
реализация высоко параллельных структур данных |
11.02.2013 |
1:07:02 |
progr. |
highly concurrent data structures |
высоко параллельные структуры данных |
11.02.2013 |
1:06:39 |
progr. |
highly concurrent data structure |
высоко параллельная структура данных |
11.02.2013 |
1:04:24 |
progr. |
concurrent data structure |
параллельная структура данных |
11.02.2013 |
1:03:30 |
progr. |
concurrent data structures |
параллельные структуры данных |
11.02.2013 |
0:49:15 |
progr. |
comprehensive discussion of wait-free synchronization |
всестороннее обсуждение синхронизации без ожидания |
11.02.2013 |
0:47:53 |
progr. |
comprehensive discussion |
всестороннее обсуждение |
11.02.2013 |
0:46:42 |
progr. |
wait-free synchronization |
синхронизация без ожидания |
11.02.2013 |
0:45:47 |
progr. |
wait-free |
без ожидания |
11.02.2013 |
0:27:51 |
progr. |
Broadcast Algorithm: A method for disseminating information or making decisions in a distributed program. For decision making, each process broadcasts requests and acknowledgements to all other processes and maintains an ordered message queue that it uses to decide when its request is the oldest |
Алгоритм рассылки: метод распространения информации или принятия решений в распределённой программе. Для принятия решения каждый процесс отправляет запросы и подтверждения всем остальным процессам и обслуживает упорядоченную очередь сообщений, по которой определяется наиболее давний запрос (см. "Foundations of Multithreaded, Parallel, and Distributed Programming" by Gregory R. Andrews 2000) |
11.02.2013 |
0:24:32 |
progr. |
broadcast requests and acknowledgements to all other processes |
отправлять запросы и подтверждения всем остальным процессам |
11.02.2013 |
0:17:33 |
progr. |
maintain an ordered message queue that it uses to decide when its request is the oldest |
обслуживать упорядоченную очередь сообщений, по которой определяется наиболее давний запрос |
11.02.2013 |
0:10:35 |
progr. |
ordered message queue |
упорядоченная очередь сообщений |
11.02.2013 |
0:08:24 |
progr. |
method for disseminating information or making decisions in a distributed program |
метод распространения информации или принятия решений в распределенной программе |
11.02.2013 |
0:07:45 |
progr. |
method for disseminating information or making decisions |
метод распространения информации или принятия решений |
11.02.2013 |
0:05:52 |
progr. |
making decisions |
принятие решений |
11.02.2013 |
0:04:42 |
progr. |
disseminating information |
распространение информации |
10.02.2013 |
23:47:05 |
progr. |
gather information about the global state |
сбор информации о глобальном состоянии |
10.02.2013 |
23:39:19 |
progr. |
process interaction pattern in distributed programs |
схема взаимодействия процессов в распределённой программе |
10.02.2013 |
23:37:12 |
progr. |
process interaction pattern |
схема взаимодействия процессов |
10.02.2013 |
23:28:54 |
progr. |
different sequential program |
отдельная последовательная программа |
10.02.2013 |
23:16:39 |
progr. |
Several times we have mentioned the issue of copying with failures, and several of the above papers show how to make specific algorithms fault tolerant |
Здесь несколько раз упоминался вопрос копирования со сбоями, а в некоторых из уже перечисленных работ показано, как сделать определённые алгоритмы устойчивыми к сбоям (см. "Foundations of Multithreaded, Parallel, and Distributed Programming" by Gregory R. Andrews 2000) |
10.02.2013 |
23:04:09 |
gen. |
several times |
здесь несколько раз |
10.02.2013 |
23:02:43 |
progr. |
make specific algorithms fault tolerant |
сделать определённые алгоритмы устойчивыми к сбоям |
10.02.2013 |
22:30:04 |
progr. |
specific algorithms |
определённые алгоритмы |
10.02.2013 |
22:29:00 |
progr. |
specific algorithm |
определённый алгоритм |
10.02.2013 |
22:27:42 |
progr. |
fault-tolerant |
устойчивый к сбоям (алгоритм) |
10.02.2013 |
22:14:03 |
progr. |
issue of copying with failures |
вопрос копирования со сбоями |
10.02.2013 |
22:12:56 |
progr. |
copying with failures |
копирование со сбоями |
10.02.2013 |
22:07:35 |
progr. |
fault tolerance in distributed systems |
отказоустойчивость в распределённых системах |
10.02.2013 |
22:04:57 |
progr. |
several general solution paradigms |
некоторые общие модели решений |
10.02.2013 |
22:04:33 |
progr. |
general solution paradigms |
общие модели решений |
10.02.2013 |
22:04:01 |
progr. |
solution paradigms |
модели решений |
10.02.2013 |
21:58:26 |
progr. |
excellent overview of fault-tolerant programming |
прекрасный обзор отказоустойчивого программирования |
10.02.2013 |
21:57:33 |
progr. |
excellent overview |
прекрасный обзор |
10.02.2013 |
21:51:55 |
progr. |
full treatment of fault-tolerant programming |
полное рассмотрение отказоустойчивого программирования |
10.02.2013 |
21:50:54 |
progr. |
full treatment |
полное рассмотрение |
10.02.2013 |
21:02:50 |
progr. |
kernel |
ядро (в многопоточном, параллельном и распределенном программировании; набор структур данных и примитивных операций (непрерываемых процедур), который управляет процессами, распределяет их между процессорами и реализует взаимодействие высокого уровня и синхронизацию операций типа семафоров или обмен сообщениями) |
10.02.2013 |
20:57:59 |
progr. |
partial correctness |
частичная корректность (свойство программы вычислять желаемый результат при условии, что она завершается) |
10.02.2013 |
20:53:47 |
progr. |
conditional atomic action |
условное неделимое действие (неделимое действие, которое должно быть отложено, пока некоторое булево условие B не станет истинным) |
10.02.2013 |
20:44:56 |
progr. |
triple |
тройка (в программировании; формула логики программирования вида { P } S { Q }, где P и Q – предикаты, a S – список операторов. Интерпретация тройки следующая: если выполнение S начинается в состоянии, удовлетворяющем P, и заканчивается, то заключительное состояние удовлетворяет Q) |
10.02.2013 |
20:37:34 |
progr. |
proof outline |
схема доказательства (программа с добавленными утверждениями, достаточными для того, чтобы убедить читателя в её корректности. В полной схеме доказательства утверждение ставится до и после каждого оператора) |
10.02.2013 |
20:27:18 |
progr. |
state of a program |
состояние программы (значения всех переменных программы в некоторый момент времени) |
10.02.2013 |
20:15:28 |
progr. |
synchronous parallel program |
синхронная параллельная программа (программа, в которой каждый процесс выполняется на своём собственном процессоре, т.е. процессы выполняются параллельно. Вместе с тем, этот термин иногда употребляется по отношению к любой "многопроцессной" программе) |
10.02.2013 |
17:56:48 |
progr. |
at-most-once property |
свойство "не более одного" (свойство оператора присваивания х = е, в котором либо а) х не читается другим процессом, а е содержит не более одной ссылки на переменную, изменяемую другим процессом, либо б) х не изменяется другими процессами, а е не содержит ссылок на переменные, изменяемые другими процессами. Такой оператор присваивания выполняется неделимым образом) |
10.02.2013 |
17:53:59 |
progr. |
at-most-once |
не более одного |
10.02.2013 |
17:50:58 |
progr. |
liveness property |
свойство живучести (свойство программы, утверждающее, что нечто надлежащее в конце концов произойдет, т.е. программа в конце концов достигнет "хорошего" состояния. Примерами данного свойства являются завершение и возможный вход в критическую секцию) |
10.02.2013 |
17:44:57 |
progr. |
safety property |
свойство безопасности (свойство программы, утверждающее, что ничего опасного не произойдет, т.е. что программа никогда не достигнет опасного состояния. Частичная корректность, взаимное исключение и отсутствие взаимных блокировок – типичные примеры свойства безопасности) |
10.02.2013 |
17:28:43 |
progr. |
distributed shared memory |
распределённая разделяемая память (программная реализация разделяемого адресного пространства на мультипроцессоре с распределенной памятью или на сети процессоров) |
10.02.2013 |
17:22:34 |
progr. |
filter process |
процесс-фильтр (процесс, который получает (считывает) данные из одного или нескольких входных каналов, вычисляет функцию и отправляет (записывает) результаты в один или несколько выходных каналов. Процесс-фильтр является одновременно производителем и потребителем и может использоваться в конвейере) |
10.02.2013 |
17:19:17 |
progr. |
client/server program |
программа типа "клиент-сервер" (схема взаимодействия процессов в распределенной программе. Процесс-сервер управляет ресурсом и реализует операции над этим ресурсом. Клиент посылает запрос на сервер, активизируя одну из операций сервера) |
10.02.2013 |
17:15:08 |
progr. |
task parallel program |
программа, параллельная по задачам (программа, в которой каждый процесс выполняет отдельную задачу и, следовательно, является отдельной последовательной программой) |
10.02.2013 |
17:12:40 |
progr. |
data parallel program |
программа, параллельная по данным (программа, в которой все процессы выполняют (обычно одновременно) одни и те же действия над разными частями разделяемых данных) |
10.02.2013 |
17:09:58 |
progr. |
precondition |
условие, истинное перед выполнением оператора (предусловие) |
10.02.2013 |
17:06:11 |
progr. |
postcondition |
условие, истинное после выполнения оператора (постусловие) |
10.02.2013 |
17:03:35 |
progr. |
covering condition |
покрывающее условие (механизм синхронизации, используемый с мониторами. Процесс передает сигнал условной переменной, когда можно продолжить выполнение ожидающих процессов. Условие, связанное с этой переменной, "покрывает" настоящие условия, которых ожидают процессы) |
10.02.2013 |
16:55:20 |
progr. |
context-bounded |
контекстно-ограниченный |
10.02.2013 |
16:52:49 |
progr. |
context-based approach |
контекстно-ориентированный подход |
10.02.2013 |
16:48:23 |
progr. |
context switching |
контекстно-зависимое переключение программ (в многозадачном режиме) |
10.02.2013 |
16:42:52 |
progr. |
context switch |
переключение контекста (в многозадачных ОС; переключение процессора с выполнения одного процесса на выполнение другого. Оно называется переключением контекста, поскольку состояние каждого процесса называется его контекстом. Переключение контекста выполняется в ядре программой, которая называется диспетчером или планировщиком) |
10.02.2013 |
16:25:42 |
progr. |
single program, multiple data |
"одна программа много данных" (стиль программирования, при котором кодируется один процесс. Копия процесса выполняется на всех процессорах; каждая копия имеет свои собственные данные. Обычно существует способ, по которому процесс может определить свой идентификатор (иногда называемый его рангом)) |
10.02.2013 |
16:25:42 |
progr. |
single program, multiple data |
"одна программа – много данных" (стиль программирования, при котором кодируется один процесс. Копия процесса выполняется на всех процессорах; каждая копия имеет свои собственные данные. Обычно существует способ, по которому процесс может определить свой идентификатор (иногда называемый его рангом)) |
10.02.2013 |
16:14:53 |
progr. |
bag-of-task paradigm |
парадигма "портфель задач" (метод параллельных вычислений, при котором все задачи помещаются в портфель, разделяемый рабочими процессами. Каждый процесс многократно берет задачу из портфеля, выполняет её и, возможно, порождает новые задачи, которые помещает в портфель. Вычисления завершаются, когда портфель пуст и рабочие процессы незаняты) |
10.02.2013 |
16:11:08 |
progr. |
manager/workers paradigm |
парадигма "управляющий-рабочие" (распределенная реализация парадигмы "портфель задач". Управляющий процесс реализует портфель задач и собирает результаты; рабочие процессы взаимодействуют с управляющим, чтобы получать от него задачи и возвращать ему результаты) |
10.02.2013 |
16:04:24 |
progr. |
replicated servers paradigm |
парадигма дублируемых серверов (схема взаимодействия процессов в распределенной программе, имеющей много экземпляров серверного процесса. Каждый сервер управляет частью или копией некоторого разделяемого ресурса; серверы взаимодействуют между собой, чтобы поддерживать согласованное состояние ресурса) |
10.02.2013 |
16:01:00 |
progr. |
independent statements |
независимые операторы (два оператора в разных процессах, которые не записывают данные в одни и те же переменные, причем каждый из них не считывает переменные, в которые записывает другой оператор. Независимые операторы никогда не влияют друг на друга при параллельном выполнении) |
10.02.2013 |
15:56:19 |
progr. |
coarse-grained |
крупномодульный |
10.02.2013 |
15:55:26 |
progr. |
coarse-grained atomic action |
крупномодульное неделимое действие (см. atomic action) |
10.02.2013 |
15:53:37 |
progr. |
fine-grained atomic action |
мелкомодульное неделимое действие (см. atomic action) |
10.02.2013 |
15:35:03 |
progr. |
multiple instruction, multiple data multiprocessor |
мультипроцессор со многими потоками команд и многими потоками данных (аппаратная архитектура со множеством независимых процессоров, каждый из которых занят выполнением своей программы; также называется асинхронным мультипроцессором) |
10.02.2013 |
15:35:03 |
progr. |
multiple instruction, multiple data multiprocessor |
МIМD-мультипроцессор |
10.02.2013 |
15:35:03 |
progr. |
multiple instruction, multiple data multiprocessor |
асинхронный мультипроцессор |
10.02.2013 |
15:23:34 |
progr. |
single instruction, multiple data multiprocessor |
синхронный мультипроцессор |
10.02.2013 |
15:22:48 |
progr. |
single instruction, multiple data multiprocessor |
мультипроцессор с одним потоком команд и многими потоками данных (аппаратная архитектура, в которой один поток команд выполняется синхронно (in lockstep) каждым процессором, обрабатывающим свои локальные данные; также называется синхронным мультипроцессором) |
10.02.2013 |
15:22:48 |
progr. |
single instruction, multiple data multiprocessor |
SIМD-мультипроцессор |
10.02.2013 |
15:11:51 |
progr. |
multicomputer |
MIMD-мультипроцессор с распределенной памятью |
10.02.2013 |
15:03:09 |
progr. |
metacomputer |
метакомпьютер (группа компьютеров, объединенных высокоскоростной сетью и инфраструктурой программного обеспечения, создающей иллюзию одного компьютера. Иногда называется сетевым виртуальным суперкомпьютером) |
10.02.2013 |
14:59:49 |
progr. |
false sharing |
ложное разделение данных (ситуация, в которой два процесса ссылаются на различные переменные, расположенные в одной строке кэша или странице DSM, и хотя бы один из процессов записывает в "свою" переменную) |
10.02.2013 |
14:53:09 |
progr. |
total correctness |
корректность (свойство программы вычислять желаемый результат и завершаться) |
10.02.2013 |
14:47:31 |
progr. |
iterative parallelism |
итерационный параллелизм (тип параллелизма, в котором каждый процесс выполняет цикл, обрабатывающий часть данных программы. Часто возникает в результате распараллеливания циклов последовательной программы) |
10.02.2013 |
14:40:43 |
progr. |
exclusion of configurations |
исключение конфигураций (метод доказательства таких свойств безопасности, как, напр., взаимное исключение и отсутствие взаимной блокировки. Процесс P1 не может находиться в состоянии, удовлетворяющем условию A1, одновременно с пребыванием процесса P2 в состоянии, удовлетворяющем условию A2, если (A1 ˄ A2) = = false) |
10.02.2013 |
14:28:23 |
progr. |
livelock |
живая блокировка (ситуация, в которой процесс зациклен в ожидании условия, которое никогда не станет истинным. Живая блокировка является "активно ожидающим" аналогом взаимной блокировки) |
10.02.2013 |
14:24:46 |
progr. |
livelock |
активный тупик (ситуация, в которой критический участок задания не может быть завершен системой из-за поступления от его клиентов дополнительных запросов на обслуживание до наступления момента исключения их из очереди) |
10.02.2013 |
14:23:46 |
progr. |
livelock |
динамическая взаимоблокировка (ситуация, когда два или несколько процессов непрерывно меняют своё состояние в ответ на изменения в другом процессе (процессах), не производя полезной работы. Это похоже на взаимоблокировку (deadlock) – с тем отличием, что ни один из процессов не застопорен и ничего не ждёт) |
10.02.2013 |
14:23:46 |
progr. |
livelock |
динамическая "взаимозавязка" |
10.02.2013 |
14:19:17 |
progr. |
global invariant |
глобальный инвариант (предикат, истинный в каждом видимом состоянии программы, а именно, до и после каждого неделимого действия) |
10.02.2013 |
14:17:06 |
progr. |
nested monitor call |
вложенный вызов монитора (вызов одного монитора из другого. Когда процесс выполняет вложенный вызов, то говорят, что вызов открытый, если процесс освобождает исключение в первом (вызывающем) мониторе. Вызов называется закрытым, если процесс сохраняет исключение в первом мониторе) |
10.02.2013 |
14:02:21 |
progr. |
producers and consumers interaction |
взаимодействие производителей и потребителей (взаимодействие двух процессов, при котором один из них создает данные, используемые в другом) |
10.02.2013 |
13:45:05 |
progr. |
unconditional atomic action |
безусловное неделимое действие (неделимое действие, не имеющее условия задержки) |
10.02.2013 |
13:40:08 |
progr. |
pipeline algorithm |
конвейерный алгоритм |
10.02.2013 |
13:34:17 |
progr. |
broadcast algorithm |
алгоритм рассылки (метод распространения информации или принятия решений в распределенной программе. Для принятия решения каждый процесс отправляет запросы и подтверждения всем остальным процессам и обслуживает упорядоченную очередь сообщений, по которой определяется наиболее давний запрос) |
10.02.2013 |
13:31:05 |
progr. |
heartbeat algorithm |
алгоритм пульсации (парадигма взаимодействия процессов в распределенных программах. Каждый процесс периодически выполняет три фазы: 1) передает сообщения другим процессам, 2) принимает сообщения от других процессов, 3) выполняет вычисления с локальными данными и данными, полученными в сообщениях) |
10.02.2013 |
13:27:31 |
progr. |
token-passing algorithm |
алгоритм передачи маркера (схема взаимодействия процессов в распределенной программе, использующая маркеры для передачи разрешения или сбора информации о глобальном состоянии) |
10.02.2013 |
13:17:48 |
progr. |
probe/echo algorithm |
алгоритм "зонд-эхо" (парадигма взаимодействия процессов в распределенных программах. Зонд используется для рассылки информации от одного процесса всем остальным, а эхо – для сбора информации) |
10.02.2013 |
13:17:48 |
progr. |
probe/echo algorithm |
алгоритм типа "зонд-эхо" |
10.02.2013 |
13:08:46 |
progr. |
busy waiting |
занятое ожидание (т.ж. активное ожидание; реализация синхронизации, в которой процесс многократно выполняет цикл, ожидая, что некоторое булево условие B станет истинным. Обычно это программируется как while (! В) skip;. Если процесс находится в состоянии занятого ожидания, говорят также, что он зациклен (spinning)) |
10.02.2013 |
3:03:15 |
progr. |
broadcast algorithms |
алгоритмы рассылки |
10.02.2013 |
2:58:23 |
progr. |
probe/echo algorithms |
алгоритмы типа "зонд-эхо" |
10.02.2013 |
2:55:18 |
progr. |
pipeline algorithms |
конвейерные алгоритмы |