Hardware - разное

         

Процессорный модуль


Одним из базовых элементов системы является процессорный модуль (ЦП).

В ЦП, построенном на принципах быстрого проявления неисправностей, имеются

два порта ServerNet, обеспечивающие его соединение через системную сеть

с другими ЦП и устройствами в/в. Для реализации механизмов разделяемой

общей памяти несколько ЦП могут объединяться друг с другом с помощью шины

когерентности.

В состав ЦП входят два микропроцессора, каждый из которых имеет независимый

вторичный кэш. Каждый микропроцессор подсоединяется к шине памяти с помощью

СБИС процессорного интерфейса. При выполнении обращений к памяти эти СБИС

сравнивают выходы микропроцессоров для обнаружения всех возможных ошибок

микропроцессора и кэша. Память ЦП защищена кодом ECC, который обеспечивает

коррекцию всех одиночных ошибок и обнаружение любых ошибок в отдельных

микросхемах ДЗУПВ или адресных линиях. Массив микросхем памяти соединяется

с шиной памяти ЦП через пару СБИС контроллеров памяти. СБИС при обращениях

к памяти взаимно проверяют выходы друг друга.

Как уже было отмечено, ЦП могут иметь прямой доступ к памяти других

ЦП с помощью дополнительной шины когерентности. Шина обеспечивает аппаратную

поддержку стандартных приложений UNIX или Windows NT, которые используют

симметричную мультипроцессорную обработку (SMP). Каждый ЦП подсоединяется

к шине с помощью пары самоконтролирующихся СБИС интерфейса когерентности.



СБИС обеспечивают кэш-когерентный доступ к общей памяти, используя дублированную

память тегов и стандартный протокол аннулирования блоков кэш-памяти. Они

обеспечивают когерентность кэш-памяти при выполнении обращений к памяти

со стороны В/В. Все передачи данных по шине когерентности защищены кодом

ECC. Проверка синдрома ECC для данных, пересылаемых по шине, и сравнение

выходов СБИС позволяют обнаруживать сбои шины или СБИС интерфейса.

Операционная система, поддерживающая модель системы без разделения ресурсов

(подобная NonStop Kernel), для увеличения степени изоляции ошибок может

запретить работу с шиной когерентности. В этом режиме когерентность кэш-памяти

для всех транзакций с памятью по сети ServerNet обеспечивается средствами

системного программного обеспечения. Если же работа шины когерентности

разрешена, то ошибка в одном ЦП может привести к отказу всех ЦП, подсоединенных

к этой шине.

СБИС процессорного интерфейса ЦП реализуют два порта ServerNet. Линии

приема данных обоих портов ServerNet подсоединяются к обеим СБИС процессорного

интерфейса. Каждая СБИС формирует данные для передачи по обоим портам ServerNet,

но реально данные передаются только из одного порта. Вторая СБИС принимает

данные, передаваемые другой СБИС, сравнивает полученное значение со значением,

которое она сформировала сама, и сигнализирует об ошибке при любом рассогласовании

данных.



Процессоры


Известно, что производительность любого процессора зависит от трех параметров: такта (или частоты) синхронизации, среднего количества тактов на команду и количества выполняемых команд. Таким образом, помимо тактовой частоты на производительность оказывают существенное влияние система команд и внутренняя организация процессора. Практически все поставщики компьютерной техники проводят испытания своих изделий для определения правильности выбранных архитектурных решений. Например, в таблице 2 представлены некоторые результаты измерений, полученные при прогоне теста TPC-C, построенного на базе коммерческой СУБД, на системе RISC System/6000 Model 590 (процессор POWER2) компании IBM. В таблице приняты следующие обозначения: FXU-блок обработки команд с фиксированной точкой, ICU блок обработки команд управления, FPU блок обработки команд с плавающей точкой.

Процент команд FXU77.3%
Процент команд ICU22.5%
Процент команд FPU0.2%
Процент команд FXU, выполняемых в FXU067%
Процент команд FXU, выполняемых в FXU133%
Среднее количество тактов на команду (CPI)1.53
Процент команд перехода, выполняемых в ICU93%
Процент команд условного перехода35%
Процент команд условного перехода, когда условие перехода выполняется57%
Процент команд перехода по счетчику2%
Средний размер базового блока в командах4.8
Коэффициент промахов в I-кэше (на команду)2.1%
Коэффициент промахов в D-кэше (на команду)0.8%

Таблица 2.

Анализ этих результатов может привести к лучшему пониманию характеристик ЦП на тестах TCP-C, которые, в свою очередь, с осторожностью можно было бы обобщить на более широкую область приложений баз данных, которую представляет данный тест.

Эти результаты показывают, что в тесте TPC-C доминируют команды FXU(операции манипуляции с целыми числами и операции вычисления адресов),довольно интенсивно используются команды перехода (ICU), а команды плавающей точки (FPU) практически не используются. Такие результаты следовало ожидать, поскольку общеизвестно, что в программном коде СУБД для преобразования адресов, необходимого при обработке указателей, интенсивно используется целочисленная арифметика.
Заметим, что в архитектуре POWER2 предусмотрено два целочисленных устройства. Второй FXU обрабатывает примерно треть целочисленных операций (при этом примерно половину времени, когда занят первый FXU, второй FPU также занят). Такая организация процессора дает почти 50% увеличение пропускной способности целочисленного кода по сравнению с процессором POWER(предыдущая версия архитектуры), в котором было всего один FPU, хотя исполняемый код СУБД не перекомпилировался. Таким образом, наличие в POWER2 двух целочисленных устройств существенно сокращает среднее количество тактов на выполнение одной команды (CPI) на рабочей нагрузке.

Почти все операции ICU представляют собой операции перехода, причем примерно треть из них составляют операции условного перехода. Почти равное соотношение выполняемых и невыполняемых условных переходов, а также небольшое число команд перехода по значению счетчика правильно отражают реализацию операторов перехода if-then-else, которые, как и следовало ожидать, доминируют в этой рабочей нагрузке. Средний размер базового блока (последовательности команд, выполняемых между двумя выполняемыми переходами) очень небольшой. Таким образом, данная рабочая нагрузка существенно отличается от нагрузки, реализующей алгоритмы из области научно-технических приложений с интенсивными вычислениями, которая связана с многократным повторением итераций циклов, включающих достаточно длинные последовательности программного кода, и дает значительно большее количество выполняемых переходов, больший процент команд перехода по значению счетчика и больший размер базового блока.

Коэффициент промахов кэша команд (I-кэша) размером 32 Kбайт довольно низок, хотя и выше, чем коэффициент промахов для многих других рабочих нагрузок. Коэффициент промахов существенно сокращается благодаря большому размеру строки I-кэша (128 байт) и локальности кода. Наличие достаточно большого кэша данных (D-кэша) емкостью 256 Кбайт объясняет наблюдающийся низкий коэффициент промахов по данным.

Таким образом, результаты подобных испытаний позволяют разработчикам процессоров оценить эффективность функциональной организации ЦП.


В современных суперскалярных процессорах Intel и RISC-процессорах (Ultra SPARC, PA-8000,MIPS R10000, PowerPC 604/620 и DEC Alpha) практически повсеместно используются параллельно работающие блоки целочисленной арифметики, предусмотрены развитые средства прогнозирования направления переходов и большие по объему кэши команд и данных. Сегодня производительность этих процессоров находится на одном уровне с производительностью самых быстрых мэйнфреймов. Тактовая частота RISC-процессоров достигла 500 МГц, а общая производительность на стандартных оценочных тестах сравнима (рис. 1).

В настоящее время стандартным средством увеличения производительности системы является симметричная мультипроцессорная обработка (SMP), предполагающая использование многими процессорами одной общей памяти и одной операционной системы, которая управляет всеми процессорами и аппаратными средствами. В современных системах SMP наиболее актуальным вопросом является создание высокопроизводительной подсистемы памяти для обеспечения высокоскоростных процессоров данными и командами. Общее решение этой проблемы заключается в использовании большой высокоскоростной кэш-памяти, т. е. создании иерархии памяти между процессорами и разделяемой общей памятью, а также общесистемной шины с высокой пропускной способностью.

В общем случае потребление процессорных ресурсов очень сильно варьируется в зависимости от используемого приложения, СУБД, особенностей отдельных пользователей и даже от времени дня. Например, результаты теста TPC-A 1994года показывали, что восьмипроцессорный SPARCserver 1000 компании Sun способен обрабатывать запросы от 4000 пользователей, или от 500 пользователей на процессор. (Эти результаты были получены на многопотоковом сервере OracleVersion 7, работающим в режиме клиент-сервер, причем в качестве фронтальной системы использовался монитор обработки транзакций Tuxedo/T.) Следует отметить, что такие высокие показатели были достигнуты специалистами компаний Sun и Oracle путем очень тщательной настройки ОС Solaris, СУБД Oracle и самого оценочного теста.


Возможности этих специалистов по настройке системы, очевидно, значительно превосходят возможности большинства пользователей. Более реалистическая верхняя граница числа пользователей на процессор, возможно, составляет порядка 100-200 пользователей на один процессор SuperSPARC 50 МГц, даже для легких транзакций типа TPC-A. Более крупные приложения, естественно, приводят к меньшему числу пользователей на процессор (соответствующие результаты представлены в таблице 3).

Тип приложенияКоличество процессоров 50 МГц SuperSPARC
124816
TP-мониторКлиент/сервер200-300350-500550-850800+1000+
ЛегковесноеКлиент/сервер 150-200250-350450-550725+800+
многопотоковоеРазделение времени50-8085-135150-225200-300250-300
Тяжеловесное Клиент/сервер50-10085-170150-250200-350350-600
многопотоковоеРазделение времени20-6035-10060-175100-300150-250
Тяжеловесное 2NКлиент/сервер40-7570-125120-220200-600300-750
Разделение времени15-4025-7045-12075-200110-230
Таблица 3.
Примерное число поддерживаемых пользователей на ЦП.

Следует отметить, что процессор Super-SPARC 50 МГц уже снят с производства, и нынешнее поколение процессоров Sun, в частности, UltraSPARC II 250 МГц, имеет почти на порядок большую производительность. Тем не менее результаты таблицы 3 весьма поучительны. Например, они показывают, что ни операционная система Solaris 2, ни СУБД не масштабируются линейно (то же самое происходит и с конкурирующими операционными системами), хотя со временем по мере дальнейшей настройки ОС и СУБД имеется определенный прогресс в этом направлении.


Программная модель


Принята следующая модель работы PARIX-приложения.

При запуске на каждом узле стартует одна и та же программа

затем она определяет свое положение в решетке раздела и

организует обмен данными с другими своими копиями

На каждом узле имеется набор глобальных данных (доступных программе), которые определяют положение узла в разделе. Именно

количество процессоров в разделе

идентификатор данного процессора

размеры решетки раздела

положение данного процессора в решетке (координаты)

Обмен данных основан на концепции виртуальных связей между процессорами, которые образуют каналы ``точка-точка'' между любыми процессорами. Набор созданных виртуальных связей задает виртуальную топологию (решетка, конвейер, дерево, гиперкуб).

В PARIX связи могут быть одного из следующих трех видов:

Синхронный канал. Это естественный для архитектуры Parsytec CC тип коммуникационного канала. Процессы, связанные синхронным каналом, синхронизуются при обмене данных: если одна сторона еще не готова к обмену данными, то другая будет ждать готовности. Следующие системные вызовы относятся к синхронным каналам: Send, Recv, Select, SendLink, RecvLink.

Синхронная ``случайная'' передача. Это единственный способ передачи данных, при котором не требуется создавать коммуникационный канал. Данные передаются по системным каналам. Однако, при большом размере сообщения библиотечные вызовы автоматически создают виртуальный канал, с целью повышения скорости обмена. Для сообщений данного типа PARIX предоставляет системные вызовы SendNode и ReceiveNode.

Асинхронный канал. Такой канал может осуществлять обмен данными не прерывая вычислений на узле. Поэтому канал такого типа улучшает кпд процессора. Прием/передача выполняются с буферизацией как на стороне передатчика, так и на стороне приемника. Следующие системные вызовы обслуживают асинхронные каналы: AInit, ASend, ARecv, ASync, AInfo, AExit



ПРОГРАММНО КОНВЕЙЕРИЗОВАННЫЕ ЦИКЛЫ


Cовременные оптимизирующие компиляторы суперскалярных RISC-процессоров активно используют технику SWP ([4]). Аппаратная поддержка SWP в IA-64 имеет принципиальное значение для увеличения производительности и эффективности использования оперативной памяти.

SWP-циклы аналогичны обычным аппаратным конвейерам. В таком цикле также имеется три фазы. В фазе заполнения конвейера (пролог) новая итерация цикла запускается на выполнение на каждой стадии. В фазе ядра на каждой стадии запускается одна итерация, и одна итерация завершается (конвейер заполнен). В фазе эпилога новых итераций не запускается, а завершается выполнение ранее запущенных итераций (см. Пример 3).

Пример 3.

Фрагмент программы в фортрановском представлении: DO I=1,N IND(I)=JND(I)+K ENDDO

в ассемблерном: Lbl:ld8 r8=[r5],8;; //Загрузка JND(I) add r9=r8,r7;; //r9=r8+r7 st8 [r6]=r9,8 //Запись IND(I) br.cloop Lbl;; //Переход по счетчику SWP-аналог: mov lc=99 //Установка LC mov ec=4 //Установка EC mov pr.rot=1<<16 //Установка PR Lbl: (p16) ld8 r32=[r5],8;; //Загрузка JND(I) (p18) add r35=r34,r7;; //r35=r34+r7 (p19) st8 [r6]=r36,8 //Запись IND(I) br.ctop Lbl;;

Число тактов T между запуском последовательных итераций цикла называется интервалом инициации. Мы рассмотрим только случай постоянного числа тактов. В простейшем случае T равно 1, очередная итерация цикла может запускаться на каждом такте.

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

Пример 4.

Фрагмент программы в фортрановском представлении: DO I=1,N S=S+A(I)*B(I) ENDDO

SWP-аналог: Lbl: (p16) ldfd f50=[r5],8 //Загрузка A(I) (p16) ldfd f60=[r6],8 //Загрузка B(I) (p25) fma f41=f59,f69,f46 //f41=f59*f69+f46 br.ctop.sptk Lbl;; fadd f7=f42,f43 //Частичная сумма 1 fadd f8=f44,f45;; //Частичная сумма 2 fadd f9=f7,f8;; //Их сумма fadd f10=f9,f46 //Окончательная сумма


SWP поддерживается как для исходных циклов со счетчиком, использующих команду br.cloop, так и для циклов while. Для циклов со счетчиком на первой стадии цикла должен применяться PR16, а для циклов while - любой PR-регистр из области вращения. Предикаты последующих стадий должны иметь более высокие номера PR. Инициализация предикативных стадий возложена на программиста.

Как мы увидим, применение PR-регистров, вращаемых регистров GR и FR и специальных SWP-команд перехода позволяет не увеличивать размер кода SWP-цикла, что характерно для оптимизации циклов в RISC-процессорах. Вращение на одну регистрную позицию вышеупомянутых регистров осуществляется аппаратно при выполнении SWP-команды перехода (br.ctop - для циклов со счетчиком при расположении команды перехода в конце тела цикла).

Таблица 2. Прокрутка SWP-цикла (Пример 3(в)) по тактам

Номер такта Команды и порты Значения регистров перед br.ctop
M I M B p16 p17 p18 p19 LC EC
1 ld8     br.ctop 1 0 0 0 99 4
2 ld8     br.ctop 1 1 0 0 98 4
3 ld8 add   br.ctop 1 1 1 0 97 4
4 ld8 add st8 br.ctop 1 1 1 1 96 4
... ... ... ... ... ... ... ... ... ... ...
99 ld8 add st8 br.ctop 1 1 1 1 0 4
100   add st8 br.ctop 0 1 1 1 0 3
101   add st8 br.ctop 0 0 1 1 0 2
102     st8 br.ctop 0 0 0 1 0 1
...         0 0 0 0 0 0
При выполнении такой команды вращение регистров осуществляется путем их переименования благодаря уменьшению на 1 базовых значений в CFM - соответственно полей CFM.rrb.gr, CFM.rrb.fr и CFM.rrb.pr. Вообще изменение полей rrb, приводящее к переименованию регистров, происходит при выполнении команд очистки rrb (clrrrb, clrrrb.pr) и переходов типа вызова процедур/возврата (br.call/br.ret) и SWP-переходов, в том числе br.ctop. Файлы вращаемых регистров с точки зрения их переименования зациклены: регистр с максимальным номером после вращения переходит в регистр с минимальным номером из области вращения.


Так, PR63 после вращения становится PR16.

Рассмотрим теперь, как организовывается работа SWP-цикла со счетчиком. При этом используется регистр LC, в который помещается значение N-1 (N - число итераций цикла), и регистр ЕС, куда надо поместить число стадий в теле цикла. Пока LC больше 0, br.ctop продолжает выполнение цикла, уменьшая LC на 1 и вращая регистры на 1 путем уменьшения rrb. Команда br.ctop, принявшая решение о продолжении цикла, устанавливает в 1 регистр PR63, который после вращения становится PR16.

Когда LC становится равным 0, начинается фаза эпилога. В ней br.ctop будет продолжать цикл, уменьшая EC на 1 - до тех пор, пока EC не обнулится. Тогда br.ctop завершит цикл, передав управление на следующую команду.

Проиллюстрируем сказанное выше на конкретном примере SWP-цикла (в примере 3 мы незначительно модернизировали соответствующий пример из [1]).

Предположим, что все целые величины - 64-разрядные.

Предполагается, что в регистре GR5 лежит адрес начала массива IND, а в GR6 - адрес начала JND; K загружена в GR7. Первая команда ld8 загружает 8 байт из адреса, указанного в GR5, в GR8. В конце ее выполнения к GR5 прибавляется 8. Команда add складывает GR8 и GR7, помещая результат в GR9. Команда st8 записывает содержимое этого регистра в память, адрес которой находится в GR6, и в конце выполнения увеличивает его на 8.

В [1] соответствующий пример относится к 32-разрядным целым и предполагается, что команда ld4 занимает два такта. Это типично для микропроцессоров, и мы предполагаем, что ld8 также занимает два такта. Можно предположить, что в теле цикла (без br.cloop) остальные команды занимают один такт, тогда это тело состоит из четырех стадий, вторая из которых - пустая (ожидание завершения ld8 на втором такте).

Вследствие наличия большого числа ФИУ и соответствующих портов, команды цикла, представленные в примере 3, могли бы в принципе выполняться одновременно, если бы они работали с разными регистрами (т.е. не было бы взаимозависимости). Это хорошо видно из табл. 2, в которой нетрудно разглядеть аналогии с заполнением аппаратных конвейеров.



На тактах 1-3 происходит заполнение конвейера (пролог), такты 4-5 относятся к фазе ядра, такты 6- 8 отвечают эпилогу. Если бы не было взаимозависимости, команды ld8, add и st8 могли бы работать параллельно в фазе ядра (предполагается, что имеется два порта памяти). Скажем, когда add начинает работу, ld8 могла бы начать новую загрузку, но уже в другой GR-регистр. В суперскалярных RISC-процессорах для достижения подобных целей приходится создавать отдельные коды для пролога и эпилога, раскручивать циклы, что приводит к увеличению длины кода.

В IA-64 эти проблемы решены элегантно и эффективно. Нет необходимости вручную заниматься переименованием регистров, чтобы избавиться от взаимозависимости - для этого есть вращение регистров. Не нужно писать пролог и эпилог - все автоматизировано за счет применения PR-регистров и SWP-команд.

SWP-аналог примера 3 использует команду br.ctop. Соответственно первой стадии (команда ld8) выделяется PR16, второй (add) - PR18, четвертой (st8) - PR19. Вместо статических GR7-9 мы будем использовать вращаемые регистры, начиная с GR32. Перед началом выполнения цикла в LC загружается значение N-1 (99), а в EC - 4 (на 1 больше числа стадий эпилога). Кроме того, нужно установить вращаемые PR-регистры, что делается сразу для всех предикативных регистров командой mov pr.rot.

Вследствие вращения регистров величина JND(I), загружаемая в GR32, двумя тактами позднее (по завершению ld8) уже оказывается в GR34. Аналогично, IND(I)+K, помещаемая в GR35, по завершению команды add (один такт) окажется в GR36. Эти "измененные" номера регистров должны кодироваться в программе.

Приведем, наконец, завершающий пример - цикл, рассчитывающий скалярное произведение векторов [1]. В примере 4 адреса начал A и B лежат в GR5 и GR6; предполагается, что ldfd используют два порта памяти, а времена выполнения ldfd и fma составляют 9 и 5 тактов соответственно (в [1] предполагается 9 тактов на ldfs). В команде br.ctop.sptk последняя компонента мнемокода - статическая "подсказка": статическое предсказание, что переход будет осуществлен.



В цикле вычисляются пять частичных сумм: A(1)*B(1)+A(6)*B(6)+..., A(2)*B(2)+ A(7)*B(7)+..., ..., A(5)*B(5)+A(10)*B(10)+... , и все эти суммирования идут с шагом 5. В этом можно убедиться, если прокрутить вручную первые итерации цикла и учесть, что каждый раз при br.ctop происходит переименование регистров FR (как и PR). Поэтому A(I) попадает в f50 при ldfd, и девять итераций (девять тактов) спустя будет в f59, а B(I) из f60 окажется в f69, и т.д.

