![]() |
![]() |
Главная страница Взаимодействие нетривиальных процессов А.2. Результаты Сведем вместе результаты, полученные в этом приложении. Данный раздел может использоваться как справочник при чтении книги. Для проведения измерений использовались две системы: SparcStation 4/110 под управлением Solaris 2.6 и Digital Alpha (DEC 3000 шо(1е1 300, Pelican) под управлением Digital Unix 4.0В. В файл /etc/system системы Solaris 2.6 были добавлены следующие строки: set msgsys:msginfo msgmax = 16384 set msgsys:msg1nfo msgmnb = 32768 set msgsys:msginfo msgseg = 4096 Это дает возможность отправлять сообщения размером 16 384 байт в очередь сообщений Systeffl V (табл. А.2). Те же изменения осуществляются в Digital Unix 4.0В введением следующих строк с помощью программы sysconf 1д: ipc: msg-max = 16384 msg-mnb = 32768 Результаты измерения полосы пропускания сообщений В табл. А.2 приведены результаты измерений на компьютере Sparc под управлением Solaris 2.6, а на рис. А.1 - график этих результатов. Как мы и предполагали, полоса пропускания увеличивается с размером сообщения. Поскольку во многих реализациях очередей сообщений Systeffl V ограничение на размер сообщения, установленное в ядре, достаточно мало (раздел 3.8), максимальный размер сообщения в нашей программе имеет значение 16 384 байт. используется и для передачи небольших управляющих сообщений. Задержка определяет время, необходимое для передачи этих сообщений. Важными оказываются обе величины. Чтобы измерить скорость работы средств синхронизации, мы изменим программу, увеличивающую значение счетчика в разделяемой памяти. Поскольку увеличение - элементарная операция, время будет тратиться в основном на работу средств синхронизации. ПРИМЕЧАНИЕ - Программы этого приложения, используемые для измерения производительности средств IPC, основаны на пакете Imbench [15]. Этот пакет содержит набор тестов, измеряющих множество параметров системы (скорость переключения контекста и т. п.), а не только производительность средств IPC. Исходный код пакета доступен по адресу http: www.bitmover.com/lmbench. Величины, приведенные в этом приложении, дают нам возможность сравнить методы, описанные в книге. Заодно мы хотели показать, как просто измерить эти величины. Прежде чем останавливать свой выбор на одном из средств IPC, нелишне было бы получить эти значения в вашей собственной системе. К сожалению, насколько легко измерить величины, настолько же трудно объяснить аномальное их поведение в отсутствие доступа к исходному коду ядра и библиотек. Уменьшение полосы для сообшений размером около 4096 байт в Solaris 2.6, возможно, связано с настройкой внутренних ограничений ядра. Для сравнения с [24] мы приводим результаты аналогичных измерений для сокета TCP и доменного сокета Unix. Эти две величины бьши получены с помошью программ пакета 1 mbench для сообшений размером 65 536 байт. При измерении быстродействия сокета TCP оба процесса выполнялись на одном узле. Результаты измерения задержки в табл. А.1 приведены значения задержки в Solaris 2.6 и Digital Unix 4.0В. Таблица А.1. Задержка при передаче сообщения размером 1 байт (в микросекундах)
В разделе А.4 мы приведем листинги программ, использованных для получения первых четырех величин, а оставшиеся три получены с помощью пакета 1 mbench. При измерении скорости работы TCP и UDP оба процесса находились на одном узле. ![]() очередьсообщенийРо5:>с . . сокет TCP доменный сокет Unix очередь сообщений System V sun RPC OOP.. Sun RPC TCP Г -16 П I I 1024 4096 8192 16384 32768 65536 размер сообщения~(ба1ТГ) Рис. А.1. Полоса пропускания средств передачи сообщений в Solaris 2.6, Таблица А.2. Полоса пропускания для pa3Hbii< типов сообщений в Solaris 2.6 (Мбайт/с)
22 21 20 19 18 17 16 I 15 I 14 1 12 I 11 >< 10 R9 8 7 6 5 4 3 2 1 О очередь сообщений System V доменный сокет Unix ![]() ТСР-сокет SunRPC UDP ------ Sun RPC TCP m I I 1024 4096 8192 16384 32768 размер сообщения (байт) г-22 -21 -20 -19 -18 - 17 -16 -15 -14 -13 -12 -11 -10 -9 -8 -7 -6 -5 -4 -3 -2 - 1 i-O 65536 Рис. А.2. Полоса пропускания для различных средств передачи сообщений (Digital Unix 4.0В) Таблица А.З. Полоса пропускания для различных типов сообщения в Digital Unix 4.0В (Мбайт/с)
|
© 2000 - 2025 ULTRASONEX-AMFODENT.RU.
Копирование материалов разрешено исключительно при условии цититирования. |