Книга: Программное обеспечение и его разработка
Производительность при многопроцессорной обработке
Производительность при многопроцессорной обработке
Если в состав многопроцессорного комплекса входят машины в 1 МКС — каждая из них выполняет миллион команд в секунду — и у нас их четыре, мы, конечно же, получим систему в 4 МКС, не так ли? Нет, не так. Когда сразу несколько ЦП пытаются обратиться к одному блоку памяти, возникает эффект блокирования. В некоторых приложениях специально формулируются требования по синхронизации, позволяющие достичь целостности данных, когда несколько ЦП пытаются обратиться к одному файлу данных или к одной физической ячейке памяти. При этом может возникать некоторое снижение производительности, измерить которое и понять очень сложно. (См. рис. 7.1.)
Если кто-то говорит, что такая-то и такая-то системы имеют по 16 ЦП, можно побиться об заклад, что либо 1) они работают с очень специальной задачей в крайне жестких граничных условиях, либо 2) такие системы не более чем любопытная лабораторная диковина, которая вряд ли может быть применена в настоящих приложениях. На путях внедрения 16-процессорных систем в практику универсальной обработки данных еще остается много препятствий.
Существуют, однако, и замечательные примеры применения многопроцессорных систем в системах реального времени. Система диспетчеризации авиалиний FAA имеет четыре процессора, четыре программируемых канала ввода/вывода и несколько десятков отдельных блоков памяти. В качестве многопроцессорной системы она начала работать более шести лет назад в 21 центре. Это очень дорогостоящая разработка, причем средства защиты от отказов (продолжения работы в более ограниченных условиях, когда часть аппаратуры отключается) еще до конца не запрограммированы. Но многопроцессорная обработка уже ведется.
- Основные "рычаги" управления производительностью
- Производительность
- Улучшенная производительность
- Как сравнить производительность моего компьютера с остальными?
- Производительность и надежность
- Инструкция по обработке
- Рекомендации по обработке событий в среде .NET Framework
- Ситуация 5. Слабая производительность сети
- Производительность системных вызовов
- ГЛАВА 9 Влияние синхронизации на производительность и рекомендации по ее повышению
- Производительность программы
- Процессы в многопроцессорной среде