В примере 4 опущено обнуление регистров частичных сумм и другие подобные "мелочи" (до начала цикла). По завершению цикла пять частичных сумм складываются, и результирующая сумма S оказывается в f10. Если проанализировать этот исходно простой пример, отследив, почему используются те или иные номера регистров, то станет ясно, что SWP-оптимизация требует от программиста большой тщательности и знания времен выполнения команд. Более того, такая привязка означает, что если в процессорах IA-64 нового поколения изменятся времена выполнения команд (например, при переходе от Merced к McKinley), то оптимизированную программу для достижения высокой производительности необходимо переделать. Однако компактность и эффективность оптимизированных кодов несомненны.

IA-64 в первом приближении

Некоторые приведенные в статье данные о времени выполнения команд (ldfd/ldfs, fma), основанные на примерах в [1], могут оказаться иными в конкретной реализации Itanium. Однако если предположить, что оценки эти окажутся близкими к реальности, становится понятным высказывавшееся мнение о том, что Itanium будет эффективно работать с векторизуемыми кодами. Действительно, в этом случае большие задержки команд типа ldfs или fma будут исключены благодаря использованию SWP.

В рамках одной журнальной статьи трудно дать полное введение в такую сложную архитектуру, как IA-64. Автор же постарался представить наиболее важные отличительные особенности IA-64.


Программное обеспечение


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

реализованные программно, распределенные отказоустойчивые системы, подобные

NonStop Kernel. Аппаратные средства позволяют создавать отказоустойчивые

SMP-конфигураций для ОС, подобных UNIX или NT. Системы могут поддерживать

также продукты типа Oracle Parallel Server, которые базируются на модели

разделяемых общих дисков. ServerNet позволяет создавать гибридные системы.

Например, одна система может работать под управлением Windows NT в качестве

фронтальной машины для базы данных Oracle Parallel Server. При этом системы

соединяются друг с другом посредством ServerNet. Поддержка большого числа

ОС требует сведения к минимуму усилий по портированию программ. При этом

для обеспечения отказоустойчивости не требуется никаких модификаций в ядре

ОС. Основная часть этого специфичного для соответствующей платформы кода

работает на сервисном процессоре, независимо от операционной системы основных

процессоров.

Специальный набор портируемых приложений обеспечивает средства управления

системой. Эти приложения отображают состояние аппаратуры, сообщают об ошибках,

предпринимают при необходимости автоматические шаги по восстановлению и

обеспечивают интерфейсы для удаленного управления системой, используя стандартные

протоколы.



Протокол MESI и функция вмешательства


В рамках архитектуры PowerScale используется протокол MESI, представляющий собой стандартный способ реализации вторичной когерентности кэш-памяти. Одной из основных задач протокола MESI является откладывание на максимально возможный срок операции обратной записи кэшированных данных в глобальную память системы. Это позволяет улучшить производительность системы за счет минимизации ненужного трафика данных между кэшами и основной памятью. Протокол MESI определяет четыре состояния, в которых может находиться каждая строка каждого кэша системы. Эта информация применяется для определения соответствующих последующих операций (рис. 4).

Рисунок 4.
Диаграмма переходов состояний протокола MESI.

Состояние строки "Единственная" (Exclusive). Данные этой строки достоверны в этом кэше и недостоверны в любом другом кэше. Данные не модифицированы по отношению к памяти.

Состояние строки "Разделяемая" (Shared). Данные этой строки достоверны в этом кэше, а также в одном или нескольких удаленных кэшах.

Состояние строки " Модифицированная " (Modified). Данные этой строки достоверны только в этом кэше и были модифицированы. Данные недостоверны в памяти.

Состояние строки " Недостоверная " (Invalid). Достоверные данные не были найдены в данном кэше.

Для поддержки мультипроцессорной организации были реализованы несколько примитивов адресной шины. Это позволяет одному главному устройству шины передавать, а другим устройствам обнаруживать появление этих примитивов на шине. Устройство . владелец кэша наблюдает за адресной шиной во время глобального запроса и сравнивает целевой адрес с адресами тегов в своем кэше L2. Если происходит попадание, то выполняемые действия определяются природой запроса.

Как уже было отмечено, одной из функций тегов L2 является уменьшение накладных расходов, связанных с ответами на запросы механизма наблюдения. Доступ к тегам L2 разделяется между процессорами и адресной шиной. ТегиL2 практически выполняют роль фильтров по отношению к активностям наблюдения.
Это позволяет процессорам продолжать обработку вместо того, чтобы отвечать на каждый запрос наблюдения. Хотя теги L2 представляют собой разделяемый между процессором и шиной ресурс, его захват настолько кратковременен, что практически не приводит ни к каким конфликтам.

Состояние строки кэш-памяти " Модифицированная " означает, что кэш, хранящий такие данные, несет ответственность за правильность этих данных перед системой в целом. Поскольку в основной памяти эти данные недостоверны, это означает, что владелец такого кэша должен каким-либо способом гарантировать, что никакой другой модуль системы не прочитает эти недостоверные данные. Обычно для описания такой ответственности используется термин " вмешательство "(intervention), которое представляет собой действие, выполняемое устройством-владельцем модифицированных кэшированных данных при обнаружении запроса наблюдения за этими данными. Вмешательство сигнализируется с помощью ответа состоянием " строка модифицирована " протокола MESI, за которым следуют данные, пересылаемые запросчику и, потенциально, в память.

Для увеличения пропускной способности системы в PowerScale реализованы два способа выполнения функции вмешательства.

Немедленная кроссировка (Cross Immediate), которая используется, когда канал данных источника и получателя свободен и можно пересылать данные через коммутатор на полной скорости. Поздняя кроссировка (Cross Late), когда ресурс (магистраль данных)занят, поэтому данные будут записываться в буфер коммутатора и позднее пересылаться запросчику.


Путешествуя с GPS+Palm+сотовый телефон или мобильное трио


Караванов Александр

Данная статья описывает работу группы мобильных устройств во время восхождения на г.Эльбрус. Автор не преследует никаких коммерческих интересов, а хочет поделиться впечатлениями о работе связки (GPS+Palm+сотовый телефон) устройств в реальных условиях. Это мнение автора и только его. Он не пытается что-либо навязать Вам, его цель - поделиться опытом.



Работаем на параллельном компьютере ParsytecCC/


М. П. Крутиков

Введение

1 Кирпичик

2 Архитектура и физическая конфигурация

3 Типы узлов

4 PARIX и AIX

5 Логическая конфигурация и разделы

6 Логические связи

7 Подумаем

8 Пользовательский интерфейс

9 Компиляторы

10 Выбор раздела

11 Запуск PARIX приложения

12 Освобождение раздела

13 Виртуальные процессоры

14 Программная модель

15 Пример программы на языке C

16 Пример программы на языке FORTRAN

17 Элементы параллельного программирования

Источники дополнительной информации



Распределение данных


Другим фактором, влияющим на конфигурацию подсистемы ввода-вывода, является предполагаемое распределение данных по дискам. Даже минимальная по объему система должна иметь по крайней мере четыре диска: один для операционной системы и области подкачки (swap), один для данных, один для журнала и один для индексов. В более крупных системах приходится учитывать и ряд дополнительных возможностей, например использование зеркальных дисков, механизмов расщепления и перекрытия ресурсов. Вообще говоря, наиболее продуктивными достаточно эффективным по стоимости способом распределения данных является обеспечение всех основных логических сущностей отдельным набором дисков.

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

Кроме того, выполнение запросов, выбирающих записи из таблицы данных путем последовательного сканирования индекса, будет связано с сильно увеличенным временем ожидания ввода-вывода. Обычно сканирование индекса выполняется последовательно, но в данном случае каретка диска должна перемещаться для поиска каждой записи данных между выборками индексов. В результате происходит произвольный доступ к индексу, который предполагался последовательным. Если таблица данных, индекс и журнал находятся на отдельных дисках, то произвольный доступ к диску осуществляется только при выборке данных из таблицы, и результирующая производительность увеличивается вдвое.

Наконец, следует отметить, что объединение разных функций на одних и тех же физических ресурсах приводит к резкому увеличению времени подвода головок на диске.
Хотя время позиционирования в спецификациях дисковых накопителей обычно приводится как одно число, в действительности длительность позиционирования сильно зависит от конкретного перемещения головок. Приводимое в спецификациях время позиционирования представляет собой сумму времен всех возможных позиционирований головок, деленное на количество возможных позиционирований. Это не то время, которое затрачивается при выполнении "типичного" позиционирования. Сама физика процесса перемещения дисковой каретки определяет, что позиционирование на короткое расстояние занимает гораздо меньше времени, чем на длинное. Позиционирование на смежный цилиндр занимает всего несколько миллисекунд, в то время как позиционирование на полный ход каретки длится значительно больше времени, чем приводимое в спецификациях среднее время позиционирования. Например, для диска 2,1Гбайт позиционирование головки на соседний цилиндр обычно занимает 1,7мс, но длится 23 мс для полного хода каретки (в 13 раз дольше). Поэтому длительное позиционирование головок, возникающее при последовательности обращений к двум разным частям диска, необходимо по возможности исключать.


Разбиение систем


Хотя многие приложения написаны для поддержки систем SMP, они хорошо масштабируются и в системах с архитектурой ccNUMA, таких как AV 25000, причем никаких изменений не требуется. Однако, если, например, приложение обслуживает очень большую монолитную базу данных, то можно добиться большей производительности, разбив ее на множество баз данных, работающих под управлением одной и той же операционной системы. Или, если какое-то приложение неэффективно работает с некоторой частью системы (например отмечается очень низкая производительность ввода-вывода), часть системных ресурсов может быть отведена только под это приложение. Все перечисленные операции производятся в рамках одного и того же легко управляемого образа системы. Для этого используется динамический оптимизатор рабочей нагрузки DG/UX Class Scheduling Facility (CSF), который отводит классы (или разделы) системы под приложения и относящиеся к ним ресурсы. Такое разбиение может быть как на уровне CPU, так и на уровне компоновочных блоков. В дополнение, классы могут быть использованы с целью ограничить работу некоторых приложений во время периодов максимальной активности. Динамический оптимизатор рабочей нагрузки CSF легко администрируется из графической оболочки DG/UX Manager, установленной на управляющей консоли M3W.



Реализация


"Идея монолита" встретила снисходительно-ироничное отношение со стороны руководства Texas Instruments, где потребовали доказательств того, что подобная схема будет работоспособна.

Чтобы представить необходимые доказательства, прежде всего следовало убедиться в том, что будет работать схема, составленная из отдельных кремниевых элементов - транзистора на p-n-переходе, резисторов, нарезанных из стерженьков, и конденсаторов из пластины, которая была металлизирована с обеих сторон. Собранный прибор был продемонстрирован руководству компании в конце августа 1958 года. К удивлению присутствующих, он оказался вполне сносно работающим. Но это еще не была интегральная структура, скорее это была миниатюризированная "квазигибридная" схема.

Первой же действительно интегральной схемой, выполненной "с нуля", в одном куске полупроводника, оказалась германиевая триггерная схема. Здесь уже были использованы и объемное сопротивление Ge, и емкость p-n-перехода. Ее презентация состоялась в начале 1959 года. Вскоре Робертом Нойсом из Fairchild Semiconductor были продемонстрированы преимущества планарного технологического процесса.

Как Килби, так и Нойсу пришлось выслушать немало критических замечаний по поводу своих новаций. Считалось, что практический выход интегральных схем будет очень низким, потому что всего 15% изготовляемых в то время транзисторов имели необходимый ресурс надежности. Во-вторых, многие полагали, что в интегральных схемах используются неподходящие материалы, поскольку лучшие электронные компоненты тогда делались отнюдь не из полупроводников.

Все сомнения были отброшены, когда интегральные схемы были успешно использованы в военных программах США, в программах подготовки полета космического корабля "Аполлон" на Луну и разработки ракеты "Минитмен". В 1964 году был создан первый портативный калькулятор на интегральных схемах. Началось их коммерческое использование, чем и было окончательно продемонстрировано их право на существование.



РЕГИСТРЫ


Рассмотрим теперь файлы регистров IA-64. В их число входят: 128 регистров общего назначения GR; 128 регистров с плавающей запятой FR; 64 регистра предикатов PR; 8 регистров перехода BR; 128 прикладных регистра AR; не менее 4 регистров идентификатора процессора CPUID; cчетчик команд IP, указывающий на адрес связки, содержащей исполняемую команду; регистр маркера текущего окна CFM, описывающий окно стека регистров и др.

Регистры CPUID являются 64-разрядными. В CPUID-регистрах 0 и 1 лежит информация о производителе, в регистре 2 находится серийный номер процессора, а в регистре 3 задается тип процессора (cемейство, модель, версия архитектуры и т.п.) и число CPUID-регистров. Разряды регистра 4 указывают на поддержку конкретных особенностей IA-64, т.е. тех, которые реализованы в данном процессоре.

Прикладные регистры AR0-AR127 - специализированные (в основном 64-разрядные) регистры, применяемые в IA-64 и IA-32. AR0-7 называются регистрами ядра; запись в них привилегирована, но они доступны на чтение в любом приложении и используются для передачи приложению сообщений от операционной системы.

Среди других прикладных регистров укажем на AR16 (RSC) - регистр конфигурации стека регистров, используемый для управления работой "машиной" стека регистров IA-64 (RSE); AR17 (BSP), в котором находится адрес в памяти, где сохраняется положение GR32 в текущем окне стека; AR40 (FPSR) - регистр состояния для команд с плавающей запятой IA-64; AR44 (ITC) - интервальный таймер; AR64 (PFS) - регистр предыдущего состояния функции, куда автоматически копируются некоторые другие регистры при вызове подпрограмм; AR65 (LC), используемый для организации циклов со счетчиком, и, наконец, 6-разрядный регистр эпилога AR66 (EC). Ряд AR-регистров является фактически регистрами IA-32 (дескриптор сегмента кодов, дескриптор сегмента стека и др.).

64-разрядные регистры GR0-127 применяются не только для целочисленных операций IA-64; GR8-31 в режиме IA-32 используются также под целочисленные регистры и регистры селекторов и дескрипторов сегментов IA-32.
GR0-31 называются статическими регистрами (GR0 всегда содержит 0), а GR32-127 - стекируемыми регистрами. Статические регистры "видны" всем программам. Стекируемые регистры становятся доступными в программной единице через окно стека регистров, включающее локальные и выходные регистры, число которых задается командой alloc.

82-разрядные регистры с плавающей запятой FR0-127 также подразделяются на статические (FR0-31, причем всегда FR0=0.0, FR1=1.0) и вращаемые (FR32-127). FR8-31 в режиме IA-32 содержат числа с плавающей запятой и мультимедийные регистры.

Вращение регистров является в некотором роде частным случаем переименования регистров, применяемого во многих современных суперскалярных процессоров с внеочередным спекулятивным выполнением команд. В отличие от них, вращение регистров в IA-64 управляется программно. К обсуждению вращения регистров мы вернемся ниже, а содержимое FR будет рассмотрено в разделе, посвященном операциям с плавающей запятой.

64-разрядные регистры переходов BR0-7 применяются для указания адреса перехода в соответствующих командах перехода (если адрес перехода не кодируется в команде явно). Регистры предикатов PR0-63 являются одноразрядными; в них помещаются результаты команд сравнения. Обычно эти команды устанавливают сразу два геистра PR в зависимости от условия - соответственно истинность условия и его отрицания. Такая избыточность обеспечивает дополнительную гибкость.

В отечественном микропроцессоре E2K [3] предикатных регистров в два раза меньше. Хотя это позволяет хранить столько же условий, сколько в IA-64, в последней предикатные регистры применяются еще и для организации программно конвейеризованных циклов (Software Pipelining - SWP). Использование предикатных регистров - важнейшая особенность, кардинально отличающая IA-64 от всех других микропроцессоров, кроме E2K.

PR0-15 являются статическими (PR0 всегда равен 1), а PR16-63 - вращаемыми. Статические предикатные регистры используются в командах условного перехода. Кроме того, почти все команды IA-64 могут быть выполнены "под предикатом".



Работа стека регистров

Файл регистров GR отличается от FR и PR тем, что последние содержат фиксированные подмножества статических и вращаемых регистров, в то время как в файле GR вне подмножества статических регистров применяется стек регистров, и программной единице доступна лишь его часть - окно стека регистров. В отличие от статических регистров, стекируемое подмножество локально для любой программной единицы и может иметь размер от 0 до 96 регистров, начиная с GR32.

Использование этого механизма в IA-64 позволяет, как мы увидим, избежать накладных расходов, связанных с сохранением/восстановлением большого числа регистров при вызовах подпрограмм и возвратах из них (однако статические регистры при необходимости все-таки приходится сохранять и восстанавливать, явно кодируя соответствующие команды). Автоматическое сохранение/восстановление стекируемого подмножества регистров осуществляет RSE, и в программе об этом заботиться не надо. В режиме IA-32 работа с этим стеком регистров, естественно, отключается.

Мы до сих пор не рассматривали один из важнейших регистров IA-64 - 38-разрядный регистр CFM, в котором как раз сохраняется состояние "текущего" окна стека регистров. Как и другие маркеры окна, CFM содержит общий размер окна стека, число локальных регистров и (кратное 8) число вращаемых регистров в окне, а также 3 значения базы для переименования регистров - соответственно rrb.gr, rrb.fr и rrb.pr.

Итак, окно стека имеет две области переменного размера - локальную и выходную. Рассмотрим вызов процедур подробнее. При переходе типа "вызов процедуры" CFM вызывающей подпрограммы сохраняется в поле PFM (Previous Frame Marker) регистра PFS, и создается CFM вызываемой подпрограммы. Сразу после вызова размер локальной области вызываемой подпрограммы равен размеру выходной области вызывающей и перекрывается с ней. При этом стекируемые регистры автоматически переименовываются таким образом, что первый регистр выходной области вызывающей подпрограммы становится регистром GR32 вызываемой (рис.2, где procA - это вызывающая, а procB - вызываемая подпрограмма).


Перекрытие их выходных областей позволяет эффективно передавать параметры через регистры.



Рис. 2. Стек регистров при вызове procB из procA

Как мы уже указывали, вызываемая подпрограмма может изменить размеры своих локальной и выходной областей командой alloc; cоответствующим образом будут изменены и поля в CFM. Команда alloc обычно используется вызываемой подпрограммой для того, чтобы распределить себе определенное число локальных регистров и заиметь выходную область для передачи параметров уже собственному "потомку". Если запрошенное в команде alloc количество регистров оказывается недоступным (переполнение стека), alloc приостанавливает процессор и RSE будет сохранять регистры вызывающей подпрограммы, пока запрошенное alloc число регистров не будет доступным.

При переходе типа "возврат из процедуры" CFM восстанавливается из PFM, а обратное переименование регистров восстанавливает состояние вызывающей подпрограммы. Если некоторые ее регистры были ранее "сброшены" RSE, то при возврате RSE приостановит процессор до тех пор, пока не будут восстановлены эти регистры.


Семейство UNIX-серверов Escala


На российском рынке активно продвигаются UNIX-серверы семейства Escala. многопроцессорные системы с архитектурой PowerScale, построенные на базе микропроцессора PowerPC 601. Они предназначаются для работы в качестве нескольких типов серверов приложений: сервера транзакций (Transaction Server)при использовании мониторов обработки транзакций подобных Tuxedo, сервера базы данных (Database Server) на основе систем Oracle или Informix, а также управляющего сервера (System Management Server), обеспечивающего управление инфраструктурой предприятия и существенно упрощающего администрирование гетерогенными системами и сетями. Серверы Escala двоично совместимы с системами Bull DPX/20, а их архитектура разработана с учетом возможности применения процессоров PowerPC 604 и 620.

Основные характеристики серверов Escala в зависимости от применяемого конструктива приведены в таблице 1. Системы семейства Escala обеспечивают подключение следующих коммуникационных адаптеров: 8-, 16- и 128-входовыхадаптеров асинхронных последовательных портов, 1- или 4-входовых адаптеров портов 2 Мбит/с X.25, а также адаптеров Token Ring, Ethernet и FDDI.

Модель EscalaM101M201D201D401R201
.Mini-Tower.Deskside.Rack-Mounted
ЦП
Тип процессора Тактовая частота (МГц)
Число процессоров
Размер кэша второго уровня (Кбайт)
PowerPC 601 75
1/4
512
. 75
2/4
512
. 75
2/8
1024
. 75
4/8
1024
. 75
2/8
1024
ПАМЯТЬ Стандартный объем (Мбайт)
Максимальный объем (Мбайт)
. 32
512
. 64
512
. 64
2048
. 64
2048
. 64
2048
ВВОД/ВЫВОД Тип шины
Пропускная способность (Мбайт/с)
Количество слотов
Количество посадочных мест:3.5"
5.25"Емкость внутренней дисковой памяти (Гбайт)
Емкость внешней дисковой памяти (Гбайт)
Количество сетевых адаптеров
. МСА
160
6
..4
2.1/18
738
1/4
. МСА
160
6
..4
2.1/18
738
1/4
. МСА
160
15
..7
3.2/36
1899
1/12
. МСА
2х160
15
..7
3.4/99
1899
1/12
. МСА
2х160
16
..7
3.-
2569
1/13
ПРОИЗВОДИТЕЛЬНОСТЬ SPECint92
SPECfp92
SPECrate_int92
SPECrate_fp92
Tpm-C
(число процессоров 2/4) 77
84
3600/6789
3900/7520
750/1350
. 77
84
3600/6789
3900/7520
750/1350
. 77
84
3600/6789
3900/7520
750/1350
. 77
84
-/6789
-/7520
750/1350
. 77
84
3600/6789
3900/7520
750/1350

Таблица 1.



Серверы баз данных: проблемы оценки конфигурации системы


