Что такое параллельная обработка
ПАРАЛЛЕЛЬНАЯ ОБРАБОТКА
Смотреть что такое «ПАРАЛЛЕЛЬНАЯ ОБРАБОТКА» в других словарях:
Параллельная обработка — модель выполнения прикладного процесса одновременно группой процессоров. Различают три способа реализация параллелизма: 1 способ SIMD работы с одним потоком команд и несколькими потоками данных, при котором все процессоры, работающие по одной… … Финансовый словарь
Параллельная обработка — Один из видов обработки информации, когда несколько операций могут выполняться одновременно. В отличие от осознанной обработки, которая обычно выполняется последовательно, этот вид обработки происходит без осознанных усилий. Например, читая эти… … Большая психологическая энциклопедия
параллельная обработка — — [http://www.iks media.ru/glossary/index.html?glossid=2400324] Тематики электросвязь, основные понятия EN parallel processing … Справочник технического переводчика
параллельная обработка — lygiagretusis apdorojimas statusas T sritis automatika atitikmenys: angl. parallel processing vok. Parallelverarbeitung rus. параллельная обработка, f pranc. traitement en parallèle, m … Automatikos terminų žodynas
параллельная обработка информации — модель обработки информации в мозге головном, согласно коей информация проходит ряд преобразований в определенных «функциональных блоках» мозга так, что в каждый момент времени ее обработка ведется одновременно (параллельно) в нескольких… … Большая психологическая энциклопедия
ПАРАЛЛЕЛЬНАЯ ОБРАБОТКА ИНФОРМАЦИИ — См. обработка информации, параллельная … Толковый словарь по психологии
Массовая параллельная обработка — способ параллельной обработки данных большим числом процессоров, реализующий способ организации параллелизма MIMD. По английски: Massively Parallel Processing Синонимы английские: MPP См. также: Параллельная обработка Финансовый словарь Финам … Финансовый словарь
параллельная конвейерная обработка — lygiagretusis konvejerinis apdorojimas statusas T sritis radioelektronika atitikmenys: angl. parallel pipelining vok. Parallel Pipelineverarbeitung, f rus. параллельная конвейерная обработка, f pranc. traitement de pipeline parallèle, m … Radioelektronikos terminų žodynas
одновременная обработка — параллельная обработка — [Л.Г.Суменко. Англо русский словарь по информационным технологиям. М.: ГП ЦНИИС, 2003.] Тематики информационные технологии в целом Синонимы параллельная обработка EN simultaneous processing … Справочник технического переводчика
Параллельная обработка
Смотреть что такое «Параллельная обработка» в других словарях:
Параллельная обработка — Один из видов обработки информации, когда несколько операций могут выполняться одновременно. В отличие от осознанной обработки, которая обычно выполняется последовательно, этот вид обработки происходит без осознанных усилий. Например, читая эти… … Большая психологическая энциклопедия
ПАРАЛЛЕЛЬНАЯ ОБРАБОТКА — (parallel processing) Метод работы на компьютере, при котором две или несколько частей программы выполняются не последовательно, а параллельно. Строго говоря, применение данного метода возможно только на компьютерах, обладающих двумя и более… … Словарь бизнес-терминов
параллельная обработка — — [http://www.iks media.ru/glossary/index.html?glossid=2400324] Тематики электросвязь, основные понятия EN parallel processing … Справочник технического переводчика
параллельная обработка — lygiagretusis apdorojimas statusas T sritis automatika atitikmenys: angl. parallel processing vok. Parallelverarbeitung rus. параллельная обработка, f pranc. traitement en parallèle, m … Automatikos terminų žodynas
параллельная обработка информации — модель обработки информации в мозге головном, согласно коей информация проходит ряд преобразований в определенных «функциональных блоках» мозга так, что в каждый момент времени ее обработка ведется одновременно (параллельно) в нескольких… … Большая психологическая энциклопедия
ПАРАЛЛЕЛЬНАЯ ОБРАБОТКА ИНФОРМАЦИИ — См. обработка информации, параллельная … Толковый словарь по психологии
Массовая параллельная обработка — способ параллельной обработки данных большим числом процессоров, реализующий способ организации параллелизма MIMD. По английски: Massively Parallel Processing Синонимы английские: MPP См. также: Параллельная обработка Финансовый словарь Финам … Финансовый словарь
параллельная конвейерная обработка — lygiagretusis konvejerinis apdorojimas statusas T sritis radioelektronika atitikmenys: angl. parallel pipelining vok. Parallel Pipelineverarbeitung, f rus. параллельная конвейерная обработка, f pranc. traitement de pipeline parallèle, m … Radioelektronikos terminų žodynas
одновременная обработка — параллельная обработка — [Л.Г.Суменко. Англо русский словарь по информационным технологиям. М.: ГП ЦНИИС, 2003.] Тематики информационные технологии в целом Синонимы параллельная обработка EN simultaneous processing … Справочник технического переводчика
В чем разница между последовательной и параллельной обработкой в компьютерной архитектуре
главное отличие между последовательной и параллельной обработкой в компьютерной архитектуре является то, что последовательная обработка выполняет одну задачу за раз, в то время как параллельная обр
Содержание:
главное отличие между последовательной и параллельной обработкой в компьютерной архитектуре является то, что последовательная обработка выполняет одну задачу за раз, в то время как параллельная обработка выполняет одновременно несколько задач.
Компьютерная архитектура определяет функциональность, организацию и реализацию компьютерной системы. Он объясняет, как устроена компьютерная система и технологии, с которыми она совместима. Процессор является одним из наиболее важных компонентов в компьютерной системе. Он выполняет инструкции и выполняет поставленные перед ним задачи. Существует два основных типа обработки: последовательная и параллельная обработка.
Ключевые области покрыты
1. Что такое последовательная обработка в компьютерной архитектуре
–Определение, Функциональность
2. Что такое параллельная обработка в компьютерной архитектуре
–Определение, Функциональность
3. В чем разница между последовательной и параллельной обработкой в компьютерной архитектуре
–Сравнение ключевых различий
Основные условия
Компьютерная архитектура, параллельная обработка, последовательная обработка
Что такое последовательная обработка в компьютерной архитектуре
При последовательной обработке процессор выполняет одну задачу за раз. После этого он выполняет другие задачи последовательно. Операционная система выполняет много программ, и у каждой из них есть несколько задач. Процессор должен выполнить все эти задачи, но он выполняет одну задачу за раз. Другие задачи ожидают в очереди, пока процессор не завершит текущую задачу. Другими словами, все задачи обрабатываются последовательно. Следовательно, этот тип обработки называется последовательной обработкой или последовательной обработкой. Такие машины, как Pentium 3 и Pentium 4, выполняют последовательную обработку.
Мы можем понять функциональность последовательной обработки, используя следующую аналогию. Предположим, супермаркет с несколькими очередями и только один кассир. Кассир заканчивает выставление счетов за продукты одного клиента, а затем переходит к другому клиенту. Он выполняет выставление счетов один за другим.
Что такое параллельная обработка в компьютерной архитектуре
Есть несколько процессоров в параллельной обработке. Каждый процессор выполняет задачи, назначенные им одновременно. Процессоры используют шину для связи друг с другом и для доступа к основной памяти. Каждый процессор работает на своих локальных данных. Поскольку процессоры работают независимо, сбой в одном процессоре не влияет на функциональность другого процессора. Следовательно, параллельная обработка увеличивает пропускную способность, а также повышает надежность. Большинство современных компьютеров поддерживают параллельную обработку для повышения производительности.
Мы можем понять функциональность параллельной обработки, используя следующий пример. В супермаркете есть несколько очередей, и для каждой очереди есть касса. Каждый кассир выставляет счета клиентам в своей очереди.
Разница между последовательной и параллельной обработкой в компьютерной архитектуре
Определение
Количество процессоров
Основное различие между последовательной и параллельной обработкой заключается в том, что в последовательной обработке используется один процессор, но параллельно обрабатывается несколько процессоров.
Спектакль
Поэтому производительность параллельной обработки выше, чем при последовательной обработке.
Нагрузка
При последовательной обработке нагрузка на процессор выше. Однако при параллельной обработке нагрузка на процессор ниже. Таким образом, это важное различие между последовательной и параллельной обработкой.
Передача данных
Кроме того, при последовательной обработке передача данных осуществляется в битовом формате. Однако при параллельной обработке передача данных осуществляется в байтовой форме (8 бит).
Требуемое время
Требуемое время также является разницей между последовательной и параллельной обработкой. То есть; последовательная обработка требует больше времени, чем параллельная обработка для выполнения задачи.
Стоимость
Кроме того, параллельная обработка обходится дороже, чем последовательная обработка, поскольку она использует несколько процессоров.
Заключение
Существует два типа обработки: последовательная и параллельная обработка в компьютерной системе. Основное различие между последовательной и параллельной обработкой в компьютерной архитектуре заключается в том, что последовательная обработка выполняет одну задачу за раз, в то время как параллельная обработка выполняет одновременно несколько задач. Вкратце, производительность параллельной обработки выше, чем последовательной обработки.
Параллельная обработка
Смотреть что такое «Параллельная обработка» в других словарях:
Параллельная обработка — модель выполнения прикладного процесса одновременно группой процессоров. Различают три способа реализация параллелизма: 1 способ SIMD работы с одним потоком команд и несколькими потоками данных, при котором все процессоры, работающие по одной… … Финансовый словарь
ПАРАЛЛЕЛЬНАЯ ОБРАБОТКА — (parallel processing) Метод работы на компьютере, при котором две или несколько частей программы выполняются не последовательно, а параллельно. Строго говоря, применение данного метода возможно только на компьютерах, обладающих двумя и более… … Словарь бизнес-терминов
параллельная обработка — — [http://www.iks media.ru/glossary/index.html?glossid=2400324] Тематики электросвязь, основные понятия EN parallel processing … Справочник технического переводчика
параллельная обработка — lygiagretusis apdorojimas statusas T sritis automatika atitikmenys: angl. parallel processing vok. Parallelverarbeitung rus. параллельная обработка, f pranc. traitement en parallèle, m … Automatikos terminų žodynas
параллельная обработка информации — модель обработки информации в мозге головном, согласно коей информация проходит ряд преобразований в определенных «функциональных блоках» мозга так, что в каждый момент времени ее обработка ведется одновременно (параллельно) в нескольких… … Большая психологическая энциклопедия
ПАРАЛЛЕЛЬНАЯ ОБРАБОТКА ИНФОРМАЦИИ — См. обработка информации, параллельная … Толковый словарь по психологии
Массовая параллельная обработка — способ параллельной обработки данных большим числом процессоров, реализующий способ организации параллелизма MIMD. По английски: Massively Parallel Processing Синонимы английские: MPP См. также: Параллельная обработка Финансовый словарь Финам … Финансовый словарь
параллельная конвейерная обработка — lygiagretusis konvejerinis apdorojimas statusas T sritis radioelektronika atitikmenys: angl. parallel pipelining vok. Parallel Pipelineverarbeitung, f rus. параллельная конвейерная обработка, f pranc. traitement de pipeline parallèle, m … Radioelektronikos terminų žodynas
одновременная обработка — параллельная обработка — [Л.Г.Суменко. Англо русский словарь по информационным технологиям. М.: ГП ЦНИИС, 2003.] Тематики информационные технологии в целом Синонимы параллельная обработка EN simultaneous processing … Справочник технического переводчика
ПАРАЛЛЕЛЬНАЯ ОБРАБОТКА ИНФОРМАЦИИ
Одним из основных факторов, определяющих развитие вычислительной техники в целом и вычислительных систем в частности, является высокая производительность. Общий метод увеличения производительности — организация параллельной обработки информации, т. е. одновременное решение задач или совмещение во времени этапов решения одной задачи.
Во всем многообразии способов организации параллельной обработки можно выделить четыре основных направления:
1) совмещение во времени различных этапов разных задач;
2) одновременное решение различных задач или частей одной задачи;
3) конвейерная обработка информации.
4) параллелизм уровня команд (ILP)
Первый путь — совмещение во времени этапов решения разных задач — это мультипрограммная обработка информации. Мультипрограммная обработка возможна даже в однопроцессорной ЭВМ и широко используется в современных системах обработки данных.
Естественный параллелизм независимых задач заключается в том, что в систему поступает непрерывный поток не связанных между собой задач, т. е. решение любой задачи не зависит от результатов решения других задач. В этом случае использование нескольких обрабатывающих устройств при любом способе комплексирования повышает производительность системы в целом.
Параллелизм независимых ветвей — один из наиболее распространенных типов параллелизма в обработке информации. Суть его заключается в том, что при решении большой задачи могут быть выделены отдельные независимые части—ветви программы, которые при наличии нескольких обрабатывающих устройств могут выполняться параллельно и независимо друг от друга. Двумя независимыми ветвями программы будем считать такие части задачи, при выполнении которых выполняются следующие условия:
— ни одна из входных для ветви программы величин не является выходной величиной другой программы (отсутствие функциональных связей); для обеих ветвей программы не должна производиться запись в одни и те же ячейки памяти (отсутствие связи по использованию одних и тех же полей оперативной памяти);
— условия выполнения одной ветви не зависят от результатов или признаков, полученных при выполнении другой ветви (независимость по управлению);
Таким образом, для того чтобы с помощью нескольких обрабатывающих устройств решить задачу, имеющую независимые параллельные ветви, необходима соответствующая организация процесса, которая определяет пути решения задачи и вырабатывает необходимую информацию о готовности каждой ветви. Заметим, что все это относительно легко реализовать тогда, когда известна достаточно точно длительность выполнения каждой ветви. На практике это бывает крайне редко: в лучшем случае известна приближенная длина ветвей. Поэтому организация оптимального или близкого к оптимальному графика работы является достаточно сложной задачей.
Заметим, что, как правило, трудно избежать некоторых простоев, которые возникают из-за отсутствия исходных данных для выполнения той или иной ветви. Все это приводит в конечном счете к тому, что выигрыш в производительности системы несколько снижается. Следует отметить также и определенные сложности, связанные с выделением независимых ветвей при разработке программ.
Параллелизм объектов или данных имеет место тогда, когда по одной и той же (или почти по одной и той же) программе должна обрабатываться некоторая совокупность данных, поступающих в систему одновременно. Это могут быть, например, задачи обработки сигналов от радиолокационной станции: все сигналы обрабатываются по одной и той же программе. Другой пример — обработка информации от датчиков, измеряющих одновременно один и тот же параметр и установленных на нескольких однотипных объектах. Это могут быть и чисто математические задачи, например задачи векторной алгебры — операции над векторами и матрицами, характеризующиеся некоторой совокупностью чисел. Решение задачи при этом в значительной степени сводится к выполнению одинаковых операций над парами чисел двух аналогичных объектов. Так, например, сложение двух матриц размерностью заключается в сложении соответствующих элементов этих матриц: A+B=[aik]+[bik]=[aik+bik]. При этом операция сложения должна быть проведена над т´ п парами чисел. Произведение матрицы размерностью т´ п на скаляр сводится к выполнению т´ п умножений элементов матрицы на скаляр: aА = a[aik] = [aaik] и т. д. Очевидно, все эти операции могут выполняться параллельно и независимо друг от друга несколькими обрабатывающими устройствами.
Третий путь параллельной обработки информации — конвейерная обработка — может быть реализован в системе и с одним процессором, разделенным на некоторое число последовательно включенных операционных блоков, каждый из которых специализирован на выполнении строго определенной части операции. При этом процессор работает таким образом: когда i-й операционный блок выполняет i-ю часть j-и операции, (i—1)-й операционный блок выполняет (i—1)-ю часть (j+1)-й операции,
Этап | . | ||||
СП | а1b1 | а2b2 | a3b3 | а4b4 | а5b5 |
ВП | а1b1 | a2b2 | a3b3 | а4b4 | а5b5 |
СМ | а1b1 | a2b2 | a3b3 | а4b4 | а5b5 |
HP | c1 | с2 | c3 | c4 | c5 |
Рис. 1. Структурная схема и временная диаграмма конвейера операции.
а (i+l)-й операционный блок выполняет (i+1)-ю часть (j—1)-й операции. В результате образуется своего рода конвейер обработки, который хорошо может быть проиллюстрирован следующим простым примером.
Операцию сложения двух чисел с плавающей запятой А´2 х +B´2 y =C´2 xvy можно разделить на четыре последовательно исполняемых этапа, или шага: сравнение порядков (СП); выравнивание порядков — сдвиг мантиссы с меньшим порядком для выравнивания с мантиссой с большим порядком (ВП); сложение мантисс (СМ); нормализация результата (HP). В соответствии с этим в составе процессора предусмотрены четыре операционных блока, соединенных последовательно и реализующих четыре вышеперечисленных шага операции сложения: блоки СП, ВП, СМ и HP (рис. 1). Примем, что время выполнения каждого шага равно соответственно 60, 100, 140, 100 нс. Таким образом, операция сложения будет выполняться последовательностью операционных блоков за время 400 нс.
Далее предположим, что возникает задача сложения двух векторов А и В, содержащих по п элементов с плавающей запятой. Очевидно, для решения этой задачи потребуется многократно сложить пары чисел.
Выполним эти операции на процессоре, организовав обработку данных следующим образом. После того как блок СП выполнит свою часть операции над первой парой операндов, он передает результат в следующий блок — ВП, а в блок СП будет загружена очередная пара операндов. На следующем шаге блок ВП передаст результат выполнения своей части операции в блок СМ и начнет обрабатывать вторую пару операндов и т. д. Для того чтобы не создавались очереди операндов на обработку, примем, что время выполнения каждого из этих этапов одинаково и равно максимальному значению т=140 нс. В результате получим конвейер из четырех операционных блоков. Первый результат на выходе конвейера будет получен через 140 Х 4 = 560 нс, т. е. несколько позже, чем если бы время выполнения всех этапов не выравнивалось. Однако все последующие результаты будут выдаваться через каждые 140 нс.
На рис. 1 представлена временная диаграмма процесса. Общее время сложения двух векторов с помощью описанного конвейера Тк= (п+т— 1)т, где т—число операционных блоков. Если бы конвейер не использовался, то это время было бы равно T0 = n S ti, где ti —время выполнения i-ro этапа обработки. Если применить конвейерную обработку к векторам, состоящим из 25 элементов, то получим Тк= (25+4—1) • 140=3920 нс, T0 =25 • 400=10000 нс.
Нетрудно заметить, что чем длиннее цепочка данных и чем на большее число этапов (а следовательно, и операционных блоков) разбивается операция (при той же длительности ее выполнения), тем больший эффект от использования конвейера может быть получен.
В приведенном выше примере было рассмотрено конвейерное выполнение арифметических операций, но идея конвейера может быть распространена и на выполнение команд. Следует отметить, что конвейер команд применяется в ЭВМ уже давно. При этом цикл выполнения команды разбивается на ряд этапов, например формирование адреса команды, выборка команды из памяти, расшифровка кода операции, формирование адреса операнда, выборка операнда из памяти, выполнение арифметической или логической операции и запись результата в память. В устройстве управления предусматриваются блоки, которые независимо друг от друга и параллельно могут выполнять указанные этапы.
Таким образом, если в конвейере арифметических операций происходит параллельная обработка т пар операндов, то в конвейере команд происходит совмещение во время выполнения S операций (S— число этапов, на которое разбито выполнение команды), что позволяет существенно увеличить производительность такой конвейерной системы.
Разумеется, в вычислительных системах можно одновременно использовать и конвейер команд, и конвейер арифметических операций, и даже несколько параллельно работающих конвейеров команд и арифметических операций. В последнем случае может быть получена очень высокая производительность системы.
К понятию уровня параллелизма тесно примыкает понятие гранулярности. Это мера отношения объема вычислений, выполненных в параллельной задаче, к объему коммуникаций (для обмена сообщениями). Степень гранулярности варьируется от мелкозернистой до крупнозернистой. Определим понятия крупнозернистого (coarse grained), среднезернистого (medium grained) и мелкозернистого (fine grained) параллелизма.
Крупнозернистый параллелизм: каждое параллельное вычисление достаточно независимо от остальных, причем требуется относительно редкий обмен информацией между отдельными вычислениями. Единицами распараллеливания являются большие и независимые программы, включающие тысячи команд. Этот уровень параллелизма обеспечивается операционной системой.
Среднезернистый параллелизм: единицами распараллеливания являются вызываемые процедуры, включающие в себя сотни команд. Обычно организуется как программистом, так и компилятором.
Мелкозернистый параллелизм: каждое параллельное вычисление достаточно мало и элементарно, составляется из десятков команд. Обычно распараллеливаемыми единицами являются элементы выражения или отдельные итерации цикла, имеющие небольшие зависимости по данным. Сам термин «мелкозернистый параллелизм» говорит о простоте и быстроте любого вычислительного действия. Характерная особенность мелкозернистого параллелизма заключается в приблизительном равенстве интенсивности вычислений и обмена данными. Этот уровень параллелизма часто используется распараллеливающим (векторизирующим) компилятором.
Эффективное параллельное исполнение требует искусного баланса между степенью гранулярности программ и величиной коммуникационной задержки, возникающей между разными гранулами. В частности, если коммуникационная задержка минимальна, то наилучшую производительность обещает мелкоструктурное разбиение программы. Это тот случай, когда действует параллелизм данных. Если коммуникационная задержка велика (как в слабосвязанных системах), предпочтительней крупнозернистое разбиение программ.