В.З. Шнитман1. Краткий экскурс в историю2. Основы конфигурирования серверов баз данных2.1. Характеристики рабочей нагрузки(тесты TPC)2.2. Выбор конфигурации сервера СУБД2.3. Выбор вычислительной модели2.4. Мониторы обработки транзакций3. Характеристики основных подсистем серверов баз данных3.1. Процессоры3.2. Подсистема основной памяти3.3. Дисковые подсистемы ввода-вывода3.3.1. Соотношение запрос/индекс/диск3.3.2. Емкость и пропускная способность дисковой памяти3.3.3. Файловые системы по сравнению с " чистыми " (неструктурированными) дисками3.3.4. Метаданные СУБД3.3.5. Распределение данных3.3.6. Уровень загрузки ресурсов ввода-вывода3.4. Сетевая подсистема ввода-вывода3.5. PrestoServe/NVSIMM3.6. Обеспечение резервного копированияЗаключениеЛитература



Сеть ServerNet


ServerNet - быстрая, масштабируемая, надежная системная сеть, обеспечивающая

гибкость соединения большого числа ЦП и периферийных устройств в/в между

собой. Главными свойствами этой сети коммутации пакетов являются малая

задержка и высокая надежность передачи данных. Для уменьшения задержки

в сети применяется метод червячной маршрутизации, не требующий приема всего

пакета до его отсылки к следующему приемнику. Физический уровень ServerNet

образуют независимые каналы приема и передачи, каждый из которых имеет

9-битовое поле команд/данных и сигнал синхронизации. Поле команд/данных

обеспечивает кодирование 256 символов данных и до 20 символов команд. Символы

команд используются для управления уровнем звена, инициализации и сигнализации

об ошибках. Кодирование в одних и тех же линиях команд и данных сокращает

количество контактов и упрощает обнаружение ошибок в логике управления.

Система использует ServerNet для организации связей ЦП-ЦП, ЦП-В/В и

В/В-В/В. Пересылки между микропроцессором и памятью для каждого узла ЦП

остаются локальными.

Данные в сети ServerNet пересылаются со скоростью 50 Мбайт/с. Сегодня

максимальная длина линии связи ServerNet ограничена 30 м. В будущих адаптерах

предполагается увеличение расстояния между узлами ServerNet с помощью последовательных

оптоволоконных линий связи. Предполагается, что этот переход будет относительно

простым, поскольку все функции управления применяют одни и те же линии

команд/данных.

Пакеты ServerNet состоят из 8-байтного заголовка, дополнительного 4-байтного

адреса, поля данных переменного размера и поля контрольной суммы. Заголовок

определяет идентификаторы источника и приемника, объем передаваемых данных

и необходимую для выполнения операцию. 4-байтное адресное поле обеспечивает

4-гигабайтное окно в адресном пространстве узла назначения. В устройствах

в/в какие-либо механизмы преобразования адресов отсутствуют. ЦП преобразуют

адрес из пакета в адрес физической памяти с помощью таблицы удостоверения


и преобразования адреса (AVT - Address Validation and Translation Table).

AVT проверяет допустимость удаленных обращений к локальной памяти узла.

Каждый элемент таблицы обеспечивает доступ по чтению и/или записи одного

узла ЦП или узла в/в к данным внутри 4-килобайтного диапазона адресов локальной

памяти. С помощью нескольких элементов таблицы AVT узел ЦП может иметь

доступ к большим сегментам своей памяти или обеспечивать несколько узлов

доступом к одному и тому же сегменту. Неисправный узел может испортить

только те сегменты памяти, к которым ЦП предоставил ему доступ. AVT выполняет

также преобразование смежных адресов памяти в несмежные адреса страниц

физической памяти.

Все транзакции по сети ServerNet происходят в два этапа: выполнение

запроса и ожидание соответствующего ответа, который должен вернуться до

истечения заданного интервала времени. Все узлы поддерживают возможность

выдачи несколько исходящих запросов в другие узлы. Помимо стандартных действий

в соответствии с протоколом уровня передачи пакетов получатель определенной

транзакции может по своему усмотрению выполнить некоторые локальные действия.

Например, существующие сейчас узлы ЦП или В/В преобразуют транзакции записи

по определенным адресам в локальные прерывания.

В СБИС маршрутизатора ServerNet реализован матричный переключатель размерностью

6х6. Решение о направлении маршрутизации принимается на основе анализа

идентификатора приемника из заголовка пакета. В состав маршрутизаторов

входят входные буфера FIFO, логика арбитража и управления потоком данных,

реализованная с помощью ЗУПВ таблица маршрутизации и матричный переключатель

(см. рис. 4). Инициализация и реконфигурация сети выполняются программными

средствами путем загрузки соответствующих таблиц маршрутизации.



Рисунок 4.

СБИС 6-портового маршрутизатора ServerNet


Сетевая подсистема ввода-вывода


Если СУБД работает в режиме клиент-сервер, то сеть или сети, соединяющие клиентов с сервером, должны быть адекватно оборудованы. К счастью, большинство клиентов работают с вполне определенными фрагментами данных: индивидуальными счетами, единицами хранящихся на складе изделий, историей индивидуальных счетов и т. п. В этих условиях скорость сети, соединяющей клиентов и серверы, редко оказывается ограничивающим фактором. Отдельной сети Ethernet или Token Ring обычно достаточно для обслуживания 100-200 клиентов. Однако по очевидным причинам стоит более внимательно наблюдать за загрузкой сети, особенно когда число клиентов превышает примерно 20 на один сегмент Ethernet. Сети Token Ring могут поддерживать несколько большую нагрузку, чем сети Ethernet, благодаря своей устойчивости к деградации под нагрузкой. Но даже если с пропускной способностью сети не возникает никаких вопросов, проблемы задержки часто приводят к тому, что более удобной и полезной оказывается установка отдельной, выделенной сети между фронтальной системой и сервером СУБД.

Однако в ряде случаев возможностей сетей Ethernet или Token Ring может оказаться недостаточно. Чаще всего это случается, когда данные хранятся в базе в виде очень больших массивов. Например, в медицинских базах данных часто хранятся образы рентгеновских снимков, поскольку они могут быть легко объединены с другими данными истории болезни пациента; эти образы рентгеновских снимков часто бывают размером в 3-5 Мбайт. Другими примерами приложений с интенсивным использованием данных являются системы хранения/выборки документов, САПР в области механики и системы мультимедиа. В этих случаях наиболее подходящей сетевой средой является FDDI, хотя в сравнительно ближайшем будущем она, может быть, будет заменена на ATM или Ethernet 100 Мбит.

Для систем, требующих большей пропускной способности сети, чем обеспечивают Ethernet или Token Ring, по существу до конца 1994 года FDDI была единственным выбором. Хотя концентраторы FDDI имеют значительно большую стоимость по сравнению с хабами Ethernet, установка выделенной сети между фронтальной системой и сервером СУБД оказывается достаточно простой и недорогой.
Как определено в стандарте FDDI, минимальная сеть FDDI состоит только из двух систем, соединенных между собой с помощью единственного кабеля. Никаких концентраторов не требуется.

В последнее время резко увеличилось число приложений, в которых фронтальные системы и серверы СУБД могут или должны размещаться в географически разнесенных местах. Такие системы должны соединяться между собой с помощью глобальных сетей. Обычно средой передачи данных для таких сетей являются арендованные линии с синхронными последовательными интерфейсами. Эти линии обычно работают со скоростями 56-64 Кбит/с, 1,5-2,0 Мбит/с и 45 Мбит/с. Хотя скорость передачи данных в такой среде значительно ниже, чем обычные скорости локальных сетей, подобных Ethernet, природа последовательных линий такова, что они могут поддерживать очень высокий уровень загрузки. Линия T1 предлагает пропускную способность 1,544 Мбайт/с (2.048 Мбит/с за пределами США). По сравнению с 3,5 Мбит/с, обеспечиваемых Ethernet в обычном окружении, линия T1 предлагает пропускную способность, которая количественно практически не отличается от Ethernet. Дробные линии T3 часто доступны со скоростями 10-20 Мбит/с, очевидно соперничая с сетями Ethernet и Token Ring. В ряде случаев можно найти приложения, которые могут работать успешно в конфигурации клиент-сервер даже через сеть со скоростью 56 Кбит/с.

Для традиционных бизнес-приложений трафик конфигурации клиент-сервер обычно содержит сравнительно низкий объем данных, пересылаемых между фронтальной системой и сервером СУБД, и для них более низкая пропускная способность сети может оказаться достаточной. В большинстве случаев задержка сети не является большой проблемой, однако если глобальная сеть имеет особенно большую протяженность или если сама среда передачи данных имеет очень большую задержку (например спутниковые каналы связи), приложение должно быть протестировано для определения его чувствительности к задержкам пакетов.

Для сокращения трафика клиент-сервер до абсолютного минимума могут использоваться мониторы обработки транзакций.



Общей ошибкой пользователей является представление о том, что сетевой трафик, связанный с терминальными серверами, может перегрузить Ethernet. Это неправильно. Рассмотрим, например, 64-портовый сетевой терминальный сервер, который может управлять каждым портом, работающим со скоростью38400 бод, или 38400 символов в секунду. (В каждом байте данных содержится8 бит информации, но рейтинг бод включает биты старта и стопа.) Если каждый порт работает на полной скорости 38 400 бод, то всего за одну секунду посети будет пересылаться 2 457 600 байт данных (или примерно 1,9 Мбит, т.е. около 20% максимальной загрузки Ethernet) с главной системы в терминальный сервер для дальнейшего распределения. Конечно, имеются некоторые накладные расходы (дополнительные байты TCP/IP), связанные с этим уровнем трафика, но они составляют примерно 50 байт на пакет, т. е. примерно 4% для этого уровня трафика. Это сценарий наихудшего случая, например, когда на полной скорости работают 64 принтера. Типичный же уровень трафика намного ниже: один 2000-символьный экран может отображаться один раз в минуту. При этих условиях 64-портовый терминальный сервер обрабатывает примерно 35 байт в секунду на один порт или всего примерно 2 Кбайт/с.

Операции по вводу символов с клавиатуры терминала можно вообще не рассматривать, поскольку даже самая быстрая машинистка печатает только 20 символов в секунду(более типичный случай 1,0-1,5 символов в секунду). Даже если операции ввода обрабатываются в режиме cbreak, наибольшая нагрузка, которая будет генерироваться всеми пользователями, может составлять 1300 символов в секунду(по 20 символов в секунду на каждый порт при 64 портах). После учета максимальных накладных расходов TCP/IP это дает общий поток в 80 Кбайт/с. Типичные нагрузки(64 порта по 1,5 символа в секунду) будут составлять порядка 15 Кбайт/сс учетом накладных расходов.


Система обслуживания


Основные функции системы обслуживания включают инсталляцию системы,

формирование сообщений об ошибках, диагностику и управление средствами

контроля питающих напряжений и температурных режимов работы. Системой обслуживания

управляют два сервисных процессора (SP), которые размещаются в каждой стойке

и работают как специализированные контроллеры в/в ServerNet. SP, размещенные

в разных стойках, также связаны друг с другом посредством ServerNet.

Система обслуживания использует специальную систему независимых шин,

базирующихся на двух стандартных интерфейсах: SPI (Serial Peripheral Interconnect)

компании Motorola и система сканирования в стандарте IEEE 1149.1 JTAG.

SPI применяется в качестве недорогой последовательной шины в/в для связи

со всеми средствами контроля и управления состоянием окружающей среды.

Система обслуживания использует средства сканирования для управления, инициализации,

тестирования и отображения работы всех СБИС. Применяемое Tandem расширение

к стандарту IEEE 1149.1, обеспечивает доступ к регистрам СБИС. Средства

сканирования никак не затрагивают нормальную работу СБИС. Этот универсальный

механизм обеспечивает средство для инициализации СБИС, определения топологии

ServerNet и передачи сообщений об ошибках.



Sizing Up Parallel Architectures


(http://www.dbpd.com/9805feat.htm)

Greg Pfister, старший технический специалист компании IBM

E-mail: pfister@us.ibm.com

Три параллельных архитектуры

Архитектура SMP

Архитектуры NUMA

Кластерные архитектуры

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

В статье обсуждаются особенности трех наиболее распространенных в настоящее время параллельных архитектур: симметричных мультипроцессоров (SMP), кластеров и архитектуры ccNUMA (более часто называемая просто NUMA), акроним от "cache-coherent nonuniform memory architecture" (архитектура с неоднородным доступом к памяти и обеспечением когерентности кэшей). Основное внимание уделяется тому, как влияют характеристики архитектур на масштабируемость систем при решении задач OLTP и поддержки принятия решений, на доступность и управляемость систем.

Три параллельных архитектуры

За время существования компьютерной индустрии предлагались и появлялись на рынке сотни параллельных архитектур. Однако проверку временем выдержали только две из них: SMP и кластеры. Вероятно, эти архитектуры будут использоваться и в обозримом будущем.

Архитектура SMP появилась в начале 1970-х и быстро стала фактическим стандартом наиболее распространенных параллельных архитектур. Если компания, производящая компьютерное оборудование, поддерживает хотя бы какой-нибудь вид параллелизма, то с большой вероятностью используется SMP.

Кластеры, вероятно, стали использоваться даже раньше, чем SMP. Причиной возникновения кластерной архитектуры было то, что необходимую для пользователя работу было невозможно выполнить на одном компьютере или эта работа была настолько важна, чтобы приобрести дублирующее оборудование.
Много позже этот подход удостоился общепринятого названия (термин "кластер" был введен в обиход компанией Digital Equipment Corp. в середине 1980-х), и его стали поддерживать поставщики систем. Сегодня кластерная архитектура является козырной картой практически каждого поставщика компьютерных систем, ориентированных на применение ОС UNIX и/или Windows NT.

Архитектура NUMA была разработана в начале 1990-х. На сегодняшний день она поддерживается только несколькими поставщиками аппаратуры (например, Sequent Computers Inc., Data General Corp., Silicon Graphics Inc. и Hewlett-Packard) и систем баз данных (к моменту публикации статьи - Oracle и Informix). Сторонники NUMA утверждают, что эта архитектура позволяет решить все проблемы, свойственные другим параллельным архитектурам. Однако так было всегда: каждый, кто предлагал новую параллельную архитектуру, заявлял, что она решает все старые проблемы. Вместе с тем, имеются основания ожидать, что архитектура NUMA останется среди реально используемых. Несколько поставщиков аппаратуры демонстрируют намерения скоро начать поддерживать эту архитектуру.

Архитектура SMP

SMP - это один компьютер с несколькими равноправными процессорами. Все остальное - в одном экземпляре: одна память, одна подсистема ввода/вывода, одна операционная система. Слово "равноправный" (как и слово "симметричная" в названии архитектуры) означает, что каждый процессор может делать все, что любой другой. Каждый процессор имеет доступ ко всей памяти, может выполнять любую операцию ввода/вывода, прерывать другие процессоры и т.д. Но это представление справедливо только на уровне программного обеспечения. Умалчивается то, что на самом деле в SMP имеется несколько устройств памяти.

В SMP каждый процессор имеет по крайней мере одну собственную кэш-память (а возможно, и несколько). Наличие кэш-памяти (или просто кэша) необходимо для достижения хорошей производительности, поскольку основная память (DRAM - Direct Random Access Memory) работает слишком медленно по сравнению со скоростью процессоров, и каждый год это соотношение ухудшается.


Уже сейчас скорость основной памяти в 20-40 раз меньше, чем требуется, а в ближайшее время этот показатель будет порядка 100. Кэш работает со скоростью процессора, но эта аппаратура дорогая, и поэтому устройства кэш-памяти обладают относительно небольшой емкостью. В настоящее время размер кэш-памяти составляет 10-100 Кбт, в то время как основная память может иметь объем в 10-100 Мбт. Для процессора кэш исполняет роль "рабочего стола", на котором хранится используемая в текущее время информация; основная память подобна большому шкафу, находящемуся в комнате. При том, что в SMP имеется несколько устройств памяти, программное обеспечение ожидает видеть только одну общую память. Грубо говоря, из этого следует, что если процессор A сохраняет значение X в ячейке Q, а позже процессор B загружает значение из ячейки Q, то процессор B должен получить X. Но если на самом деле значение X было помещено в кэш процессора A, то как его сможет получить процессор B?

Этот пример иллюстрирует одну из сложных проблем SMP, называемую проблемой когерентности кэшей. Если процессор B обращается к ячейке Q, и содержимое этой ячейки отсутствует в кэше B, то через системную шину для всего компьютера посылается широковещательный запрос "У кого Q?". Все немедленно начинают искать Q. Все устройства кэш-памяти, основной памяти и даже подсистема ввода/вывода (если она работает с основной памятью напрямую) определяют, не у них ли находится актуальная копия Q. То устройство, которое находит актуальную копию, посылает ее процессору B.

Имеются три причины, по которым когерентность кэшей является важной. Во-первых, это свойство играет ведущую роль в системах NUMA. Во-вторых, поддержка когерентности серьезно влияет на производительность. И в третьих, именно из-за поддержки когерентности кэшей архитектура SMP не может обеспечить высокой доступности. Влияние на производительность очевидно. Программа работает гораздо быстрее, в 10-20 раз, если используются данные, уже содержащиеся в кэше.


Программы, которые обращаются к другим устройствам памяти, выполняются очень медленно. Даже если для реорганизации кода с целью повышения вероятности использованию данных из кэша требуется большее число команд, эти команды гораздо более быстрые.

Но имеется еще одно следствие, связанное с параллелизмом. Неявно прозводимая аппаратурой SMP пересылка данных между кэшами является наиболее быстрым и самым дешевым средством коммуникации в любой параллельной архитектуре общего назначения. Поэтому при наличии большого числа коротких транзакций (свойственных, например, банковским приложениям), когда приходится часто синхронизовать доступ к общим данным, архитектура SMP является наилучшим выбором; любая другая архитектура работает хуже. Кроме того, архитектура SMP наиболее безопасна, если нет уверенности в том, сколько действий по синхронизации потребуется, поскольку реальность всегда хуже ожиданий. Из этого не следует, что передача данных между кэшами желательна. Параллельная программа всегда будет выполняться тем быстрее, чем меньше взаимодействуют ее части. Но если эти части должны взаимодействовать часто, то программа будет работать быстрее на SMP.

Рассмотрим теперь аспекты доступности. Что случится, если процессор A сохранит значение Q в своем кэше, а затем выйдет из строя? Когда процессор B инициирует поиск Q, кэш процессора A не сможет ответить. Должно ли это привести к выходу из строя процессора B по причине бесконечного ожидания ответа? Вспомним, что ячейка Q по прежнему входит в состав основной памяти. Q содержит неверные данные, но основная память получает запрос наряду со всеми другими компонентами SMP, и если кэш не отвечает, то основная память выдает то, что имеет. Если бы копия Q не содержалась ни в одном кэше, то этот ответ был бы правильным. К сожалению, в рассматриваемом нами случае основная память предоставит неверное значение. В результате вся SMP начнет работать как однопроцессорная система. Ее можно перезагрузить и запустить заново без использования вышедшего из строя процессора, но, конечно, это означает деградацию системы.



При наличии нескольких процессоров эта ситуация достаточно нелепа; осмысленной причиной для выхода системы из строя был бы отказ основной памяти или подсистемы ввода/вывода. Но поскольку процессоры слишком тесно связаны, и работает одна копия операционной системы, разделяемая всеми процессорами, не удается сохранить работоспособность системы при отказе любого процессора. Теоретически эту проблему можно разрешить за счет увеличения объема оборудования, существенного усложнения аппаратуры кэша и массы дополнительного программного обеспечения. В результате даже производители мейнфреймов, исторически использовавшие SMP, переходят к применению кластерных архитектур с присущей им высокой доступностью.

Архитектуры NUMA

Проще всего охарактеризовать NUMA-систему, представив себе большую систему SMP, распиленную пополам, причем половинки связаны кабелем, подключенным к системным шинам, и каждая половинка включает собственную основную память и подсистему ввода/вывода. Это и есть NUMA: большая SMP, разбитая на набор более мелких и простых SMP. Основной проблемой NUMA является обеспечение когерентности кэшей. Аппаратура позволяет работать со всеми отдельными устройствами основной памяти составных частей системы (называемых обычно узлами) как с единой гигантской памятью. Этот подход порождает ряд следствий. Во-первых, в системе имеется одно адресное пространство, распространяемое на все узлы. Реальный (не виртуальный) адрес 0 для каждого процессора в любом узле соответствует адресу 0 в частной памяти узла 0; реальный адрес 1 для всей машины - это адрес 1 в узле 0 и т.д., пока не будет использована вся память узла 0. Затем происходит переход к памяти узла 1, затем узла 2 и т.д. Для реализации этого единого адресного пространства каждый узел NUMA включает специальную аппаратуру (Dir).

Предположим, что процессор в узле A пытается загрузить значение из ячейки с адресом Q, и это значение не находится в кэше, а содержится только в основной памяти. Кроме того, предположим, что действительный адрес Q не относится к частной памяти узла A.


Тогда выполняется следующая последовательность действий:

Как обычно, кэш в узле A распространяет запрос "У кого Q?" внутри своего узла. Все устройства узла A, включая Dir производят поиск Q. Dir узла A, анализируя адрес Q, распознает, что он относится к частной памяти узла B и как бы говорит "Подождите минуточку, сейчас будет значение Q". Затем Dir узла A посылает сообщение с запросом Q Dir'у узла B. Dir узла B ведет себя подобно процессору и распространяет запрос "У кого Q?" внутри узла B. Устройство основной памяти узла B воспринимает запрос, выбирает значение ячейки Q, доставляет его Dir'у узла B. Этот Dir посылает сообщение Dir'у узла A, который в заключение посылает значение процессору, от которого исходил начальный запрос.

Понятно, что этот процесс длится несколько дольше, чем если бы адрес Q относился к частной памяти узла A. Вот откуда происходит словосочетание "неоднородный доступ к памяти". В отличие от SMP, время выборки значения зависит от адреса и от того, от какого процессора исходит запрос (если, конечно, Q не содержится в кэше). По аналогии архитектуру SMP можно было бы характеризовать как UMA - Uniform Memory Access.

Ключевым вопросом является то, насколько "неоднородна" NUMA? Например, если для взятия значения из другого узла требуется только на 10% большее время, то это никого не задевает. В этом случае все будут относиться к системе как к UMA (SMP), и разработанные для SMP программы будут выполняться достаточно хорошо. В действительности на рынке имеются системы, к которых доступ к памяти в другом узле занимает на 40% больше времени. Никто не оглашает этот факт, и он никого не задевает.

Однако в текущем поколении NUMA-систем для соединения узлов используется сеть. Это позволяет включать в систему большее число узлов, до 64 узлов с общим числом процессоров 128 в некоторых системах. В результате, современные NUMA-системы не выдерживают правила 10%. Даже лучшие представители серии Origin компании Silicon Graphics обеспечивают замедление в 200-300%.


NUMA- Q компании Sequent дает замедление в 750% и даже больше при сильной загрузке. Не имея точных данных, на основе анализа структуры NUMALiiNE компании Data General можно считать, что система дает еще большее замедление, чем NUMA-Q.

При такой разнице в скорости доступа к памяти для обеспечения должной эффективности следует позаботиться о правильном расположении требуемых данных. Чтобы этого добиться, можно соответствующим образом модифицировать операционную систему (и это сделали поставщики систем в архитектуре NUMA). Например, такая операционная система при запросе из программы блока памяти выделяет память в узле, в котором выполняется эта программа, так что когда процессор ищет соответствующие данные, то находит их в своем собственном узле. Аналогичным образом должны быть изменены подсистемы (включая СУБД), осуществляющие собственное планирование и распределение памяти (что и сделали Oracle и Informix). Как утверждает компания Silicon Graphics, такие изменения позволяют эффективно выполнять в системах с архитектурой NUMA приложения, разработанные для SMP, без потребности изменения кода.

Но это еще не конец всей истории. Напомним, что должна поддерживаться когерентность кэшей. Если процессор в узле A изменяет в своем кэше значение, полученное из узла B, а затем процессор в узле B запрашивает это значение, то должна быть произведена соответствующая выборка. Для этого Dir в узле B сохраняет в своем "каталоге" (отсюда Dir) информацию о том, кто получил значения из узла B. Когда процессор в узле B распространяет запрос "У кого Q?", Dir этого узла просматривает свой каталог. Если в нем находится ссылка на Q, то Dir как бы говорит: "Подождите, Q имеется у кого-то еще", а потом извлекает значение из узла A с использованием описанной ранее последовательности действий. Таким образом поддерживается семантика SMP - выполнять операции загрузки значений из памяти и их записи в память таким образом, как если бы существовала только одна память.



Обсудим теперь, сколько времени занимает пересылка данных между кэшами. Основная память работает медленно, поэтому время выборки значения из этой памяти создает постоянные дополнительные накладные расходы при обращении и к локальным, и к удаленным данным. Конечно, доступ к удаленным данным в основной памяти существенно дороже, чем доступ к локальным данным, но эта разница несколько сглаживается за счет величины времени выборки из основной памяти. Кэш-память работает быстро, поэтому подобный фактор сглаживания отсутствует. Результаты сравнения времени пересылки данных между локальными и между удаленными кэшами существенно хуже тех, которые обсуждались раньше.

Насколько они хуже? Никто не говорит об этом, по крайней мере, публично. Тем не менее, можно в процентах разницу во времени можно оценить в 400-1500 и даже больше. Поэтому NUMA-системы вряд ли могут заменить SMP при решении задач, требующих частой синхронизации. Ситуация улучшается, если удается разделить приложение на части, каждая из которых располагается в одном узле и взаимодействия между которыми возникают не слишком часто. Например, NUMA-систему с двумя узлами можно эффективно использовать для ведения бухгалтерии корпорации, имеющей два относительно независимых офиса. Эффективно использовать NUMA-системы могут СУБД, оптимизаторы которых в состоянии разбить сложный запрос на независимо выполняемые части (например, сканирующие разные части большой таблицы).

Что касается доступности, то NUMA наследует все неприятности, свойственные SMP, по той же причине обеспечения когерентности кэшей и наличия единой операционной системы. В отличие от кластеров, NUMA-систему любого размера можно считать "одной машиной". Для достижения высокого уровня доступности нужно использовать кластеры.

Кластерные архитектуры

Кластер - это связанный набор полноценных компьютеров, используемый в качестве единого ресурса. Под словосочетанием "полноценный компьютер" понимается завершенная компьютерная система, обладающая всем, что требуется для ее функционирования, включая процессоры, память, подсистему ввода/вывода, а также операционную систему, подсистемы, приложения и т.д.


Обычно для этого годятся готовые компьютеры, которые могут обладать архитектурой SMP и даже NUMA.

Словосочетание "единый ресурс" означает наличие программного обеспечения, дающего возможность пользователям, администраторам и даже приложениям считать, что имеется только одна сущность - кластер. Например, система пакетной обработки кластера позволяет послать задание на обработку кластеру, а не какому-нибудь отдельному компьютеру. Более сложным примером являются системы баз данных. У всех ведущих поставщиков систем баз данных имеются версии, работающие в параллельном режиме на нескольких машинах кластера. В результате приложения, использующие базу данных, не должны заботиться о том, где выполняется их работа. СУБД отвечает за синхронизацию параллельно выполняемых действий и поддержание целостности базы данных.

При соединении компьютеров в кластер почти всегда поддерживаются прямые межмашинные коммуникации. Решения могут быть простыми, основывающимися на аппаратуре Ethernet, или сложными с высокоскоростными сетями с пропускной способностью в сотни мегабайт в секунду. К последней категории относятся RS/6000 SP компании IBM, системы компании Digital на основе Memory Channel, ServerNet компании Compac Computer Corp. Часто, хотя и не всегда, обеспечивается доступ каждого компьютера, входящего в состав кластера, к любому диску. Это не означает, что копьютеры обязательно совместно используют диски каким-либо разумным образом; при разработке СУБД или других подсистем возможен выбор, и в большинстве таких систем применяется подход "sharing-nothing", при котором в любой момент времени каждым диском "владеет" только один компьютер. Исключениями являются Oracle8 и DB2 c IBM OS/390; в них диски активно используются в совместном режиме, образуя большую и медленную память, с помощью которой поддерживается когерентность кэшей базы данных.

Кластеры демонстрируют высокий уровень доступности, поскольку в них отсутствуют единая операционная система и совместно используемая память с обеспечением когерентности кэшей.


Кроме того, специальное программное обеспечение в каждом узле постоянно производит контроль работоспособности всех остальных узлов. Этот контроль основан на периодической рассылке каждым узлом сигнала "Я еще бодрствую". Если такой сигнал от некоторого узла не поступает, то этот узел считается вышедшим из строя; ему не дается возможность выполнять ввод/вывод, его диски и другие ресурсы переназначаются другим узлам (включая IP-адреса), а выполнявшиеся в вышедшем из строя узле программы перезапускаются в других узлах.

Производительность кластеров хорошо масштабируется при добавлении узлов. В кластере может выполняться несколько отдельных приложений, но для масштабирования отдельного приложения требуется, чтобы его части взаимодействовали путем обмена сообщениями. Это сильно отличается от приемов программирования для SMP, но если приложение выполняется под управлением монитора транзакций или СУБД, то поставщик монитора транзакций или СУБД уже проделал соответствующую работу. Однако невозможно не учитывать, что взаимодействия между узлами кластера занимают гораздо больше времени, чем в NUMA-системах, не говоря уже о SMP. Во многих случаях в качестве коммуникационного протокола используется TCP/IP с временные расходами, несоизмеримыми с требуемые для пересылки данных между кэшами. Специальные протоколы работают намного лучше, и возглавляемый компанией Intel консорциум предложил API для внутрикластерных коммуникаций, который называется Virtual Interface Architecture и претендует на роль стандарта.

Тем не менее кластерная архитектура более всего подходит для решения хорошо разделяемых параллельных задач, хотя в системах, подобных Parallel Sysplex компании IBM используется специализированные аппаратура и программное обеспечение, позволяющие решить проблемы коммуникаций между узлами и эффективно выполняющие даже неразделенные OLTP-приложения.

Возможность практически неограниченного наращивания числа узлов и отсутствие единой операционной системы делают кластерные архитектуры исключительно хорошо масштабируемыми.Успешно используются массивно параллельные системы с сотнями и тысячами узлов.

Но мультисистемная природа кластеров имеет и обратную сторону: управление кластером подобно управлению несколькими системами. Помогает наличие инструментов администрирования и управления, но результаты до сих пор менее удовлетворительны, чем для систем с архитектурой SMP и NUMA.


Снижение затрат:


происходит по следующим причинам:

сокращение ежемесячных расходов на оплату телефонных переговоров за счет отложенной передачи и маршрутизации исходящих факсов; снижение общих затрат, благодаря централизованной установке высокопроизводительных и надежных факс-устройств; автоматизация расчета затрат на передачу факсов для сотрудников и подразделений создает предпосылки для анализа и квотирования затрат; экономия рабочего времени сотрудников; экономия на обычной и термобумаге, тонере для принтера и копира, благодаря возможности просматривать полученные факсы, не распечатывая их.



Соотношение запрос/индекс/диск


Без понимания приложения, стратегии индексации, принятой администратором базы данных, а также механизмов поиска и хранения СУБД сложно сделать точное утверждение о том, какого типа доступа к диску данная транзакция будет навязывать системе. Однако можно предположить, что любая транзакция, которая находит небольшое число специально поименованных записей из индексированной таблицы "по индексному ключу", будет представлять собой операцию произвольного доступа к диску. Обработка запросов, которые содержат целый ряд значений ключей, может приводить к некоторой комбинации произвольного и последовательного доступа, в зависимости от имеющей место индексации.

Напомним, что любое обновление базы данных связано и с обновлением всех затронутых индексов, а также с выполнением записи в журнал. К сожалению, вся эта техника уходит далеко за рамки данной статьи, требуя основательного понимания работы конкретной используемой СУБД, сложной природы запросов и методов оптимизации запросов. Оценка требований к выполнению дисковых операций оказывается неточной без детальной информации о том, как СУБД хранит данные.



Средний класс


Во второй класс условно можно объединить накопители, использующие ленту шириной 8 миллиметров. В него попадают форматы:

Mammoth 1, 2 и 3, разработанные компанией Exabyte; Variable Speed Architecture (VXA), разработанный в Ecrix; Advanced Intelligent Tape (AIT), разработанный компанией Sony (S-AIT можно отнести к старшему классу); Advanced Digital Recording (ADR), разработанный OnStream, дочерней компанией Philips.

У форматов Mammoth и AIT общий предок — стандарт записи для видеокамеры, использующий 8–миллиметровую пленку. Поэтому они используют один и тот же, винтовой способ записи. Поначалу стандарт 8mm был един для всех производителей компьютерных магнитофонов, которые подключались по интерфейсу SCSI и имели емкость в диапазоне от 3,5 до 14 Гбайт. В дальнейшем пути производителей разошлись.

Стандарт Mammoth, разрабатываемый Exabyte, — уже не адаптация формата 8mm, взятого из видеокамеры, а специальная разработка на тех же принципах. Последовательно в трех поколениях Mammoth улучшается механика, повышаются эксплуатационные и тактико-технические данные, но при этом ни в одной из редакций не появилось никакого принципиально нового качества. Возможно, поэтому Exabyte приобрела компанию Ecrix, предложившую принципиально новый стандарт VXA, в котором есть принципиально иные подходы, позволяющие согласовать асинхронность процесса подготовки данных к записи с особенностями движения ленты. Это, прежде всего, запись данных в пакетном режиме в формате DPF (Discrete Packet Format), за которым явно просматриваются идеи пакетной коммутации. Второе — работа с переменной скоростью (Variable Speed Operation, VSO), которая позволяет изменять скорость ленты в соответствии с изменением скорости передачи данных. Многократное сканирование (OverScan Operation, OSO) повышает эффективность процесса чтения и надежность.

Mammoth-2 обеспечивает скорость передачи данных 12 Мбайт/с, емкость без компрессии 60 Гбайт. Алгоритм компрессии ALDC (Adaptive Lossless Data Compression) обеспечивает соотношение 2,5:1, позволяя довести общую емкость ленты до 150 Гбайт.
В Mammoth- 3 скорость увеличена до 30 Мбайт/с, а емкость — вдвое. Для сравнения, формат VXA-1 имеет емкость 33/66 Гбайт. Следующая редакция, VXA-2, предлагает компрессированную емкость 150 Гбайт и скорость передачи 12 Мбайт/с. Обещаны VXA-3 и VXA-4, компрессированные емкости которых должны достичь 320 Гбайт и 640 Гбайт соответственно, а скорости передачи данных — 16 Мбайт/с и 32 Мбайт/с. Понимая, что наличие в портфеле одного производителя двух близких по классу продуктов вызывает недоумение, компания Exabyte выпустила пояснительный документ Mammoth vs VXA; но и из него трудно сделать объективный вывод о недостатках и преимуществах одной технологии перед другой.

Формат AIT, разработанный Sony, получил известность в основном тем, что в нем впервые была использована встроенная флэш-память на кассете MIC (Memory-In-Cassette), в 64 килобайта которой помещается служебная информация о содержимом ленты, в том числе, карта распределения данных, позволяющая оптимизировать доступ к ним. Картридж AIT-1 позволял хранить 25 (65 компрессированных) Гбайт при скорости обмена 3 Мбайт/с (7,8). В следующем поколении AIT-2 числовые характеристики возросли вдвое, в поколении AIT-3 — еще в два раза. В готовящемся к выпуску четвертом поколении AIT-4 обещанная емкость составляет 200 (400 компрессированных) Гбайт при скорости обмена 24 Мбайт/с (48).

Технологию Advanced Digital Recording (ADR) пока можно отнести к 8-миллиметровым. Сейчас, действительно, компанией OnStream выпускаются накопители, рассчитанные на эту ширину ленты, однако потенциально ширина может быть увеличена втрое. Особенность технологии ADR заключается в наличии специальных средств мониторинга за движением ленты, которые обеспечивают более высокую плотность записи. Уже сейчас на ленте шириной 8 миллиметров размещается 192 дорожки; одновременно читаются восемь, что позволяет обеспечить высокую скорость обмена. Повышению плотности способствуют и уникальные механизмы коррекции ошибок. В нынешнем виде показатели не поражают: емкость кассеты — 25 Гбайт (50 Гбайт с компрессией) при скорости обмена 2 Мбайт/с (4 Мбайт/с с компрессией).Однако, как утверждается, длина ленты может быть увеличена вдвое, ширина — в три раза, число треков — в четыре раза, а плотность на треке — еще в три раза. В итоге емкость ленты составит 3600 Гбайт (7200 с компрессией) при скорости обмена 130 Мбайт/с (260 Мбайт/с с компрессией). 7 Тбайт на одной кассете!


Старший класс


Класс полудюймовых лент представлен сегодня тремя стандартами — DLT (SDLT), LTO (LTO 2) и S-AIT. Все три могут быть использованы в ленточных библиотеках, поставляемых их основными производителями, компаниями Storage Technology и ADIC.

S-AIT (Super Advanced Intelligent Tape), являющийся логическим продолжением восьмимиллиметрового формата AIT, первым на практике преодолел терабайтный барьер. Его емкость — 500 Гбайт (1,3 Тбайт с компрессией). На очереди вторая версия SAIT-2; в ней емкость будет увеличена в два раза, до 1 Тбайт (2,6 Тбайт с компрессией) при скорости обмена 60 Мбайт/с (156 Мбайт/с с компрессией). В каждом из двух следующих поколений SAIT-3 и SAIT-4 характеристики будут последовательно удваиваться. Другими словами, для SAIT-3 емкость составит 2 Тбайт (5,2 Тбайт с компрессией) при скорости обмена 120 Мбайт/с (312 Мбайт/с с компрессией), для SAIT-4 — 4 Тбайт (10,4 Тбайт с компрессией).

Само название стандарта Linear Tape-Open (LTO) выдает в нем предпринятую в 1997 году компаниями Hewlett-Packard, IBM и Seagate попытку предложить открытую альтернативу собственному стандарту DLT компании Quantum, об истории которого говорилось выше. Изначально было задумано две версии LTO.

Accelis был предназначен для приложений, где требуется высокая скорость доступа. Поэтому был избран вариант картриджа с двумя катушками. В исходном положении лента поровну распределена между ними. В первой опубликованной редакции были объявлены следующие показатели: емкость 25 Гбайт (50 Гбайт с компрессией) при скорости обмена 20 до 40 Мбайт/с. В последующем предполагалось увеличить емкость до 400 Гбайт, а скорость — до 320 Мбайт/с. Однако до сих пор сведений о практических реализациях Accelis нет.

Однокатушечный формат Ultrium — двойник Accelis, главным критерием при разработке которого был объем хранения. В первой версии Ultrium обеспечивает запись до 200 Гбайт компрессированных данных и скорость обмена 20-40 Мбайт/с. По проекту предполагалось довести максимальную емкость до 0,8 Тбайт (1,6 с компрессией), а скорость передачи данных — до 160-320 Мбайт/с. Во втором поколении Ultrium 2, недавно анонсированном компанией HP, объем хранения доведен до 400 Гбайт с компрессией, а скорость обмена — до 60 Мбайт/с. Это поколение отличается не только количественными показателями, но еще и наличием MIC-памяти на картридже, функционально схожей с той, которая впервые появилась в AIT.

Super Digital Linear Tape (SDLT), новейшая разновидность формата DLT, дебютировала в 2002 году. Она позволяет хранить 320 Гбайт компрессированных данных и передавать их со скоростью 16 Мбайт/с. В середине 2003 года должна появиться следующая редакция SDLT, где эти показатели будут увеличены соответственно до 600 Гбайт и 64 Мбайт/с, в ней, вероятно, тоже появится MIC-память.



Структура процессора UltraSPARC-I


Процессор UltraSPARC-1 представляет собой производительный, высокоинтегрированный суперскалярный процессор, реализующий 64-битовую архитектуру SPARC-V9.В его состав входят: устройство предварительной выборки и диспетчеризации команд, целочисленное исполнительное устройство, устройство работы с вещественной арифметикой и модуль графики, устройства управления памятью, загрузки/записи и управления внешней кэш-памятью, модули управления интерфейсом памяти и кэш-памяти команд и данных (рис. 1).

Рисунок 1.
Блок-схема процессора UltraSPARC-1.



Технологии записи


На технологии, используемые при создании ленточных накопителей, оказывают влияние несколько обстоятельств. Во-первых, лента — это, по всей видимости, самое механическое, если так можно сказать, устройство из всей компьютерной периферии. Поэтому создателям новых устройств приходится решать целый ряд специфических проблем механического свойства. Им нужно выбрать оптимальную ширину ленты и метод размещения записи на ленте, обеспечить максимальную динамику движения и минимальное число перегибов при перематывании, найти способ минимизации трения ленты с головками чтения/записи (от этого зависят ключевые параметры — долговечность головки и срок жизни кассеты) и т.д. Вторая проблема — собственно способ записи на ленту и метод считывания информации, в том числе и компрессии данных. Но самое главное заключается в том, чтобы найти оптимальное сочетание, обеспечивающее наиболее быстрый доступ к данным, высокую пропускную способность канала передачи и надежность хранения. В поисках оптимума каждый из производителей избирает собственное направление. Разнообразию решений способствует то, что ленты перестали быть средством для обмена данными; они используются сугубо локально, «по месту прописки». Следовательно, нет особой нужды в стандартизации. Каждый производитель и каждый пользователь волен выбирать то, что ему по вкусу. В результате после развала «Вавилонской башни» полудюймовых лент рынок рассыпался на множество несовместимых форматов, поддерживаемых теми или иными производителями. В сегменте индивидуальных рабочих станций и ПК в основном работают Tandberg и Sony, а лентопротяжки для корпоративных систем производят кроме двух этих компаний еще и Ecrix, Benchmark, Quantum, Exabyte, IBM и Quantum.

Ниже при описании технологий сознательно опущены такие вопросы, как физика процессов чтения и записи, устройство головок и т.д. На пользовательском уровне они практического значения не имеют, хотя, конечно же, именно они определяют технические возможности. Однако это совершенно отдельная тема.
Также отдельную область образует направление, получившее название RAIT (Redundant Array if Independent Tapes), по своей идеологии близкое к «классическим» дисковым массивам RAID.

Еще пару лет назад, когда разнообразие накопителей было меньше, их было легче систематизировать. Сейчас же, с появлением совсем новых технологий деление на классы размывается. Так, на протяжении многих лет ленты классифицировали по тому, как используется площадь записи, выделяя два принципиально разных подхода. Первый — «линейный» (linear), и его подвид — «серпантинный» (linear serpentine). Второй — helical scan, что переводится как «винтовой», «наклонно-строчный», «спиральный» или «запись по диагональным дорожкам». Они успешно сосуществуют и конкурируют почти пятьдесят лет. Линейный метод записи появился немного раньше; в первой версии использовалась всего одна дорожка, протяженностью во всю длину ленты. Она делилась на блоки специальными маркерами «конец блока», «конец ленты» и межблочными промежутками. На дорожке в одну строку записывалось по 9 бит (8 информационных и один контрольный). В последующем число дорожек стало возрастать, их стали зацикливать змейкой от начала к концу ленты и обратно (linear serpentine recording). Это оказалось удобнее; стало возможным выполнять операции чтения/записи при двустороннем движении; увеличилась «логическая» длина ленты, которая составляла сумму длин всех дорожек. Наклонно-строчный способ записи был заимствован из технологий телевидения. Он был предложен существующей до сих пор компанией Ampex в 1956 году, отличие нового способа записи заключалось в замене неподвижных головок вращающимися. Но уже в этом году должны появиться ленты O-Mass, разрабатываемые норвежской компанией Tandberg, где будет использоваться новый матричный способ размещения данных на ленте, и эта система классификации устареет.

Решение O-Mass от Tandberg грозит изменить и еще целый ряд сложившихся представлений, в том числе о ширине используемых лент. До сих пор применяли ленты шириной от 4 миллиметров до полудюйма.


В перспективе же ширину ленты в накопителях O-Mass можно довести до 3 дюймов. Картридж O-Mass будет напоминать рулонный графопостроитель (было когда-то и такое устройство). Широкая лента будет перематываться с катушки на катушку, а головка будет смещаться по ширине ленты. Радикальность подхода Tandberg, разрабатывавшегося более семи лет, заключена в конструкции. Во всех типах устройств лента, так или иначе вытягивается навстречу головкам, а в O-Mass лента просто мотается между катушками, а сами головки въезжают внутрь кассеты.

Новые решения, предложенные другими компаниями, тоже по-своему оригинальны. Например, формат VXA компании Ecrix позволяет записывать данные в пакетном режиме, а со стандарта AIT (корпорация Sony Electronics) началось использование встроенной в кассету памяти (memory-in-cassette, MIC).

Наиболее полное, но при этом компактное описание практически всех популярных технологий и стандартов можно найти в работе Tape Drive Technologies Primer, (www.stornet.com/pdf/tapetech_white_paper.pdf). Тенденции в области ленточных накопителей отражены в опубликованном в Сети отчете Gartner, озаглавленном Tape Drives: Overview (www.tapecouncil.org/tapeDrivesOverview.pdf); правда, хотя он и датирован 2002 годом, но успел немного устареть.


состоит из собственно процессора


Типовой процессорный модуль (рис. 2) UltraSPARC- 1 состоит из собственно процессора UltraSPARC-1, микросхем синхронной статической памяти (SRAM),используемых для построения памяти тегов и данных внешнего кэша и двух кристаллов буферов системных данных (UDB). UDB изолируют внешний кэш процессора от остальной части системы и обеспечивают буферизацию данных для приходящих и исходящих системных транзакций, а также формирование, проверку контрольных разрядов и автоматическую коррекцию данных (с помощью ECC-кодов). Таким образом, UDB позволяет интерфейсу работать на тактовой частоте процессора(за счет снижения емкостной нагрузки).



Рисунок 2.
Типовой процессорный модуль.

Буфер данных обеспечивает также совмещение во времени системных транзакций с локальными транзакциями E-кэша. В состав процессора UltraSPARC-1 включена логика управления буферными кристаллами, которая обеспечивает быструю пересылку данных между процессором или внешним кэшем и системой. Для поддержки системных транзакций используется отдельная адресная шина и отдельный набор управляющих сигналов.


Типы узлов


Не все узлы равны между собой.

P-node, процессорный узел. Имеет свой небольшой жесткий диск с системным ПО, контроллер Ethernet-TP и контроллер HSL. Непосредственно недоступен пользователю (нельзя, например, войти на него с помощью telnet или rlogin). В нашей системе таких узлов 13.

IO-node, узел ввода-вывода. Помимо всего, что есть у P-node, оснащен дополнительной периферией (внешние диски, графический монитор, CD-ROM накопитель и др.). У нас три IO-node, один оснащен внешним SCSI-интерфейсом, на котором находятся внешние жесткие диски, другой - дополнительным контроллером Ethernet, к третьему может быть подключена графическая консоль.

Наконец, один из IO-узлов является ``узлом входа'' (Entry node). Это тот IO-node, что оснащен дополнительным Ethernet-контроллером. Через этот интерфейс узел подключен к внешнему миру (внешней сети). Только этот узел непосредственно доступен пользователю. Сюда он попадает, когда делает telnet на систему Parsytec CC/16, и оказывается в среде ОС AIX.



Точность - вежливость серверов


Евгений Патий, IT News

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

Впоследствии возникли и другие вопросы: где гарантия, что это время точное и не "плывет" постепенно? Можно ли автоматизировать его коррекцию, не прибегая к способу "мануальной" синхронизации с наручными часами? Каков, в конце концов, собственно механизм этого процесса?

Попытаемся ответить на все эти вопросы. Забегая вперед, скажу, что, как оказалось, и в самом деле время ползет потихоньку "в сторону", и автоматическая коррекция его вполне возможна, и механизм однозначен и отлажен.

С развитием сети Интернет появилась возможность решить большинство проблем, связанных с поддержанием точного времени, посредством специальных протоколов, среди которых NTP (Network Time Protocol), DTSS (Digital Time Synchronization Protocol). Несмотря на легкость процесса для конечного пользователя (который, впрочем, может и вовсе не участвовать в коррекции времени), сам алгоритм решения достаточно интересен и не так прост, как может показаться на первый взгляд.

В основу используемой большинством стран стандартной временной шкалы - UTC (Coordinated Universal Time) положены величина промежутка времени суточного вращения Земли вокруг своей оси и григорианский календарь, учитывающий период вращения Земли вокруг Солнца. Временная шкала UTC, в свою очередь, корректируется на основе сведений атомных часов (International Atomic Time, TAI) путем "вставки" соответствующего количества секунд со знаком плюс или минус примерно раз в 18 месяцев. В данном случае речь идет именно о секундах, так как на больший временной интервал шкала не разбалансируется. [Прим. ред. CITForum.ru: наши читатели указали, что UTC определяется не совсем так.
Более точное определение есть, например, здесь]

Шкала UTC, как основная, применяется в самых различных сферах: радио- и спутниковых навигационных системах, телефонных модемах, портативных часах и т. д. Специальные узкоцелевые ресиверы сигналов времени используются во множестве систем, для работы которых важна исключительная точность временной шкалы - это, например, системы глобального позиционирования GPS, а также другие устройства и службы, чья работа находится под пристальным внимание государства, ведь вопрос коррекции времени имеет, как правило, четкий юридический фундамент.

Исходя из соображений цены и удобства применения, нет никакого смысла использовать приемники сигналов точного времени с каждым конечным клиентским компьютером (да и вообще с любым устройством, отображающим текущее время). Тем не менее есть прямая необходимость задействовать некоторое количество компьютеров в качестве первичных серверов времени, установив на них оборудование, принимающее сигналы точного времени, и программное обеспечение, обслуживающее эту специфическую аппаратуру. Первичные серверы времени выступают в качестве носителей эталонного времени для намного большего числа серверов второго уровня, относительно которых в свою очередь корректируют время клиентские устройства.

Вот почему и возникла необходимость в специальном протоколе, способном считывать и интерпретировать сигналы времени с приемника, передавать считанное время клиентам и регулировать клиентские часы. Наиболее популярный из существующих ныне протоколов - Network Time Protocol (NTP). О нем и пойдет речь.


Три класса лент


Технологическое разнообразие ленточных устройств настолько велико, что представить в рамках статьи весь спектр применяемых решений не представляется возможным. И все же пока в качестве критерия для классификации можно выбрать ширину ленты. Этот параметр можно сравнить с объемом цилиндров в двигателе при оценке класса автомобиля. По каким-то отдельным параметрам устройства младшего класса могут превосходить более дорогие старшие, но в целом они обладают набором качеств, определяющих их принадлежность к определенному классу. Малый класс — ленты широтой 4 миллиметра, средний — 8-миллиметровые ленты, старший — полудюймовые ленты. Отдельное место занимают элитные продукты класса high-end — IBM 3480/3490, Storage Tec 9840, DTF и Ampex.



Универсальные решения


В начале отметим, что проектирование системы электроснабжения любой сложности начинается с выяснения общей, потребляемой всем электрическим оборудованием компании, мощности. Ее значение должно включать сумму активных мощностей (Вт) всех устройств, питание которых планируется производить через проектируемую электрическую систему. Однако большинство производителей ИБП указывают не активную составляющую мощности, а ее полную величину (кВА). Для того чтобы привести начальные расчеты к единой системе единиц, необходимо показатель полной мощности проектируемой системы умножить на коэффициент мощности приобретаемого ИБП. Обычно данный показатель находится в пределах 0,7-0,9, однако уже сегодня существуют новинки, с косинусом угла сдвига фаз равным единице.

Одним из комплексов, реализующих коэффициент мощности приблизительно равный 1, является ИБП компании APC - Smart-UPS DP. В этом ИБП используется новая схемотехника - архитектура on-line с однократным преобразованием. Принцип действия таких устройств является интеллектуальной собственностью компании Silcon, входящей с недавних пор в состав APC. Модели этой серии отличаются также низким уровнем нелинейных искажений тока во входной цепи, который, по заявлению производителя, в шесть раз меньше, чем у ИБП, выполненных по традиционной схеме с двойным преобразованием.

Источник APC Smart-UPS DP доступен в моделях мощностью 6, 8 и 10 кВА и позиционируется производителем как недорогая альтернатива решениям для централизованного управления электропитанием в операционных средах Microsoft Windows NT, Novell NetWare, Unix. Впрочем, ИБП Smart-UPS DP можно смело рекомендовать и для защиты групп ПК, рабочих станций, торговых терминалов, а также для некоторых телекоммуникационных систем и электронных систем управления. Поскольку принцип работы данной системы основан на архитектуре on-line, то нагрузка системы, или другими словами предохраняемое оборудование, постоянно находится под напряжением, и такого показателя, как время переключения при сбое для данного типа оборудования, просто не существует.
Это особенно важно для чувствительного оборудования, использующего электродвигатели, например жесткие диски или их массивы, где эффект от кратковременного исчезновения питания усиливается переходными процессами.

Оборудование компании APC, ориентированное на защиту сгруппированных вычислительных центров (файл-серверы, рабочие станции, телекоммуникационное оборудование), получило название Symmetra. Из-за того, что Symmetra использует схему с двойным преобразованием, которую многие специалисты склонны считать устаревшей, системы ИБП на базе Symmetra не столь технологичны, как предыдущий тип оборудования. Хотя у систем линейки Symmetra имеется важное преимущество перед линейкой ИБП APC Smart-UPS DP - это использование модульной архитектуры, позволяющей спроектировать систему с высокой мощностью, а также экономичность. К слову, максимальная номинальная мощность систем линейки APC Symmetra составляет 2 или 4 кВА и, по заявлениям производителя, значительно экономичнее конкурентных аналогов.

Напомним, ИБП с двойным преобразованием подразумевают двухэтапное преобразование электроэнергии - сначала переменное напряжение в постоянное, а потом постоянное в переменное, которое подается на нагрузку. В современной технологии дельта-преобразования двойное преобразование устранено, причем одновременно обеспечен единичный коэффициент мощности на выходе - значительное преимущество по сравнению с традиционными системами ИБП.

В принципе добиться единичного коэффициента мощности можно и при использовании двойного преобразования, за счет применения компенсирующих устройств, например, конденсаторных батарей или ненагруженных синхронных двигателей. Однако если первый способ компенсации реактивной мощности не получил распространения в системах средней мощности из-за его дороговизны и невысокой надежности, то второй (установка СД на холостом ходу) представляется незаурядным явлением в условиях современного офиса. Таким образом, дельта-преобразование, как способ получения высокого коэффициента мощности, является оптимальным вариантом на сегодня.



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

ИБП от компании Invensys Powerware с индексом модели 9120 поставляются с мощностью 700, 1000, 1500, 2000, 3000, 5000 или 6000 ВА. Диапазон входного напряжения без перехода на работу от батарей для систем данного типа составляет 160-276 В, входной частоты 45-65 Гц; число фаз на входе и выходе - одна. В Powerware 9120 по умолчанию предусмотрены автоматический байпас, встроенные необслуживаемые аккумуляторные батареи (для 700-1500 ВА и 3000 ВА на 8, для 2000 ВА на 12, для 5000 ВА на 10 и для 6000 ВА на 7 минут автономной работы), ЖК-дисплей, RS-232- и USB-порты, возможность сегментирования нагрузки. К Powerware 9120 могут быть подключены SNMP/веб-адаптер и AS/400 релейная плата, способные работать параллельно с установленными стандартно портами; внешние блоки батарей и байпас для технического обслуживания.

Решения от компании Powercom можно условно разделить на два сегмента - решения для настольных систем и ориентированные на серверное оборудование. Первый представляют продукты серии Smart King LCD. Модели этой серии имеют мощность от 600 до 2500 ВА, что позволяет их рекомендовать как решение для очень широкого круга задач - от обычного офисного компьютера до серьезных графических станций, оснащенных двухпроцессорными системами. Также линейка имеет семь моделей с индексом RM, сконструированные для монтажа в 19-дюймовые стойки и использования совместно с серверным и телекоммуникационным оборудованием.


ИБП серии Smart King построены на линейно-интерактивной схеме с автоматическим регулированием напряжения AVR. В первую очередь они предназначены для защиты персональных компьютеров, рабочих станций и другого оборудования от основных неполадок электропитания: высоковольтных выбросов, электромагнитных и радиочастотных помех, понижений, повышений и полного исчезновения напряжения в электросети. ИБП серии Smart King благодаря микроконтроллерному управлению, реализующему режим энергосбережения и автоматическое определение, и выбор частоты 50/60Гц, прекрасно подходят и для домашнего использования. Наличие коммуникационного порта (RS-232) и бесплатного программного обеспечения позволит автоматически завершить работу операционной системы, исключая потерю данных при долговременном исчезновении напряжения во входной электросети. Системы реализуют полный цифровой микропроцессорный контроль и режим энергосбережения, автоматическое определение и выбор частоты 50/60Гц, холодный старт, защиту от молнии и перепадов напряжения, защиту от короткого замыкания и перегрузок, автоматическую подзарядку, индикацию замены батареи, автоматическую диагностику и проверку батарей с использованием технологии Advanced Battery Management (ABM). Все модели снабжены ЖК-индикацией, отличающейся повышенной информативноcтью.

Второй сегмент оборудования от Powercom - это системы серий Ultimate и Vanguard. On-line ИБП Powercom Ultimate (ULT-8K31LCD/ULT-10K31LCD/ULT-12K31LCD/ ULT-15K31LCD/ ULT-20K31LCD/) и Vanguard (VGD-700/VGD-1000/ VGD-1000/ VGD-1500/ VGD-2000/ VGD-3000) предназначены для защиты серверных комнат, рабочих групп, стоек коммуникационного оборудования и другой нагрузки, требующей высокого качества электроснабжения. ИБП серии Ultimate способны защищать группы критичного к электропитанию оборудования мощностью от 700 ВА либо вычислительные или коммуникационные системы, потребление которых не превышает 20 кВА. ИБП Ultimate имеют встроенные фильтры гармоник, позволяющие использовать их совместно с электрогенераторами.


Все ИБП корпоративной линейки Powercom поставляются с портом RS-232 для ведения удаленного управления. Кроме того, ИБП данной серии оборудованы удобным ЖК-дисплеем на лицевой панели, отображающим все важные параметры сети и режимы работы ИБП (частоту входного и выходного напряжения, уровень входного и выходного напряжения, рабочую температуру ИБП и т. п.). ИБП серии Vanguard, как технологически более продвинутая модель, отличается наличием функции сегментирования нагрузки, возможностью изменения параметров работы ИБП (напряжение, частота, выбор языка отображения состояний) через диалоговое меню на русском языке и поддержкой USB соединения с ПК или сервером.

Источники бесперебойного питания Nfinity компании Liebert также выполнены по схеме с двойным преобразованием напряжения и предназначены для защиты рабочих станций, серверов, компьютерных сетей, телекоммуникационного и иного оборудования. В отличие от большинства других ИБП схожего класса они имеют модульную конструкцию, в чем-то аналогичную APC Symmetra, обеспечивающую простое масштабирование системы с наращиванием мощности в пределах от 4 до 16 кВА или увеличением времени автономной работы, а также возможность резервирования отдельных модулей для повышения надежности всей системы питания нагрузки. Весьма важной особенностью ИБП Nfinity является и то, что в нем предусмотрено резервирование микропроцессорного блока управления и контроля системы (резервирование блоков управления предусмотрено также в Symmetra и др). Модульные ИБП серии Nfinity выпускаются в двух конструктивных вариантах с 8 или 12 отсеками для установки рабочих модулей. В зависимости от выбранной конфигурации в корпусе могут быть размещены один или два модуля контроля и управления IntelliControl, от одного до четырех (в 12-слотовом варианте - до шести) модулей питания Intelligent Power и от одного до семи (в 12-слотовом варианте - до 11) батарейных модулей IntelliBattery. Все модули допускают замену в горячем режиме без отключения нагрузки. При необходимости обеспечения гальванической развязки между ИБП и нагрузкой источник комплектуется выходным изолирующим трансформатором, который размещается вместе с элементами внутренней схемы Bypass в нижнем отделении блока, куда подведены силовые линии.


Управление интерфейсом памяти (MIU)


В процессоре UltraSPARC-1 применяется специальная подсистема ввода/вывода(MIU), которая обеспечивает управление всеми операциями ввода и вывода, осуществляемыми между локальными ресурсами: процессором, основной памятью, схемами управления и всеми внешними ресурсами системы. В частности, все транзакции, связанные с обработкой промахов кэш-памяти, прерываниями, наблюдением за когерентным состоянием кэш-памяти, операциями обратной записи и т.д., обрабатываются MIU. MIU взаимодействует с системой на частоте меньшей, чем частота UltraSPARC-1 в соотношении 1/2 или 1/3.



Управление внешней кэш-памятью


Одной из важнейших проблем построения системы является согласование производительности процессора со скоростью основной памяти. Основными методами решения этой проблемы, помимо различных способов организации основной памяти и системы межсоединений являются увеличение размеров и многоуровневая организация кэш-памяти. Устройство управления внешней кэш-памятью (ECU С E-кэш) процессораUltraSPARC-1 позволяет эффективно обрабатывать промахи кэш-памяти данных(D-кэша) и команд (Е-кэша). Все обращения к внешней кэш-памяти (E-кэшу)конвейеризованы, выполняются за 3 такта и осуществляют пересылку 16 байт команд или данных в каждом такте. Такая организация дает возможность эффективно планировать конвейерное выполнение программного кода, содержащего большой объем обрабатываемых данных, и минимизировать потери производительности, связанные с обработкой промахов в D-кэше. ECU позволяет наращивать объем внешней кэш-памяти от 512 Кбайт до 4 Мбайт.

ECU обеспечивает совмещенную во времени обработку промахов обращений по чтению данных из Е-кэша с операциями записи. Например, во время обработки промаха по загрузке ECU разрешает поступление запросов по записи данных в E-кэш. Кроме того, ECU поддерживает операции наблюдения (snoops), связанные с обеспечением когерентного состояния памяти системы.



Уровень загрузки ресурсов ввода-вывода


При выборе конфигурации подсистемы ввода-вывода должно быть уделено внимание не только максимальной емкости ее компонентов, но также уровню использования (загруженности) каждого ресурса. Большинство параметров, используемых для описания емкости ресурсов, так или иначе связаны с пропускной способностью. Например, шина SCSI характеризуется пропускной способностью в 10 Мбайт/с. Это скорость пересылки битов по шине. Такой параметр не дает информации о том, насколько занята сама шина, и, следовательно, о том, сколько времени будет потрачено на обслуживание данного запроса. Приводить в качестве параметра ресурса рейтинг максимальной пропускной способности все равно, что говорить, - предел скорости автомагистрали равен 130 км в час: если въезды и съезды с нее так перегружены, что это занимает длительное время, то общая скорость, вероятно, будет намного ниже установленного предела.

Точно такие же принципы применимы к различным периферийным устройствами периферийным шинам. В частности, это справедливо и для шин SCSI. Экспериментальные результаты показывают, что если должна поддерживаться пиковая производительность, то степень загруженности шины SCSI должна поддерживаться на уровне 40%.Аналогичным образом, степень загрузки дисков должна поддерживаться на уровне60%. Диски могут выдерживать значительно большую степень загрузки, чем шина SCSI, поскольку во встроенных дисковых контроллерах имеется интеллект и средства буферизации. Это позволяет координировать работу буферов дорожек, каретки диска и очереди запросов такими способами, которые невозможны на достаточно примитивных главных адаптерах шины SCSI.

Обычно нельзя оценить среднюю степень загрузки дисков или шины SCSI до тех пор, пока система не начнет работать. В результате достаточно приемлемой оказывается такая конфигурация, которая позволяет распределить часто используемые данные и индексы по стольким дискам и шинам SCSI, насколько позволяют бюджет и технические ограничения. Для данных, доступ к которым происходит не очень часто, например только во время ночной пакетной обработки (или других полуархивных данных, подобных транзакциям годовой давности), можно рекомендовать как можно более плотную упаковку на накопителях.


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

В контексте СУБД имеется по крайней мере два механизма для распределения данных по дисковым накопителям. Для эффективного распределения доступа к данным все известные СУБД имеют возможность осуществлять конкатенацию нескольких дисковых накопителей или файлов Unix. (В СУБД Ingres, например, реализовано и истинное расщепление дисков, ограниченное стандартным размером чередования 16 Кбайт.) Похожие возможности (помимо горячего резервирования и расщепления дисков) предлагают и многие специальные пакеты, которые можно рассматривать как интегральную часть файловых систем Unix (например, Online: DiskSuite компании Sun). Файловая система NT моделирует файловую систему VMS. Она включает экстентные файлы, возможности прямого и асинхронного ввода-вывода, зеркалирования и расщепления дисков.

Если работа с таблицей ограничивается возможностями подсистемы ввода-вывода, необходимо исследовать запросы, которые вызывают ввод-вывод. Если эти запросы реализуют произвольный доступ к дискам, например если многие пользователи независимо запрашивают индивидуальные записи, то имеющиеся возможности конкатенации дисков в СУБД полностью адекватны распределению нагрузки доступа по множеству дисков (при достаточно полном заполнении пространства таблицы).Если обращения по своей природе последовательны, в частности если один или несколько пользователей должны просматривать каждую строку таблицы, то больше подходит механизм расщепления дисков.

Обычно СУБД делят таблицу на несколько относительно больших сегментов и размещают данные равномерно по этим сегментам. Главное отличие между конкатенацией СУБД и функцией расщепления заключается в размещении смежных данных. Когда диски конкатенируются друг с другом, последовательное сканирование представляет собой тяжелую нагрузку для каждого из дисков, но эта нагрузка носит последовательный характер (только один диск участвует в обслуживании запроса).


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

По мере роста размеров и важности баз данных процедуры резервного копирования, которые выполняются с блокировкой доступа к СУБД, становятся практически неприемлемыми. При реализации резервного копирования в оперативном режиме(режиме on-line) могут возникнуть достаточно сложные вопросы по конфигурированию соответствующих средств, поскольку резервное копирование больших томов данных, находящихся в базах данных, приводит к очень интенсивной работе подсистемы ввода-вывода. Резервное копирование в оперативном режиме часто вызывает очень высокий уровень загрузки дисков и шины SCSI, что приводит к низкой производительности приложений. Поэтому особое внимание обычно уделяется конфигурациям всех устройств, вовлеченных в процессы резервного копирования.


USB становится реальностью


Ранее воспринимавшаяся как нечто второстепенное, универсальная последовательная шина (USB) наконец-то начала выходить на первый план. Сегодня для этого интерфейса выпускаются мыши, клавиатуры, модемы, принтеры, внешние накопители, динамики и сканеры, а на подходе череда других устройств. Шина USB имеет массу преимуществ, включая отличное быстродействие (до 12 Мбит/с), совместимость с Plug & Play и возможность "горячей" замены устройств (т. е. компоненты можно подключать и отключать при работающем ПК).

Если ваша машина собрана не более трех лет назад, скорее всего, она имеет встроенные порты USB (поищите пару маленьких прямоугольных разъемов на задней панели ПК). В противном случае вы можете добавить в систему поддержку USB, проведя недорогую модернизацию. Для начала загляните в документацию и выясните, имеет ли системная плата вашего компьютера поддержку USB. Если да, то поинтересуйтесь у поставщика, имеется ли адаптер, необходимый для связи гнезда на системной плате с задней панелью. В случае его отсутствия вам придется купить специальную плату расширения, например 2-Port USB Upgrade фирмы Entrega (около 30 долл.).

Имейте в виду, что для реализации возможностей USB вам потребуется Windows 98. Версия Windows 95 OSR2 (она поставлялась с большинством ПК примерно в течение года до выхода Windows 98) теоретически поддерживает USB, но по большей части это лишь заявление. Многие периферийные устройства для шины USB, например накопитель Iomega Zip, в среде Windows 95 просто не работают.

Еще один высокоскоростной интерфейс (но он, возможно, вам не понадобится) - IEEE 1394. Он также известен как FireWire (торговая марка фирмы Apple Computer) и I.Link (версия компании Sony). Этот интерфейс способен передавать данные со скоростью до 25 Мбайт/с. В настоящее время такой вид связи применяется преимущественно в цифровых видеокамерах и некоторых дорогих жестких дисках. Обещано, что в будущем появятся и другие периферийные устройства, например сканеры, но пока эта технология нужна лишь очень узкому кругу пользователей. Кроме того, доступные ныне адаптеры IEEE 1394 тоже недешевы: плата Adaptec HotConnect 8920 1394 обойдется вам примерно в 300 долл.



Установка диска


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

Если же вы все-таки готовы потрудиться самостоятельно, убедитесь в том, что выбранный вами жесткий диск упакован в коробку для розничной продажи и укомплектован всем необходимым: кабелями, документацией и ПО для копирования содержимого старого жесткого диска на новый. Особенно просты в установке диски фирмы Seagate: на корпусе каждого из них нанесены простые инструкции, а в комплект поставки входят пошаговое руководство и программа, анализирующая конфигурацию компьютера и выдающая затем советы конкретно для данного ПК.

Любая машина, выпущенная после 1994 г., должна иметь на системной плате стандартный дисковый интерфейс EIDE, поэтому вы сможете установить любой из новейших жестких дисков этого типа. Высокопроизводительные накопители с интерфейсом SCSI обычно стоят на 100 долл. дороже, чем диски EIDE той же емкости, и, кроме того, требуют, чтобы в ПК был установлен SCSI-контроллер. Такие накопители предназначены, например, для работы с файловыми серверами. При использовании SCSI-диска с обычными офисными приложениями вы вряд ли заметите (если вообще заметите) его существенное преимущество в скорости перед моделью с интерфейсом EIDE.

Если возраст вашего ПК превышает три года, есть реальная вероятность, что его BIOS не имеет непосредственной поддержки дисков емкостью более 8,4 Гбайт. К счастью, почти все накопители поставляются с установочными программами, позволяющими обойти это ограничение. Но даже тогда вам все равно может потребоваться обновить BIOS, так как данная операция не только позволит работать с дисками большого объема, но и даст гарантию того, что ваш ПК будет правильно обрабатывать данные начиная с приближающегося января 2000 г.


При установке нового жесткого диска в старую машину не следует ожидать от него сверхвысокой производительности. Последние модели накопителей оснащены новейшей версией интерфейса EIDE, известной как UltraDMA/66 или UltraATA/66, которая теоретически позволяет передавать данные со скоростью до 66 Мбит/с. Однако поддержку UltraDMA/66, реализованную на системной плате, имеют лишь новейшие модели ПК; большинство машин, выпущенных за последние три года, удовлетворяют стандарту UltraDMA/33. А компьютеры, изготовленные еще раньше, обычно поддерживают EIDE лишь в режиме 4, при котором скорость передачи данных примерно вдвое ниже, нежели при UltraDMA/33.

Успокаивает в данной ситуации то, что все накопители стандарта UltraDMA/66 совместимы с более старыми интерфейсами EIDE, а теряемая при этом производительность не столь высока, как можно было бы вообразить. Например, дисковод, подключенный через UltraDMA/33, работает обычно на 20% медленнее, чем подключенный через UltraDMA/66. Если же вы все-таки хотите получить от нового диска все, на что он способен, установите вместе с ним еще и плату расширения для поддержки UltraDMA/66, скажем, Ultra66 ценой около 60 долл. фирмы Promise Technology (www. promise.com). Это устройство соответствует спецификации Plug & Play, и потому его установка относительно несложна.


Устройство плавающей точки (FPU)


Конвейерное устройство плавающей точки построено в соответствии со спецификациями архитектуры SPARC-V9 и стандарта IEEE 754. Оно состоит из пяти отдельных функциональных устройств и обеспечивает выполнение операций с плавающей точкой и графических операций. Реализация раздельных исполнительных устройств позволяет UltraSPARC-1 выдавать и выполнять две вещественных операции в каждом такте. Операнды-источники и результаты операций хранятся в регистровом файле емкостью 32 регистра. Большинство команд полностью конвейеризованы имеют пропускную способность 1 такт, задержку в 3 такта и не зависят от точности операндов, имея одну и ту же задержку для одинарной и двойной точности. Команды деления и вычисления квадратного корня не конвейеризованы и без остановки процессора выполняются за 12/22 такта (одинарная/двойная точность). Команды, следующие за командами деления/вычисления квадратного корня, могут выдаваться, выполняться и изыматься из обработки для фиксации результата в регистровом файле до момента завершения команд деления/вычисления квадратного корня. Процессор поддерживает модель точных прерываний путем синхронизации конвейера плавающей точки с целочисленным конвейером, а также с помощью средств прогнозирования исключительных ситуаций для операций с большим временем выполнения. FPU может работать с нормализованными и ненормализованными числами с одинарной (32 бит) и двойной точностью (64бит), а также поддерживает операции над числами с учетверенной точностью(128 бит).

Устройство FPU тесно взаимодействует с целочисленным конвейером и способно без каких-либо дополнительных задержек выполнять чтение вещественного операнда из памяти и следующую за ней операцию. IEU и FPU имеют выделенный интерфейс управления, который обеспечивает диспетчеризацию операций, выбранных PDU в FPU. Устройство предварительной выборки и диспетчеризации команд выполняет распределение находящихся в очереди команд в FPU. IEU управляет частью операций, связанных с D-кэшем, а FPU выполняет собственно операции обработки данных. При выполнении команд вещественной арифметики целочисленное устройство и FPU совместно определяют наличие зависимостей по данным. Существующий между ними интерфейс включает также взаимную синхронизацию при появлении исключительных ситуаций FPU. Для снижения взаимного влияния и увеличения общей производительности в FPU обеспечивается дополнительная буферизация команд, реализованная с помощью очереди размером в три команды.



Устройство предварительной выборки и диспетчеризации команд


Устройство предварительной выборки и диспетчеризации команд процессораUltraSPARC-1 (PDU) обеспечивает выборку команд в буфер команд, окончательную их дешифрацию, группировку и распределение для параллельного выполнения в конвейерных функциональных устройствах процессора. Буфер команд емкостью12 инструкций позволяет согласовать скорость работы памяти со скоростью обработки исполнительных устройств процессора. Команды могут быть предварительно выбраны из любого уровня иерархии памяти, например, из кэш-памяти команд(I-кэша), внешней кэш-памяти (Е-кэша) или из основной памяти системы.

В процессоре реализована схема динамического прогнозирования направления ветвлений программы, основанная на двух битовой истории переходов и обеспечивающая ускоренную обработку команд условного перехода. Для реализации этой схемы с каждыми двумя командами в I-кэше связано специальное поле, хранящее двухбитовое значение прогноза. Таким образом, UltraSPARC-1 позволяет хранить информацию о направлении 2048 переходов, что на сегодняшний день превышает потребности многих современных прикладных программ. Поскольку направление перехода может меняться каждый раз, когда обрабатывается соответствующая команда, состояние двух бит прогноза должно каждый раз модифицироваться для отражения реального исхода перехода. Эта схема особенно эффективна при обработке циклов.

Кроме того, в процессоре UltraSPARC-1 с каждыми четырьмя командами вI-кэше связано специальное поле, указывающее на следующую строку кэш-памяти, которая должна выбираться вслед за данной. Использование этого поля позволяет осуществлять выборку командных строк в соответствии с выполняемыми переходами, что обеспечивает для программ с большим числом ветвлений практически туже самую пропускную способность команд, что и на линейном участке программы. Способность быстро выбрать команды по прогнозируемому целевому адресу команды перехода является очень важной для оптимизации производительности суперскалярного процессора и позволяет UltraSPARC-1 эффективно выполнять "по предположению"(speculative) достаточно хитроумные последовательности условных переходов.

Используемые в UltraSPARC-1 механизмы динамического прогнозирования направления и свертки переходов сравнительно просты в реализации и обеспечивают высокую производительность. По результатам контрольных испытаний UltraSPARC-188% переходов по условиям целочисленных операций и 94% переходов по условиям операций с плавающей точкой предсказываются успешно.



Устройство управления памятью (MMU)


Высокая суперскалярная производительность процессора поддерживается соответствующей скоростью поступления для обработки команд и данных. Обычно эта задача ложится на иерархию памяти системы. Устройство управления памятью процессора UltraSPARC-1 выполняет все операции обращения к памяти, реализуя необходимые средства поддержки виртуальной памяти. Виртуальное адресное пространство задачи определяется 64-битовым виртуальным адресом, однако процессор UltraSPARC-1 поддерживает только 44-битовое виртуальное адресное пространство. Соответствующее преобразование является функцией операционной системы.

В свою очередь, MMU обеспечивает отображение 44-битового виртуального адреса в 41-битовый физический адрес памяти. Это преобразование выполняется с помощью полностью ассоциативных 64-строчных буферов: iTLB С для команд и dTLB С для данных. Каждый из этих буферов по существу представляет собой полностью ассоциативную кэш-память дескрипторов страниц. В каждой строке TLB хранится информация о виртуальном адресе страницы, соответствующем физическом адресе страницы, а также о допустимом режиме доступа к странице и ее использовании. Процесс преобразования виртуального адреса в физический заканчивается сразу, если при поиске в кэш-памяти TLB происходит попадание(соответствующая строка находится в TLB). В противном случае замещение строки TLB осуществляется специальным аппаратно-программным механизмом. MMU поддерживает четыре размера страниц: 8Кбайт, 64Кбайт, 512Кбайт и 4Мбайт.

Как уже было отмечено, MMU реализует также механизмы защиты и контроля доступа к памяти. В результате выполняющийся процесс не может обращаться к адресному пространству других процессов, и, кроме того, гарантируется заданный режим доступа процесса к определенным областям памяти С на базе информации о допустимом режиме доступа к страницам памяти. Например, процесс не может модифицировать страницы памяти, доступ к которым разрешен только по чтению или которые зарезервированы для размещения системных программ.

Наконец, MMU выполняет функции определения порядка (приоритета) обращений к памяти со стороны ввода/вывода, D-кэша, I-кэша и схем преобразования виртуального адреса в физический.



Устройство загрузки/записи (LSU)


LSU отвечает за формирование виртуального адреса для всех команд загрузки и записи (включая атомарные операции), за доступ к кэш-памяти данных, а также за буферизацию команд загрузки в случае промаха D-кэша (в буфере загрузки) и буферизацию команд записи (в буфере записи). В каждом такте может выдаваться для выполнения одна команда загрузки и одна команда записи.



V. Выводы


(Выводы, к которым я пришел после 12 дней пути при означенных условиях)

GPS - я в очередной раз отказался от его покупки по ряду нижеследующих причин. Использовать связку GPS - Palm -удобно, но не надежно, возможны программные и механические сбои. (Существует также вариант работы GPS и КПК на базе WindowsCE. Смотрите приведенный ниже список ссылок). Кончно интересно знать высоту, координаты местности, но не за 200 грин. Если брать GPS в отдельности, то в отечественных условиях, когда кординаты местности остаются засекреченными или просто отсутствуют, а привязка карт, как следствие, становится невозможна, он малопригоден для полноценного ориентирования. Существует два варианта привязки карты, что обеспечило применимость GPS на 100%. Первый - привязать карту дома, но тогда надо знать координаты 2-х и более точек на карте предстоящего маршрута, что в условиях нашей страны практически не возможно (правда встречаются в интернете координаты некоторых точек, но их ничтожно мало). Найти же карту с информацией о координатах местности, которую можно было бы привязать по этим данным, практически невозможно. Второй вариант - калибровка отцифрованной карты на местности. Он больше подходит для условий стран СНГ, но вопрос надежности отметает данный вариант. Если и использовать данный вариант, то только как вспомогательный. В условия Подмосковья, киллометровки которого лежат в сети и информация по привязке присутствует на карте (генштабовские карты) - вопрос целесообразности GPS решается однозначно в пользу GPS. Здесь можно еще дома рассчитать все: и ключевые точки, и расстояния, и пути движения... На мой взгляд, если брать карту удаленного района, привязка которой невозможна из-за отсутствия информаци, тогда GPS становится лишь дорогой игрушкой, на выручку придут компас и знание картографии.

Palm Vx - вещь удобная и полезная, но не обязательная. Я не пожалел ни о его покупке, ни о том, что взял его с собой. Как средство навигации его не стоит использовать, точнее на него можно расчитывать, как на вспомогательное средство.
Основными должны оставаться карта, компас и бумажный носитель информации с карандашем (не ручкой, заметьте). С помощью КПК очень удобно вести путевые заметки - они уже сразу отцифрованы; работа в разных природно-погодных условиях устойчива, однако ключевую информацию я рекомендовал бы дублировать на бумажном носителе. Одной батарейки типа "Крона" хватает на 2 полноценных зарядки (6-10 дней пути) и пару суток поддержания заряда на уровне 20-30% при непрерывном включении зарядной батареи. При работе Palm Vx 2-4 часа в день, заряжать его придется раз в 3-4 дня. Зная это, легко расчитать расход батарей (как происходит зарядка на более дорогих батарейках Energizer я не проверял). Таким образом за 12 дней я израсходовал всего лишь 1 батарейку. В случае непогоды (снег/дождь) использование Palm затрудняется (экран может намокнуть, несмотря на защитную пленку), однако в лагере он заменит и книгу, и игрушку, и дневник. Для путешествий я бы рекомендовал 505 серию, которая расширяется дополнительными картами памяти и имеет цветной дисплей (что менее значимо).

Телефон. В любом путешествии связь необходима, будь это рация или какое-либо другое устройство. Мобильный телефон сейчас стал предметом повседневной жизни и возможность использовать его в походе решает важную проблему связи в пути. Тем не менее, использование телефона имеет ряд особенностей и ограничений. Заряда одной батареи хватило ровно на 12 дней при условии, что работал он в общей сложности 3-5 часов, включался при этом 20-30 раз (поиск сети при включении наиболее ресурсоемкая операция для батарей) и хранился он в рюкзаке, то есть при температурном режиме улицы (правда на ночь телефон перекочевывал в мой спальник, когда температура опускалась до -20`С). Звонить домой или писать друзьям, конечно, здорово, но в нашей стране сотовая связь присутствует в основном в крупных населенных пунктах, а туристические маршруты проходят, как правило, вдали от них, таким образом, использование телефона по большей мере становится невозможным.Если вы и взяли с собой телефон, то стоит отключить его аккумулятор, завернуть в непромокаемый пакет и убрать в нагрудный карман в тепло. Если вы путешествуете на машинах или ваш маршрут проходит вблизи крупных населенных пунктов, то телефон наверняка вам пригодится. Он-лайн информация (если говорить о электронной почте или подобной связи) всегда дорога', но надо учитывать, что это вылетит вам в копеечку, цены за роуминг не самые низкие, а один сеанс связи длится минимум 2 минуты.

В следующий поход я точно возьму с собой Palm. При условии прохождения похода вблизи населенных пунктов - телефон (в горную местность, скорее всего, я его не буду брать). GPS останется у знакомых. Если же в моих руках будет карта, привязать которую я смогу дома, тогда я постараюсь взять и GPS.

Караванов Александр

karch@cyber.ru
май 2002 года


Вглубь или вширь?


Два термина характеризуют две стратегии масштабирования: масштабирование вглубь или масштабирование вширь.

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

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

Нельзя утверждать, что какой-либо из этих подходов изначально лучше другого: каждый имеет свои преимущества. И сегодня компании, занимающиеся электронной коммерцией, выбирают прагматические стратегии роста, которые предусматривают масштабирование как вглубь, так и вширь. По мере роста числа транзакций и количества посетителей узлов Web-серверы и серверы приложений масштабируются за счет добавления других небольших серверов, на которых работают многочисленные копии программного обеспечения.

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

Брайан Ричардсон, аналитик компании Meta Group, считает, что масштабирование вширь - наиболее приемлемый способ для Web-серверов и серверов приложений, поскольку нет необходимости, чтобы каждая транзакция обрабатывалась одной и той же копией приложения. Серверы баз данных, однако, лучше работают в том случае, когда используется один экземпляр приложения. Это предотвращает возникновение конфликтов при выполнении транзакций - к примеру, торговая компания не может обещать доставить товар, которого еще нет на складе.

Ричардсон считает, что "накопительный" подход к масштабированию Web-серверов и приложений с одно- или двухпроцессорными платформами не только прост, но и дешев.

"В данном случае важны не общая стоимость владения и вычислительная эффективность с точки зрения перспектив последующей обработки, - сказал он. - Здесь важнее скорость развертывания системы. Насколько быстро вы сможете приступить к использованию нового приложения? Насколько быстро вы сможете начать обрабатывать транзакции электронной коммерции со своими бизнес-партнерами? Как правило, общая стоимость владения играет второстепенную роль по сравнению с гибкостью и адаптируемостью решения. Нередко куда важнее легко и быстро установить небольшие серверы и сократить срок реализации проекта на полгода".



Виртуальные процессоры


Напомним, что приложение может узнать о конфигурации раздела, на котором оно запущено. Более того, нормальное PARIX-приложение обязательно использует эту информацию для организации взаимодействия между процессорами. Некоторые приложения требуют жестких ограничений на конфигурацию своего раздела. Например, приложение может проверять количество процессоров в разделе и завершать свою работу в случае, если количество процессоров меньше 4. Можно ли запустить такое приложение на 2-процессорном разделе? Да, можно.

PARIX позволяет организовывать виртуальную конфигурацию раздела. Так, можно потребовать, чтобы раздел, который имеет размеры (2,1,1) выглядел для приложения как раздел (2,2,1). Такая процедура называется организацией виртуального раздела.

Существует ограничение: каждый физический процессор может эмулировать не более 16 виртуальных. Так что на Parsytec CC/16 нельзя организовать виртуальный раздел с числом процессоров более 256.

Когда полезны виртуальные разделы?

При отладке. Разумно отлаживать программы на малых физических разделах (чтобы другие пользователи могли отлаживать свои программы параллельно на других разделах). При этом можно эмулировать крупный раздел.

При особых требованиях приложения к конфигурации раздела. Так, если приложение требует квадратной конфигурации (4,4,1), можно на имеющимся линейном 16-процессорном разделе создать виртуальный ``квадратный''.

Для создания виртуального раздела используются аргументы к команде run:

px run -a earth 4 2 2 test.px

запускает приложение на физическом разделе earth, но приложение ``видит'' виртуальный раздел с конфигурацией (4,2,2).



Возможности масштабирования


Обычно расширение системы выполняется с помощью встроенных кабельных

соединений, а также установки в гнезда расширения ServerNet плат маршрутизаторов.

Кроме того, добавление каждого ЦП обеспечивает увеличение числа линий связи

ServerNet и эффективно расширяет общую пропускную способность в/в системы.

В отличие от других массивно-параллельных архитектур сети ServerNet не

ограничены только регулярными топологиями типа гиперкубов или торов. Сеть

ServerNet позволяет увеличить число линий связи в любом месте, где требуется

дополнительная пропускная способность. Приложения с умеренными требованиями

к системе межсоединений могут довольствоваться минимальным количеством

связей, а следовательно, использовать достаточно дешевую сеть, в то время

как приложения с высокой интенсивностью обработки данных могут рассчитывать

на организацию сети с большей связностью.

Сегодня в области масштабируемых распределенных вычислений начали широко

использоваться стандартные системы UNIX. В ряде научных приложений кластеры

рабочих станций стали заменять суперкомпьютеры. В отличие от NonStop Kernel,

которая сразу же была разработана как распределенная операционная система,

большинство доступных ОС таким свойством не обладают. В качестве механизма

масштабирования в этих системах обычно используется SMP-обработка. Этот

механизм предполагает реализацию в системе единой разделяемой памяти, разделяемой

системы в/в и когерентности кэш-памяти.

Архитектура ServerNet обеспечивает гибкую реализацию разделяемой памяти,

и несколько ЦП могут быть связаны друг с другом шиной когерентности. Вместо

использования единой глобальной памяти, память в системе распределена по

ЦП. Это приводит к неодинаковому времени доступа, но аппаратура поддерживает

глобальное адресное пространство и когерентность кэш-памяти.

С целью повышения производительности в каждом ЦП поддерживается свое

собственное локальное пространство памяти. В каждом процессоре локальная

память начинается с физического адреса 0, ее размер задается в процессе


установки конфигурации системы.

В архитектуре можно выделить три отдельных класса памяти. Наименьшее

время доступа имеет локальная память, доступ к глобальной памяти, размещенной

на плате локального процессора, занимает больше времени, а доступ к глобальной

памяти на плате другого ЦП является самым продолжительным. Локальная память

каждого ЦП содержит копию части программного кода и данных операционной

системы, доступ к которым разрешен только по чтению. Кроме того, в локальную

память операционная система может поместить некоторые частные для процессора

данные. Оценка показывает, что размещение этих объектов в локальной памяти

и случайное распределение глобальной памяти будут обеспечивать производительность,

сравнимую с производительностью системы, реализующей механизмы единой глобальной

памяти.

Системы с разделяемой памятью могут функционировать либо в симплексном,

либо в дуплексном режиме. Система, построенная на узлах SMP и обеспечивающая

отказоустойчивость программными средствами, может использовать только симплексный

режим. Полностью аппаратная отказоустойчивая система с масштабируемостью

SMP требует реализации дуплексного режима работы.

Шина когерентности может также поддерживать работу гибридных распределенных

систем, в которых распределенная память используется для обмена данными

между процессорами. В этом случае система распределяет основную часть памяти

под "локальные нужды" процессоров, а в глобальную память помещает только

разделяемые данные.



Рисунок 6.

Распределение памяти в четырехпроцессорной SMP-системе


Время покупать


Уэйн Керночан, аналитик компании Aberdeen Group, согласен с этим мнением.

"Честно говоря, использование множества небольших серверов - это быстрый, но грубый подход, - отметил он. - Он применим с такими Web-приложениями, как электронная почта или служба каталогов, которые просто 'перебрасываются' на другой сервер... Такой подход имеет смысл, когда вы изо всех сил торопитесь начать работу, и отдаленное будущее вас не очень интересует".

Однако Дэвид Фридландер, аналитик компании Giga Information Group, уверен, что "именно за счет масштабирования вглубь, а не вширь вы сможете добиться, чтобы одному экземпляру приложения доставалось больше процессорных ресурсов. Если вы работаете с биржей ценных бумаг или обрабатываете тысячи финансовых транзакций в секунду, вам потребуется такое более мощное процессорное ядро".

"В случае с одним крупным сервером вам не нужно столько внимания уделять сети, так как она находится внутри системы и это намного упрощает администрирование, - добавил Керночан. - Это важно, поскольку наши исследования показывают, что административные затраты с течением времени перекрывают все остальные расходы".

Но с точки зрения краткосрочной перспективы расходы на приобретение, а не на поддержку сервера немаловажны для большинства компаний, работающих в области электронной коммерции. Цены на серверы варьируются в весьма широком диапазоне, но восьмипроцессорный компьютер может обойтись компании в два раза дороже, чем двухпроцессорный. Так или иначе, соотношение цен не в пользу более крупного компьютера до тех пор, пока дело ограничивается четырьмя процессорами или пока база данных не станет очень большой.

Стоит помнить о том, что операционные системы могут по-разному поддерживать различные подходы к масштабированию. Так, теоретически операционная система Windows 2000 Datacenter Server, которую готовит к выпуску корпорация Microsoft, в состоянии сделать масштабирование вглубь более приемлемым и более эффективным, нежели масштабирование вширь. Datacenter дает возможность пользователям начать с небольшого сервера и добавлять в систему вплоть до 32 процессоров. Но, по мнению Ричардсона, масштабирование в таком стиле, скорее всего, в конечном итоге обойдется компании дороже, чем масштабирование за счет приобретения небольших серверов.

В свете продолжающегося быстрого роста оборотов электронной коммерции весьма вероятно, что каждая стратегия, будь то масштабирование вглубь или вширь, по-прежнему будет находить своих сторонников.



Вся система - на плате расширения


Фирмы PowerLeap и Evergreen разработали еще два новых интересных продукта для модернизации процессора, но ко времени проведения тестирования они еще не были готовы. Компания PowerLeap будет выпускать плату, включающую ЦП, графическую и звуковую подсистемы, модем на 56 кбит/с, сетевые средства Ethernet и дисковые интерфейсы - по существу, установив в один из разъемов расширения это изделие, вы тем самым заменяете всю системную плату. Первая версия продукта будет выполнена как плата для шины ISA (300 долл.), содержащая процессор AMD K6-III с частотой 400 МГц или выше, 64-Мбайт ОЗУ, 3D-графический адаптер Trident с 8-Мбайт ОЗУ и системный набор микросхем VIA Apollo. Следом за ним будет выпущена версия для шины PCI.



производит многопроцессорные вычислительные системы архитектуры


Фирма Parsytec (Германия) производит многопроцессорные вычислительные системы архитектуры MIMD. Машина Parsytec CC/16 представляет собой 16-процессорную систему, в которой имеется 16 узлов (по одному процессору на узел).
При ближайшем рассмотрении, выясняется, что каждый узел представляет собой ``нормальную'' машину, со своим жестким диском, своей оперативной памятью. Более того, на каждом узле запущена своя копия операционной системы. Что же позволяет считать эту машину параллельным суперкомпьютером? А вот что: все узлы оборудованы специальным коммуникационным устройством, которое позволяет осуществлять быстрый обмен информацией между узлами. Таким образом, появляется возможность синхронизации процессов, запущенных на разных узлах, и информационного обмена.
Итак, Parsytec CC - это 16 компьютеров, связанных быстрой сетью. Возможности параллельного исполнения задания опираются на работу с ``быстрыми связями''. Интерфейсом к параллельной системе является операционная система PARIX (точнее Embedded PARIX), позволяющая скрыть от пользователя детали синхронного запуска задач.

Эта статья открывает серию материалов,


Намиот Д.Е., Сиховец Л.Б.
Эта статья открывает серию материалов, подготовленных сотрудниками Inetique, посвященных технологии смарт-карт и, в частности, технологии Java Card.
Об авторах: к.ф.-м.н. Дмитрий Намиот работает с Java технологиями последние 6 лет. Лев Сиховец является Sun Certified Programmer for the Java Platform 2, имеет более чем пятилетний опыт работы с Java. В настоящий момент оба автора сотрудничают с компанией Inetique, занимающейся разработками в области Java. Вы можете связаться с авторами и получить дополнительную информацию через сайт http://www.inetique.ru.
Java Card API позволяет программам, написанным на языке Java, исполняться на интеллектуальных картах и других устройствах с ограниченными ресурсами.
Интеллектуальные карты (смарт-карты) представляют собой сегодня одни из самых маленьких вычислительных устройств. Например, вы можете встретить устройство с 24 Kb памяти. Естественно, в таких условиях возможна поддержка только некоторого подмножества языка Java.
Виртуальная Java Card машина состоит из двух частей, одна из которых работает непосредственно на самой карте, а другая – на хост-машине вне карты. Вне Java Card исполняются такие процессы, как загрузка классов, проверка байт-кода, оптимизация и т.п. Критерием такого разделения является наличие или отсутствие ограничений на выполнение процесса во время работы программы.
В дополнение к собственно языку Java технология Java Card поддерживает среду исполнения, что влючает в себя вопросы работы с памятью карты, передачи данных, безопасности и выполнения программ. Для Java Cards эта среда соответствует стандарту ISO 7816.
Основная задача этой среды есть строгое разделение собственно смарт-карты и Java приложения. Среда служит своеобразным прокси-сервером, скрывающим от приложения детали собственной реализации. Взаимодействие с программой осуществляется через стандартизованные интерфейсы высокого уровня.
Приложения, написанные для платформы Java Card называются апплетами. Название было выбрано из схожести модели выполнения со стандартными апплетами, исполняемыми в виртуальной машине Java (JVM) веб-браузера.
Платформа Java Card включает в себя три части:
Виртуальную машину Java Card 2.1 Virtual Machine (JCVM). Спецификация определяет подмножество языка Java и спецификацию JVM, подходящую для смарт-карт. Программные интерфейсы Java Card 2.1 Application Programming Interface (API). Спецификация описывает Java пакеты и классы для программирования смарт-карт Программные интерфейсы Java Card 2.1 Application Programming Interface (API). Спецификация описывает Java пакеты и классы для программирования смарт-карт

Выбор конфигурации сервера СУБД


Хотя многих пользователей часто интересуют некоторые рекомендации по выбору конфигурации той или иной системы, полезность этих рекомендаций в значительной степени зависит от анализа самого приложения. Эффективность работы самого приложения и СУБД намного важнее, чем конфигурация хост-машины. Имеются буквально сотни примеров небольших изменений, проведенных в приложении или в схеме базы данных, которые обеспечивали 100- или 1000-кратное увеличение производительности системы. На общую производительность системы весьма существенное воздействие может оказывать хорошо продуманная индексация. После начальной инсталляции системы обязательно нужно произвести сбор статистики об ее работе, чтобы выяснить необходимость внесения изменений в базу данных. Часто оказывается возможным улучшить производительность приложения путем реорганизации базы данных даже без обращения к исходному коду приложения.

Другим соображением, которому уделяется недостаточно внимания, но которое часто оказывает огромное воздействие на результирующую производительность системы, являются конфликты по внутренним блокировкам. Если выбрана неоптимальная стратегия блокировок, то система может оказаться очень плохо работающей. Следует также отметить, что каждая СУБД имеет огромное число настраиваемых параметров, и некоторые из них могут серьезно воздействовать на общую производительность системы.

Ниже перечислены вопросы, ответы на которые позволяют обобщить процесс выбора конфигурации сервера СУБД.

Какая используется СУБД?Какие используются мониторы транзакций (если таковые вообще применяются)?Можно ли использовать систему в конфигурации клиент-сервер?Сколько одновременно активных пользователей должна поддерживать система?Можно ли выделить основной или доминирующий шаблон (образец) обращения к системе? Какие запросы доминируют в нагрузке?Какова стратегия индексации? Какие запросы будут оптимизированы с помощью индексации (например, преобразованы для реализации произвольного доступа к данным вместо последовательного) и какие запросы должны быть реализованы с помощью полного или частичного сканирования таблицы?Насколько велик чистый размер базы данных?Имеется ли достаточное количество дисковых накопителей и главных адаптеров SCSI, сконфигурированных для обеспечения обработки предполагаемой нагрузки? Имеются ли отдельные диски для журналов СУБД и архивов?Имеется ли достаточная емкость дисковой памяти для хранения необработанных данных, индексов, временных табличных пространств, а также место для возможного увеличения объема данных?Достаточно ли число процессоров, сконфигурированных для работы с предполагаемым количеством пользователей?Требуется ли специальная выделенная сеть для организации связи между клиентскими системами и сервером?Если предполагаемая нагрузка ориентирована на интенсивное внесение обновлений в базу данных, имеется ли место в конфигурации для NVRAM?Согласована ли предполагаемая стратегия резервного копирования с типом, числом и размещением устройств резервного копирования SCSI?



Выбор раздела


Разделом называется набор процессоров, выделенных в исключительное владение данному пользователю (точнее, запущенному на этом разделе приложению пользователя). Обычно, раздел - это часть машины, но он также может быть и всей машиной. Разделы могут перекрываться: большой раздел может состоять из более мелких. При этом, если более мелкий раздел занят, то большой раздел недоступен: блокируется.

Разделы имеют атрибуты. Основным атрибутом является количество процессоров.

Каждый раздел может использовать Entry-узел и IO-узлы машины для операций ввода-вывода.

Управление разделами осуществляется командой OC PARIX nrm (Network Resource Manager). Для просмотра конфигурации разделов, используется команда

px nrm -pc

которая выводит список определенных в системе разделов и их атрибуты:

ultra10% px nrm -pc

Partition | Attributes | Servers

----------+------------+--------

p1 | |

earth | p16 |

east | p4 |

north | p4 |

south | p4 |

west | p4 |

Более подробную информацию даст команда

px nrm -pp

где будет видна привязка разделов к физической конфигурации системы:

ultra10% px nrm -pp

CC Configuration: Wed Jul 24 13:12:23 1996 edited by root@ultra10

CC ParsytecCC: - no init info -

Topologie = using file /epx/epx/nrm/system.rt, Dimensions (16,1,1),

Command Port 12544

Node ultra10 at position (0,0,0) with attributes ( master-epxd

IO-node )

Node cc001736 at position (1,0,0) with attributes ( P-node )

Node cc001737 at position (2,0,0) with attributes ( P-node )

Node cc002245 at position (3,0,0) with attributes ( IO-node )

Node cc002243 at position (4,0,0) with attributes ( IO-node )

Node cc001738 at position (5,0,0) with attributes ( P-node )

Node cc001739 at position (6,0,0) with attributes ( P-node )

Node cc002246 at position (7,0,0) with attributes ( P-node )

Node cc001732 at position (8,0,0) with attributes ( P-node )

Node cc001733 at position (9,0,0) with attributes ( P-node )

Node cc001734 at position (10,0,0) with attributes ( P-node )

Node cc001735 at position (11,0,0) with attributes ( P-node )


Node cc001740 at position (12,0,0) with attributes ( P-node )

Node cc001744 at position (13,0,0) with attributes ( P-node )

Node cc001743 at position (14,0,0) with attributes ( P-node )

Node cc001742 at position (15,0,0) with attributes ( P-node )

Server filesrv with command line (/epx/bin/dserver -h)

Partition p1: corner atoms = (0,0,0) (0,0,0)

servers = ( )

Partition earth: attributes = ( p16 ), corner atoms = (0,0,0)

(15,0,0)

servers = ( )

Partition east: attributes = ( p4 ), corner atoms = (0,0,0)

(3,0,0)

servers = ( )

Partition north: attributes = ( p4 ), corner atoms = (4,0,0)

(7,0,0)

servers = ( )

Partition south: attributes = ( p4 ), corner atoms = (8,0,0)

(11,0,0)

servers = ( )

Partition west: attributes = ( p4 ), corner atoms = (12,0,0)

(15,0,0)

servers = ( )

Следующая команда

px nrm -pa

показывает статус разделов (занят/свободен) и имя пользователя, занявшего раздел. Разделы, помеченные звездочкой являются свободными:

ultra10% px nrm -pa

CC ParsytecCC:

Partition | Used by | Since

----------+--------------+-------------------------

p1 | east |

earth | east |

east | mike@ultra10 | Sat Nov 16 22:52:39 1996

north | * | Mon Nov 11 14:31:58 1996

south | * | Mon Nov 11 14:31:58 1996

west | * | Mon Nov 11 14:31:58 1996

Из данной таблицы видно, что раздел east занят пользователем mike. При этом, блокируется раздел earth, т.к. он перекрывается с east (раздел earth является основным разделом и, естественно, он блокируется при запуске приложения на любом из подразделов), а также блокирован раздел p1, т.к. этот однопроцессорный раздел содержит узел из раздела east. Свободными остались три четырехпроцессорных раздела north, south и west.

Другой способ представления той же информации дает команда

px nrm -pm

которая представляет систему наглядно в виде матрицы, где элементу соответствует один процессор:

ultra10% px nrm -pm

CC ParsytecCC:

Actual users of CC ParsytecCC:

A : mike@ultra10

Allocation of CC ParsytecCC:

AAAA************


Выбор вычислительной модели


В большинстве прикладных систем СУБД можно выделить три логических части: пользовательский интерфейс (средства представления), обеспечивающий функции ввода и отображения данных; некоторую прикладную обработку, характерную для данной предметной области; и собственно сервисы СУБД. Пользовательский интерфейс и прикладная обработка обычно объединены в одном двоичном коде, хотя некоторые из наиболее продвинутых приложений теперь обеспечивают многопотоковую фронтальную обработку, отделенную от средств представления.

Если в системе можно реализовать модель вычислений клиент-сервер, отделяющую фронтальную (прикладную) обработку и средства представления от поставщика услуг СУБД, ее использование обычно обеспечивает существенное улучшение общей производительности системы. Такая организация системы позволяет наиболее важному ресурсу (серверу СУБД) работать без помех на своей собственной хост-машине. Это в первую очередь справедливо для систем, в которых работа средств представления связана с управлением сотнями или тысячами терминалов.



Вычислительная среда AVFlex


Материал предоставлен компаниией IntegProg (www.integprog.ru)

Дополнительная информация - Data General (www.dg.com)

Что такое AVFlex?

Ключевые возможности: разбиение системы и услуги среды AVFlex

Компоненты среды AVFlex

Гибкость: Адаптивность к изменениям рабочих нагрузок

Разбиение систем

Гибкость: Адаптивность к Новым Приложениям

Защита инвестиций: адаптивность к новым чипам компании Intel

Защита инвестиций: средства хранения данных

Защита инвестиций: защита важнейшей информации

Защита инвестиций: интегрированное управление системами

Защита инвестиций: операционная система DG/UX

Пример использования AVFlex



X-Fi: имеющий уши да услышит


Евгений Патий, IT News

Немногие сейчас помнят, что еще два десятка лет назад персональные компьютеры были "немыми" (если не принимать во внимание небольшой динамик PC Speaker). Энтузиастами предпринимались отчаянные попытки снабдить ПК хоть какими-нибудь звуковыми способностями, например, "на коленке" в массовых количествах паялись "ковоксы", подключаемые к параллельному порту. И только 16 лет назад, с появлением легендарного Sound Blaster от Creative Labs, персональный компьютер зазвучал по-настоящему. На долгие годы термины "саунд-бластер" и "звуковая карта" стали синонимами, а подавляющее большинство пользователей совершенно искренне полагали, что любой периферийный звуковой адаптер для ПК называется Sound Blaster по определению, независимо от производителя и архитектурных особенностей.

Оригинальный Sound Blaster имел 11-голосный FM-синтезатор, порт MIDI для подключения музыкального оборудования или джойстика и был способен воспроизводить монофонический звук с 8-битной обработкой. Сегодня подобные характеристики выглядят смехотворными, но к моменту выхода на рынок Sound Blaster такое достижение воспринималось не иначе как волшебство. Благодаря грамотной маркетинговой политике и довольно спокойной атмосфере рынка дискретных аудиорешений для ПК, Creative Labs сумела сохранить свои позиции. И это вызывает уважение. Ведь известно множество случаев, когда производитель инновационного устройства не смог должным образом реализовать преимущества и закрепить успех, растворившись среди более проворных и удачливых конкурентов, как, например, легендарная 3Dfx. Достаточно вспомнить Aureal, поглощенную все той же Creative Labs.

Но есть и другие фирмы, выпускающие дискретные решения: Turtle Beach, продолжающая "влачить процветание", новички в лице чипмейкера VIA, автора удачного решения Envy 24, на базе которого создают конечные продукты другие заметные участники, скажем, Terratec, M-Audio и т. д. Однако на общую расстановку сил данный факт практически не влияет.
Кроме того, нельзя не принять во внимание колоссальное давление на рынок дискретных звуковых карт со стороны производителей системных плат с интегрированными аудиорешениями. Если вначале никто не мог внятно объяснить, зачем на системную плату устанавливать убогий интегрированный аудиочип (существуют же роскошные и качественные внешние решения), то теперь точка зрения радикальным образом изменилась - качество "бортового" звука увеличилось в несколько раз, и рядовой пользователь нынче не понимает, зачем тратить деньги на еще один звуковой адаптер, если есть вполне приличный "из коробки"?

Пожалуй, это уже философский вопрос, способный вызвать очередную волну "религиозных" споров, ведь за время эволюции интегрированного аудио - от полной "непотребности" до вполне приемлемого звучания - производители дискретных карт во главе с Creative Labs отнюдь не сидели сложа руки. И то, что в самом начале считалось недосягаемым и излишним, сегодня клеймится определением "базовая функциональность".

Если с колокольни дискретного звука поглядеть на рынок интегированных звуковых решений даже самого высокого уровня (например, Intel High Definition Audio у чипсетов i915/i925), то выяснится: функциональность "бортового" аудио все-таки остается базовой, значительно отстающей от функциональности полноценных внешних карт. Например, Intel HD Audio можно сравнивать лишь с картами уровня Creative Audigy первого поколения - а это уже действительно базовая функциональность.

Надо сказать, что любители качественного звука без сожаления отключают интегрированный аудиочип - здесь и дань традиции, и неудовлетворенность возможностями интегрированного звука, и знание кое-чего и получше. Сегодняшняя наиболее продвинутая архитектура от Creative Labs носит название EMU10K2.5 - этот чипсет установлен на картах Audigy 2 ZS. Несмотря на все достоинства и возможности, EMU10K2.5 не был разработан с нуля - это лишь очередная переработка легендарного EMU10K1, с которого, можно сказать, началась эра звуковых карт с PCI-интерфейсом в лице Sound Blaster Live! Произошло это семь лет назад.


За столь долгий период уже давно не мешало бы создать и что-нибудь более отвечающее духу времени. При всех доработках и инновациях, EMU10K2.5 тем не менее не вылечен от детских болезней EMU10K1 - взять хотя бы хрестоматийную проблему с частотой дискретизации, которая при обработке данных внутри чипсета составляет 48 кГц (а большая часть аудиоматериала изначально имеет частоту дискретизации 44,1 кГц) ...

И вот наступил момент, который в будущем летописцы от IT несомненно назовут эпохальным. Речь идет об анонсе новой разработки от Creative Labs. И это не какой-нибудь EMU10K3 - новая архитектура именуется X-Fi, с ее помощью компания рассчитывает достичь "Xtreme Fidelity". X-Fi предстоит сообщить большую специализированную вычислительную мощность современным персональным компьютерам, обеспечить качественно новый уровень звуковых эффектов в играх и предоставить широкие возможности различным мультимедийным приложениям. Планы почти наполеоновские.

В целом момент кардинальной переработки архитектуры звукового чипсета может сравниться лишь с 1998 годом - тогда пользователи, изучившие вдоль и поперек великолепные ISA-адаптеры Sound Blaster AWE32 и AWE64, трепетали в ожидании Live! с интерфейсом PCI. Надо сказать, их ожидания оправдались, Live! стал настоящим прорывом. Теперь попытаемся выяснить, что может предложить Creative Labs сейчас, когда новые интерфейсы и новые производительные архитектуры персональных компьютеров способны реализовать самые грандиозные идеи на столь популярном поприще, как игры и мультимедиа.


За скорость надо платить


* HP Vectra VL 5 Series 5 с процессором Pentium-166, 16-Мбайт ОЗУ, встроенным графическим адаптером с 2-Мбайт видеопамятью и 2,5-Гбайт жестким диском с интерфейсом EIDE; работает под управлением Windows 95.

** Приблизитель

Впрочем, если вы подумываете о переходе на платформу Windows 2000, то 128 Мбайт памяти вам не помешают. В тестовой лаборатории журнала PC World пока не проводились испытания на производительность в среде этой новой ОС, однако известно, что у нее лучше, чем у Windows 95 и 98, реализовано управление памятью, и потому объемы свыше 64 Мбайт будут использоваться более эффективно (при этом, конечно, имеется в виду, что ваш ПК выполнен на базе набора микросхем, отличного от вышеперечисленных). Но одно лишь наращивание ОЗУ вряд ли придаст вашей старой системе мощность, необходимую для комфортной работы с Windows 2000, - для этого вам потребуется машина по крайней мере класса Pentium II. Кроме того, чем "древнее" ваш ПК, тем больше шансов, что установленная в нем системная плата, видеоадаптер или другие компоненты окажутся не полностью совместимыми с новой ОС. Вывод: если вы собираетесь в ближайшее время перейти на Windows 2000, а ваш ПК для этого потребует существенной модернизации, видимо, все-таки самым мудрым решением будет покупка нового компьютера с предустановленной Windows 2000.



При разработке PowerScale Bull удалось


При разработке PowerScale Bull удалось создать архитектуру с достаточно высокими характеристиками производительности в расчете на удовлетворение текущих и будущих требований приложений пользователей. Это обеспечивается не только путем увеличения числа процессоров в системе, но и переходом на модернизированные поколения процессоров PowerPC. Разработанная архитектура привлекательна как для разработчиков систем, так и для пользователей.
Открытые Системы· # 4(18)/96


Результаты испытаний многих систем на тестах TPC-A, TPC-B, TPC-C и TPC-D продемонстрировали, что на сегодняшний день имеются все предпосылки (необходимая производительность и соответствующее ПО) для полного переноса приложений оперативной обработки транзакций и систем поддержки принятия решений с мэйнфреймов на системы, построенные на базе микропроцессоров. При этом одной из актуальных задач является выбор аппаратно-программной платформы и конфигурации системы.
Оценка конфигурации все еще остается некоторым видом искусства, но к ней можно подойти с научных позиций. Для выполнения анализа конфигурации система (под которой понимается весь комплекс компьютеров, периферийных устройств, сетей и программного обеспечения) должна рассматриваться как ряд соединенных друг с другом компонентов. Ограничения производительности некоторой конфигурации по любому направлению (например, в части организации дискового ввода-вывода) обычно могут быть предсказаны исходя из анализа наиболее слабых компонентов.
Поскольку современные комплексы почти всегда включают несколько работающих совместно систем, точная оценка полной конфигурации требует ее рассмотрения как на макроскопическом уровне (уровне сети), так и на микроскопическом(уровне компонентов или подсистем).


ServerNet создает надежную инфраструктуру для построения как крупномасштабных,
так и небольших отказоустойчивых систем. Данная архитектура позволяет объединить
между собой несколько сотен процессоров и независимо наращивать количество
связей между ними и периферийными устройствами, обеспечивая масштабируемую
полосу пропускания и избыточные каналы передачи данных. Организация связей
типа "каждый с каждым" позволяет предотвратить ненужные промежуточные пересылки
данных, которые истощают ресурсы процессоров и памяти. ServerNet предоставляет
средства создания горячего резерва и балансировки нагрузки путем коммутации
периферийных устройств между собой.
Базирующиеся на ServerNet системы представляют собой существенный шаг
вперед в архитектуре коммерческих отказоустойчивых систем. Одна и та же
архитектура дает возможность построения отказоустойчивых систем как чисто
аппаратными, так и чисто программными средствами. Она обеспечивает также
дополнительную гибкость, поддерживая как модель вычислений в разделяемой
общей памяти, так и создание кластеров с распределенной памятью.
Открытые Системы
· # 3(17)/96


В данном обзоре были рассмотрены основные моменты реализации платформы Java Card. В последущих частях мы остановимся на вопросах инсталляции апплетов, описании JCRE и Java Card API

Запуск PARIX приложения


Для запуска PARIX-приложения используется команда run. При этом вы обязательно должны указать раздел, на котором должно быть запущено приложение.

Раздел можно именовать либо явно (тем именем, которое присвоено разделу администратором - см. px nrm -pc), либо неявно - указанием атрибутов раздела. Последнее более удобно, так как вы можете просто сказать, что ``требуется раздел с 4 процессорами'', и система выберет вам первый свободный 4-процессорный раздел.

Например

px run -a earth hello.px

Запускает PARIX-приложение hello.px на разделе с именем earth,

px run -a p4 hello.px

Запускает ту же программу на 4-х процессорном разделе.

Отметим, что команда run занимает указанный раздел, так что он (вместе с перекрывающимися разделами) становится недоступен для запуска других приложений PARIX.



Защита инвестиций: адаптивность к новым чипам компании Intel


В сегодняшних условиях жесткой конкуренции защита инвестиций предполагает способность использовать технологические новшества, предлагаемые например в рамках энергичной схемы развития процессоров компании Intel, без замены основных компонент системы и нарушений в ходе эксплуатации и использования важнейших приложений.

Среда AVFlex обеспечивает такую способность с помощью технологии ccNUMA, использованной в архитектуре сервера AV 25000, что позволяет пользователям легко и быстро установить новейшие процессоры Intel Pentium II Xeon (например) на сервер AV 20000, базирующийся на процессорах Pentium Pro.

Среда AVFlex также представляет наиболее эффективно окупающийся метод максимизации производительности систем AV 20000, состоящий в замене блоков SBB на блоки с новейшей технологией Intel Xeon; в то же время память, средства ввода-вывода и вся монтажная инфраструктура системы используются заново и тем самым инвестиции, вложенные в эти компоненты, сохраняются.



Защита инвестиций: интегрированное управление системами


Составной частью стратегии AVFlex компании Data General является предоставление единого эффективно окупающегося инструментального комплекса управления системами для операционных систем DG/UX, NT и других управляемых объектов. Управление системами включает в себя следующие основные функции:

Управление при ошибках Управление конфигурацией Управление активами (информационными) Управление производительностью Управление средствами защиты

Компонента среды AVFlex, обеспечивающая управление системами, объединяет перечисленные функции в интегрированной управляющей консоли M3W. Такой прогрессивный подход обеспечивает снижение расходов за счет предоставления возможности удаленного и централизованного управления через взаимодействие с имеющимися интерфейсами настольных компьютеров и за счет сведения к минимуму требуемого уровня технической подготовки пользователей. Этот подход использует стандартную инфраструктуру управления Microsoft Console и позволяет клиентам компании Data General иметь системы с разнородными компонентами и осуществлять управление сетями, используя множество различных программных продуктов компании Data General и сторонних поставщиков. Средства управления системами среды AVFlex представляют собой модульное решение, что обеспечивает защиту инвестиций.

M3W Server Manager (Средство Управления Сервером M3W) - это новый продукт, позволяющий осуществлять управление сервером AV 25000, используя Web. C помощью этого интерфейса администратор может конфигурировать и диагностировать системы AV 25000 из Web-браузера, установленного на любом настольном компьютере, включенном в сеть, или непосредственно используя управляющую консоль, подключенную к серверу AV 25000.

Navisphere Manager (Средство Управления Navisphere) для систем AViiON позволяет администраторам средств хранения данных конфигурировать и управлять дисковыми массивами CLARiiON, используя любую рабочую станцию, расположенную на территории предприятия. На серверах, работающих под управлением операционной системы DG/UX или Microsoft Windows NT Server, использован единый графический интерфейс NT, а программа-посредник (agent) обуславливается ОС.

Платформа DGEM (Data General Enterprise Management) - это инструментальный набор управления для продуктов под DG/UX, который работает совместно с лучшими в своем классе стандартными инструментальными средствами управления предприятиями (Unicenter TNG, Tivoli, HP Openview, ManageX и другими) на основе общей платформы управления. Инструментальные средства управления DG/UX включают в себя DG/UX Manager, DG/UX Graphical File ManagerTM и DG/UX Cluster ManagerTM.



Защита инвестиций: операционная система DG/UX


Поставщики решений и пользователи сделали инвестиции в программное обеспечение операционной системы DG/UX. Стратегия компании Data General заключается в непрерывной модернизации и расширении возможностей DG/UX, что позволяет поддерживать заслуженную репутацию DG/UX как ведущей операционной системы для предприятий по поддержанию новых технологий аппаратных средств, включая и те технологии, которые специально разработаны для обеспечения доступа к ресурсам за пределами 32-битной адресации. Среда AVFlex также поддерживает ряд новых разработок для DG/UX в области разбиения систем, взаимодействия (между операционными системами) и управления системами.

Недавно сделанные и планируемые усовершенствования операционной системы DG/UX включают в себя:

CSF Workload Optimizer (Оптимизатор рабочей нагрузки CSF) - используется для разбиения приложений как в случае кластеров, так и в случае отдельных систем. Классы, отводимые под приложения, создаются в соответствии с определенной стратегией планирования и существующими ограничениями, сюда включаются тип машины в кластере, тип компоновочного блока или CPU в сервере, время и т.д. High Processor Counts (Большое Число Процессоров ) - увеличение максимального числа процессоров до 64. Также обеспечивается защита инвестиций, состоящая в том, что для повышения вычислительной мощности можно теперь просто добавлять дополнительные блоки SBB с новейшей технологией СPU к имеющейся системе, средствам хранения данных и периферийным устройствам. Very Large Memory Support (Поддержка очень большой памяти) - это средство обеспечивает доступ к 32 GB памяти общего назначения. Это позволяет увеличивать объем памяти включая новые блоки SBB в 36-битное адресное пространство, поддерживаемое архитектурами процессоров Pentium Pro и Pentium II Xeon. 36 Bit I/O (36-битный ввод-вывод) - обеспечивает драйверную поддержку 36-битного ввода-вывода, что позволяет средствам ввода-вывода иметь доступ к полному образу памяти. ccNUMA Performance - включает в себя API, используемый основными приложениями (такими как Oracle RDBMS) для того, чтобы отводить большие объемы памяти под основные структуры данных. Fibre Channel Support (Поддержка технологии Оптических Каналов) - обеспечивается поддержка высокопроизводительных средств хранения данных CLARiiON Fiber Channel Series, что позволяет осуществлять доступ к большому объему данных в дисковых массивах. Gigabit Ethernet - поддержка высокоскоростных сетей. Java - среда проектирования, позволяющая разрабатывать переносимые приложения, т.е. разработанное с помощью Java приложение может быть развернуто при использовании любой платформы (Thin Clients, NCs, PCs with browsers, NT Servers, UNIX Servers, Mainframes). POSIX ACLs - обеспечивает улучшенную переносимость приложений. SecurID Authentication - с помощью ведущего по своим техническим параметрам идентифицирующего продукта усиливает защиту операционной системы DG/UX от несанкционированного удаленного доступа.



Защита инвестиций: средства хранения данных


На сегодняшний день информация является наиболее критичной компонентой для любой компании. И объемы информации, хранящейся в режиме on line, возрастают со все более высокой скоростью. Тем не менее, последние исследования, проведенные компанией IBM, показали, что только 10% электронной информации доступно для компаний. Те компании, которые смогут с легкостью осуществлять доступ и использовать информацию, получат большое преимущество перед своими конкурентами.

С целью удовлетворить потребности клиентов в средствах хранения данных, компания Data General предлагает свои подсистемы дисковых массивов CLARiiON. При разработке этих подсистем особое внимание уделялось обеспечению высокой доступности и устойчивости к ошибкам; внутренние характеристики подсистем гарантируют как целостность данных, так и максимальную производительность доступа к данным. Подсистемы хранения данных CLARiiON FC5000 Fibre Channel - промышленное решение, целиком и полностью основанное на технологии Оптических Каналов (Fibre Channel).

Multidimensional Storage Architecture (MSA) для серии FC5000 - это модульная гибкая архитектура, дающая пользователям возможность оптимизировать производительность, исходя из запросов приложений. FC5000 поддерживает до 120 Оптических (Fibre Channel) дисковых накопителей в каждой подсистеме. Благодаря тому, что система целиком и полностью основана на технологии Оптических Каналов, можно с легкостью увеличить ее дисковую емкость до многих терабайт, а также легко устанавливать кабельные соединения и управлять системой.

Среда AVFlex позволяет пользователям многократно использовать свои данные в имеющихся системах и продолжать делать инвестиции в новые системы. Поддержка имеющихся дисков SCSI, многократное использование дисковых массивов CL3000 CLARiiON, использование CL3000 с оптоволоконным внешним интерфейсом и развертывание новейших дисковых массивов CLARiiON серии FC5000 - все эти возможности обеспечивают максимальную дисковую емкость и максимальную защиту инвестиций пользователей.



Защита инвестиций: защита важнейшей информации


В настоящее время для предприятий, конкурирующих на мировом рынке, бизнес которых зависит от компьютерных систем, помогающих им анализировать и осуществлять свои операции, критичными параметрами являются высокая доступность и возможность почти непрерывного функционирования систем, а также их способность оставаться в исправном состоянии при катастрофических повреждениях. Такие события, как взрыв бомбы во Всемирном Торговом Центре (World Trade Center) и сообщения в новостях о материальных потерях, причиняемых окружающей средой, привлекают внимание к проблеме уязвимости многих компаний. В такой ситуации основным способом защиты информации является размещение резервных копий информации по всей территории компании.

Среда AVFlex позволяет предприятиям создавать такие уровни доступности инфраструктуры, которые им требуются и которые они могут себе позволить. Доступность инфраструктуры включает в себя средства обеспечения высокой доступности, непосредственно встроенные в каждый отдельный сервер AViiON, операционную систему DG/UX и Disaster Recovery Clusters (Кластеры с Восстановлением после Повреждений), а также устойчивость информации, хранящейся в наших подсистемах дисковых массивов CLARiiON к почти-повреждениям (near-faults).

Disaster Recovery Clusters (Кластеры с Восстановлением после Повреждений) - данный продукт, используя программные средства для создания зеркальных отражений и большие дистанции между кластерами (500 метров и более), позволяет на основе DG/UX Clusters создавать решения для критичных задач клиента и организовывать доступ к базам данных, обеспечивая при этом максимальную доступность.

QuickClusters (Быстрые Кластеры) - это комплект на основе архитектуры ccNUMA, обеспечивающий высокую доступность. Комплект QuickClusters включает в себя двухсерверную конфигурацию и подсистему дисковых массивов CLARiiON. Как и конфигурация NT Cluster-in-a-BoxФ, блок QuickClusters является предварительно сконфигурированным и предварительно протестированным, что облегчает его инсталляцию и внедрение в систему.
Комплект QuickClusters также включает в себя услуги по внедрению программного и аппаратного обеспечения, позволяющие гарантировать, что инсталляция QuickClusters удовлетворит требованиям приложений и доступности.

Failover Clusters (Кластеры с Устранением Последствий Ошибок) - данный продукт облегчает инсталляцию DG/UX Cluster для тех пользователей, которые используют кластеризацию для повышения доступности своих систем, но не имеют "разбирающихся в кластерах" (cluster-aware) приложений, таких как Oracle Parallel Server Option.

И наконец, компания Data General предоставляет клиентам свои услуги и поддержку, требуемые для внедрения средств, защищающих их критичные деловые потребности.



ЖК-мониторы: компактные, стильные, дорогие


При выборе нового монитора вы вряд ли пройдете мимо привлекательных плоских ЖК-дисплеев. Они очень компактны, а их лучшие модели обеспечивают необычайно яркое и четкое изображение, словом, они... просто восхитительны. Однако из-за сложного производства цены на эти устройства по-прежнему остаются весьма высокими, и снижения их пока не ожидается.

Если вы решили купить ЖК-монитор, а ваш бумажник не бездонный, то разумнее всего обратить внимание на модели среднего размера: 15-дюймовые дисплеи стоят сегодня 1000-1200 долл. Одна из лучших моделей - Princeton DPP560 - обойдется вам в 1085 долл. Она относится к все расширяющемуся классу цифровых дисплеев, т. е. требует установки специального графического адаптера (он входит в комплект поставки). Это несколько увеличит время, необходимое для модернизации, и может вызвать некоторую путаницу, когда вы захотите использовать такой монитор со следующим ПК.



Zip, Orb и весь этот Jaz


Однажды, когда вам потребовалось хранить действительно громадные объемы данных, вы приобрели накопитель на сменных носителях и кучу дисков к нему. Нашествие чрезвычайно вместительных и дешевых жестких дисков все изменило, но и сегодня можно привести массу доводов в пользу устройств на сменных носителях. Они предоставляют прекрасную возможность распространять файлы, не помещающиеся на дискете, их удобно использовать для резервного копирования и архивирования документов, а также для защиты конфиденциальной информации (просто спрячьте диск от посторонних глаз, когда не работаете с ним).

Модернизация подсистемы хранения информации

Модернизация Цель Цена Сложность Комментарии

Новый жесткий диск Больше места для хранения информации 100-400 долл. Умеренная Наиболее популярны сегодня модели объемом 17-20 Гбайт
Накопитель на сменных носителях (Jaz, Orb, SuperDisk, Zip) Больше места для хранения информации; резервное копирование, перенос данных данных 100-350 долл. От низкой (внешние модели) до умеренной (внутренние) Более высокую производительность обеспечивают внутренние модели
Дисковод CD-R/CD-RW Резервное копирование, перенос данных, возможность создания и воспроизведения музыкальныхи видеодисков 150-350 долл. От низкой (внешние модели) до умеренной (внутренние) Большие преимущества - низкая цена и простота распространения данных на носителях
Ленточный накопитель (стример) Быстрое и простое резервное копирование данных с жестких дисков 175-300 долл. От низкой (внешние модели) до умеренной (внутренние) Наилучшая гарантия сохранности данных при полном отказе жесткого диска

С того момента, когда несколько лет назад фирма Iomega произвела фурор своим накопителем Zip, выбор устройств на сменных носителях значительно расширился. Одна лишь Iomega предлагает больше полудюжины моделей, начиная 100-Мбайт Zip для параллельного порта (около 100 долл.) и заканчивая

2-Гбайт Jaz с интерфейсом SCSI (примерно 350 долл.). Если вам нужно устройство, на картриджах которого по цене всего 30 долл.
за штуку можно хранить до 2,2 Гбайт информации, превосходным выбором будет накопитель Orb (200 долл.) компании Castlewood Systems. (Для сравнения: 2-Гбайт картриджи для дисковода Iomega Jaz стоят примерно 125 долл. или по 100 долл. при покупке упаковки из трех штук.)

Установка внутреннего накопителя на сменных носителях по сложности сопоставима с заменой обычного жесткого диска (нужно лишь убедиться, что в ПК есть свободный отсек с внешним доступом).

Кроме того, вы можете приобрести внешнюю модель, которая соединяется с ПК через параллельный порт. При этом, однако, следует помнить, что подобные устройства всегда значительно менее производительны, чем аналогичные внутренние модели. Если быстродействие внешнего накопителя для параллельного порта вас не устраивает, покупайте его вариант, соединяемый с ПК через порт USB. Как показало тестирование, внешний 100-Мбайт накопитель Iomega Zip для порта USB работает почти в четыре раза быстрее, чем его "собрат" для параллельного порта.