Многопроцессорные компьютеры могут принести реальную пользу профессионалам в издательском деле... если их программы поддерживают многопроцессорные вычисления.
Двойная мощь компьютеров Macintosh
Многопроцессорные Macintosh и клоны
Конечно, новейшие модели компьютеров Power Macintosh или ПК на базе процессоров Pentium отличаются очень высокой производительностью. Но стоит запустить фильтр "Размытие по Гауссу" с большим радиусом для изображения объемом 100 Мбайт, и может показаться, что компьютер застыл на месте. Еще совсем недавно единственным вариантом повышения производительности при решении задач обработки огромных изображений было приобретение более быстрого процессора, дополнительных модулей памяти или установка новой специализированной ускоряющей платы. Теперь появилась новая возможность - добавить процессоры.
Многопроцессорные (МП) компьютеры под управлением большинства распространенных операционных систем - Unix, OS/2, а несколько позже Windows NT и Macintosh - уже использовались ранее, главным образом, в качестве серверов или высокопроизводительных рабочих станций. Но быстрое распространение двух- и четырехпроцессорных систем, разработанных для профессиональной деятельности в области издательских систем (особенно для платформы Macintosh), началось лишь в последнее время. Заплатив кругленькую сумму - от 5000 до 15 000 долл., - можно приобрести мощную многопроцессорную систему для Mac OS производства компаний DayStar Digital, Apple Computer и Umax Computer либо для работы под Windows NT (подобные машины выпускает довольно широкий круг компаний, среди которых Compaq, Dell, Digital Equipment, IBM и Intergraph). Вот только стоит ли это делать?
Два процессора - это еще не в два раза быстрее
То, что один процессор - "мозг" или "голова" любого компьютера - может делать хорошо, два смогут делать еще лучше, не правда ли? Да, это вполне вероятно. Тесты показали, что двухпроцессорные машины решают задачи, требующие больших вычислительных ресурсов (изменение размеров изображения, рендеринг трехмерной графики, пакетное сканирование и т. д.), примерно на 25% быстрее, чем аналогичные однопроцессорные. А четырехпроцессорный компьютер компании DayStar дает выигрыш до 300% (см. врезку "Двойная мощь компьютеров Macintosh"). Но реальная жизнь настольных компьютеров далека от идеала. Стоит ли МП-машина тех денег, которые за нее придется отдать, можно определить, только проверив, насколько быстро данная система решает типичные задачи предполагаемого покупателя. Следует также ясно представлять, как применяемое при решении типичных задач программное обеспечение и операционная система используют возможности многопроцессорного компьютера.
Для использования преимуществ многопроцессорной обработки, все приложения и операционная система должны быть разработаны с учетом возможностей МП. Запустив на МП-машине обычную версию QuarkXPress, вы не обнаружите никакого прироста производительности. На сегодняшний день уже более дюжины приложений для издательской деятельности оптимизированы для МП-систем, еще несколько пакетов могут появиться в ближайшее время. Максимальную выгоду от использования МП-ускорения можно получить при редактировании изображений, разработке мультимедийных программ, рендеринге трехмерной графики, применении специальных эффектов и в пакетах для допечатных процессов, включая растрирование изображений, экспонирование и спуск полос, сканирование, а также треппинг. Все подобные операции пользуются репутацией "удавок" для компьютеров, поскольку они применяют сложные алгоритмы для обработки огромного объема данных.
До настоящего времени наличие широкого ассортимента издательских приложений и поддерживаемых устройств для компьютеров Macintosh способствовал тому, что разработчики включали поддержку МП-вычислений прежде всего в программы для этой платформы. Поскольку многие издательские пакеты и драйверы устройств только начинают появляться на платформе Windows NT, многопроцессорные системы на базе Windows NT наиболее эффективно использовать при решении специфических технологических задач, таких как растрирование изображений. (См. врезку "Растрирование на "форсаже", в которой описываются результаты тестирования системы ScriptWorks компании Harlequin.)
Если говорить об операционной системе, то Windows NT, так же как Unix и OS/2, реализуют реальную симметричную многопроцессорную обработку (symmetric multiprocessing - SMP). Это означает, что операционная система и приложения могут выполняться на любом процессоре и распределять различные операции или их части для выполнения на свободных процессорах. Например, Adobe Photoshop может разделить выполнение сложной операции "Размытие по Гауссу" между процессорами А, Б и В, причем операция будет выполняться в фоновом режиме. А для работы над другой активной задачей будет использоваться процессор Г.
Альтернативный подход используется в операционной системе Mac OS, в которой отсутствуют возможности симметричной многопроцессорной обработки. Вместо этого компания Apple предоставляет набор ассиметричных или псевдосимметричных многопроцессорных расширений, которые изначально были разработаны компанией DayStar Digital. Эти расширения, получившие название интерфейса программирования приложений с многопроцессорной поддержкой компании Apple (Apple Multiprocessing Application Programming Interface, - Apple MP API), обеспечивают, хоть и не полную, поддержку многопроцессорной обработки в Mac OS. Главное ограничение - операции нельзя разделить для выполнения на определенном процессоре в фоновом режиме. Вместо этого ведущий (master) процессор разделяет большие задачи между ведомыми (slave). Все процессоры будут работать одновременно над выполнением одной задачи. Пакет Photoshop на МП Macintosh или его клоне разделит "Размытие по Гауссу" на задачи, распределит их среди свободных процессоров, и в целом работа будет выполнена быстрее, чем на однопроцессорной машине. Но пока компьютер считает, у вас будет вдоволь времени, чтобы полюбоваться процесс-индикатором на экране монитора.
Машины-тяжеловесы
Несмотря на ограниченный набор приложений и промежуточный характер технологии Apple MP API, многопроцессорные компьютеры для Mac OS и Windows NT начинают вторгаться на территорию графических рабочих станций на базе Unix. На острие атаки продукты компании DayStar - фирма является единственным обладателем лицензии на четырехпроцессорные машины для Mac OS. Главным образом, на волне популярности пакета Photoshop линия ее систем Genesis продается уже более года. Машина Genesis обладает мощным потенциалом, предлагая не только возможность выбора двух- или четырехпроцессорной конфигурации, но и 64-разрядную архитектуру шины и чередование памяти для повышения производительности при обработке больших массивов данных. Даже корпус компьютера производит внушительное впечатление: 10 отсеков для накопителей, 6 слотов расширения PCI, 12 слотов для модулей памяти DIMM (dual inline memory module), в которые можно установить 1,5 (или более) Гбайт памяти, и встроенный адаптер Fast SCSI-2.
Среди производителей МП-компьютеров для Windows NT наиболее активно на рынке издательского оборудования работает компания Intergraph. В комплект поставки ее многопроцессорных систем на базе Pentium Pro входят специализированные расширения для ускорения рендеринга трехмерной графики, которые повышают производительность этих машин почти до уровня более дорогих рабочих станций, ориентированных на обработку объемных изображений.
Однако лидирующие производители рабочих станций на базе Unix, такие как Silicon Graphics (SGI) и Sun, тоже не стоят на месте. Их последние разработки на основе новых архитектур по-прежнему предлагают высочайшую производительность, устанавливая новые ориентиры для настольных систем. При этом цена таких систем постоянно снижается. Первенцем нового поколения были машины линии O2 компании SGI, стоимость которых соизмерима со стоимостью новых рабочих станций для Windows NT.
Как работает МП
Многопроцессорная обработка распределяет вычислительную нагрузку на несколько процессоров, которые вместе могут выполнить задачу быстрее, чем один процессор. Некоторые вычислительные задачи разделить для распределенной обработки довольно легко, а другие - нет. Операции, которые в пакете Photoshop выполняются над всем изображением, например размытия, вращения и настройка резкости, разделить несложно. Изображение можно разбить на части, каждая из которых будет обрабатываться на отдельном процессоре, а затем собрать снова. Такая стратегия называется параллельной обработкой.
Но существуют сложные операции с сильными логическими взаимозависимостями, которые очень трудно разделить для параллельной обработки. В эту категорию обычно попадают иллюстрации, созданные с помощью векторных пакетов Adobe Illustrator и CorelDraw, в которых имеются математически взаимосвязанные объекты. Сходны с ними и сложные перекрывающиеся элементы сверстанных с помощью пакетов QuarkXPress, PageMaker и Corel Ventura страниц. МП-ускорение работы подобных пакетов весьма проблематично.
Но вычислительные задачи можно оптимизировать для выполнения на МП-системах и по-другому: вместо разделения данных для их последующей параллельной обработки, разработчик может разбить приложение на отдельные задачи, которые могут выполняться независимо. Такие взаимо-независимые задачи называются потоками. "Потоки означают для программных процессов то же самое, что параллельная обработка для данных", - считает исполнительный директор компании Metrowerks Джин Биленджер. Созданные этой фирмой инструменты разработки приложений CodeWarrior для ОС Macintosh, Windows NT и других систем содержат средства для написания и отладки потоков. Вообще говоря, чем больше у приложения потоков, тем проще разделять выполнение программы между несколькими процессорами.
Между прочим, это те же самые потоки, о которых говорят программисты, обсуждая разработку операционных систем с вытесняющей многозадачностью и приложений, использующих эту возможность. "Применение потоков - замечательный способ реализации одновременного выполнения нескольких операций", - отмечает Биленджер. Первым из основных приложений для настольных издательских систем, в котором использовались возможности многопоточной обработки, был пакет Adobe PageMaker для OS/2 Presentation Manager: например, пока функция Autoflow программы в фоновом режиме загружала длинный текст и добавляла страницы, можно было продолжать работу над версткой страницы документа.
На однопроцессорной машине потоки могут разделять время процессора. На многопроцессорном компьютере под управлением многозадачной операционной системы каждый поток может выполняться на отдельном процессоре. Если разработчик приложения уделит дополнительное время программированию с интенсивным использованием потоков, такой пакет сможет полнее использовать преимущества многопроцессорных систем. Если же пакет не оптимизирован, то лучше выполнять приложение на самой быстрой из доступных пользователю по цене однопроцессорных машин.
Как дела с Macintosh?
В настоящее время на многопроцессорных системах Macintosh ускоряется лишь довольно ограниченный перечень вычислительных задач. Поскольку возможности многозадачности, которые обеспечиваются расширениями MP API, пока не встроены в ядро Mac OS и в Mac OS не реализован известный под названием "вытесняющая многозадачность" тип жестко контролируемой многозадачности, многопроцессорные системы Macintosh и совместимые с ними машины не могут разделять функции операционной системы для выполнения на нескольких процессорах. Вот почему вся операционная система Mac OS и все приложения выполняются на одном главном процессоре, который посылает потоки приложений для выполнения на ведомых процессорах.
Следует заметить, что при такой псевдосимметричной многопроцессорной (PSMP) архитектуре, потоки приложений, "высланные" для выполнения на ведомых процессорах, должны состоять только из команд процессора PowerPC и данных, размещенных в оперативной памяти. "Вспомогательный" код не может содержать вызовов Mac OS, таких как вызовы функций для создания диалоговых окон, чтения и записи на дисковые и другие периферийные устройства или управления сетевым обменом. Короче говоря, "вне игры" находится любая системная функция, которая извлекается из ПЗУ Macintosh, и другие службы, связанные с Mac OS, не являющиеся собственными функциями процессора PowerPC.
Хотя разработчики могут оптимизировать для псевдосимметричной многопроцессорной технологии Apple приложения, подобные Photoshop, для других приложений типа файл-серверов, которые содержат множество вызовов функций системного уровня, такая оптимизация почти ничего не дает. Дело в том, что системные функции по умолчанию выполняются на главном процессоре.
К счастью, хотя технология PSMP на Macintosh не оптимальна, она не так уж плоха. Во-первых, ее можно использовать там, где она приносит реальную пользу: при обработке огромных объемов данных по сложным алгоритмам. Это касается таких областей, как редактирование изображений, рендеринг, а также работа с цифровыми аудио- и видеоданными. Во-вторых, Apple собирается интегрировать MP API в следующую Mac OS, которая, по утверждениям представителей компании, будет также обладать полной симметричной многозадачностью. Поэтому приложения, оптимизированные в соответствии с имеющейся сегодня технологией МП, будут работать и под управлением новой ОС.
А что с Windows NT?
Операционные системы Windows NT 3.51 и Windows NT 4.0 обладают встроенными в ядро системы возможностями многопроцессорной обработки и вытесняющей многозадачности. Полностью симметричная природа многопроцессорной архитектуры NT означает, что программные потоки, выполняющиеся на дополнительных процессорах, могут использовать все функции и службы, которые им предоставляет операционная система NT. Это значит также, что целые приложения могут выполняться в фоновом режиме на отдельных процессорах, а потоки приложений могут выполнять операции доступа к дисковым накопителям или работать с пользовательским интерфейсом. Приложения, которые оптимизированы для использования многозадачности на однопроцессорных системах, автоматически получают преимущества многопроцессорной обработки, поскольку NT всегда равномерно распределяет вычислительную нагрузку между всеми имеющимися в ее распоряжении процессорами.
Хотя Microsoft подчеркивает те преимущества, которые МП-технологии, заложенные в NT предоставляют деловым приложениям, таким как SQL Server, несколько издательских пакетов уже были МП-оптимизированы для NT. "Photoshop как наше ведущее приложение, использующее многопроцессорные технологии, действительно стал первой программой, оптимизированной для многопроцессорных ПК", - отметил директор по продуктам для работы с графикой компании Adobe Systems Брайан Лэмкин. По его утверждению, Photoshop 3.0 для Windows NT 3.51 использует все преимущества симметричной многозадачности, встроенной в ядро Windows NT 3.51. Лэмкин также добавил, что, хотя реализация МП для Mac OS уступает варианту для Windows NT, работа пакета Photoshop ускоряется на обеих системах примерно в равной степени. "Учитывая другие особенности внутренней архитектуры NT 4.0, такие как лучшая страничная организация виртуальной памяти, мы считаем, что в области издательских приложений эта платформа имеет большое будущее", - заявил Лэмкин.
По мнению директора по маркетингу и настольным системам компании Intel Ки Грилли, ключом к МП-производительности на базе NT является использование потоков. "С точки зрения использования преимуществ МП Photoshop - одно из лучших известных нам многопоточных приложений", - заявила она. В тоже время, несмотря на мощную поддержку симметричной многопроцессорной обработки, значительная часть кода ядра NT работает в однопроцессорном режиме, поскольку лишь несколько задач ОС выделено в виде потоков и могут выполняться как фоновые задачи в режиме МП.
В лучшем случае, по утверждению Грилли, операционная система NT при работе на МП-системе ускоряется примерно на 10%.
Приложения для многопроцессорных систем
Еще одна суровая правда о многопроцессорной обработке такова: даже если приложение оптимизировано для МП, выигрыш в производительности будет зависеть от того, сколько усилий затратил его разработчик при создании потоков. Слова "МП-ускоренное" или "подготовленное для МП" на упаковке говорят лишь о том, что, по крайней мере, одна из функций программы оптимизирована для многопроцессорных систем. Поэтому перед покупкой программы следует уточнить, какие части программы были ускорены и каким образом.
Редактирование изображений. Бесспорный лидер в многопроцессорной обработке как на Macintosh, так и на PC, - пакет Photoshop (см. врезки "Ускоренные приложения"). В версии 4.0 ускорено около двух десятков функций, которые обычно являются узким местом при обработке больших файлов изображений. (Для МП-ускорения версии 3.0 имеется специальный модуль расширения.) "На многопроцессорном компьютере Genesis, клоне Macintosh, пакет Photoshop работает заметно быстрее, - считает руководитель компании John Lund Photography/Team Digital из Сан-Франциско Джон Ланд. - Для пакета Photoshop гораздо важнее производительность аппаратного обеспечения, чем для Live Picture. Некоторые операции, типа использования больших кистей для заполнения областей, которые нам приходилось выполнять в пакете Live Picture (из-за его способности отображать изменения в режиме реального времени), теперь можно делать с помощью Photoshop".
Мультимедиа. Расширение QuickTime было оптимизировано для МП, начиная с версии 2.5, а QuickDraw 3D должно быть переработано к моменту опубликования этой статьи. На многопроцессорных системах Macintosh и их клонах QuickTime 2.5 может одновременно обрабатывать кадры видеофрагмента на разных процессорах. И это еще не все. "Почти все операции переработанного QuickTime автоматически ускоряются при работе на многопроцессорных системах", - заявляет технический директор компании Terran Interactive Дэррен Джайлс. Его компания разработала пакет Movie Cleaner Pro (к моменту опубликования статьи выйдет версия 2.0, оптимизированная для МП). "В расширении QuickTime компания Apple в той или иной степени ускорила работу компрессии и декомпрессии всех основных стандартов кодеков (компрессия/декомпрессия)", - добавил он. По словам Джайлса, пакет Movie Cleaner Pro представляет собой эффективное и мощное средство производства видеопродукции на базе существующих технологий QuickTime.
Рендеринг трехмерных изображений. Рендеринг объемных сцен на персональном компьютере может длиться несколько дней, поэтому изготовители разрабатывают для этого рынка наиболее мощное аппаратное обеспечение, в том числе специализированные многопроцессорные платы для обработки трехмерной графики. Неудивительно, что разработчики соответствующего программного обеспечения уже создали МП-версии своих продуктов (первоначально для платформы NT), включая таких "гигантов" мира трехмерной графики и анимации как SoftImage 3D, Hollywood Effects компании Synergy и Kinetix 3D Studio Max. По данным компании Synergy, пакет Hollywood FX для NT - набор совместимых со стандартом компании Adobe на дополнительные модули трехмерных эффектов для печати и анимации - в настоящее время ускоряется почти в два раза при работе на двухпроцессорной системе на базе Pentium Pro.
Но МП-оптимизированные программы для компьютеров Macintosh тоже не отстают. Пакет StudioPro Blitz 1.75+ компании Strata и готовящаяся к выпуску версия 2.0 имеют ускоренную трассировку лучей. По словам главного технолога компании Strata Гэри Брингхерста, все расчеты пересечений, траверсов структур данных и теней выполняются параллельно. "Правда, осталось несколько функций, которые должны выполняться последовательно из-за ограничений Mac OS, - говорит Брингхерст, - но в целом оптимизированный пакет работает гораздо быстрее".
Пакет трехмерной анимации компании Electric Image также переработан для поддержки многопроцессорных систем Macintosh. Директор по разработке продуктов компании Мэтью Хоффман рассказал, что каждый кадр разделяется на участки, которые затем обрабатываются параллельно на вспомогательных процессорах. Хоффман также заметил, что, хотя все части обрабатываемого объемного изображения в некоторой степени связаны между собой, различные процессоры могут совместно использовать память. Поэтому проблем при разделении данных для рендеринга отдельных участков изображения не возникает.
RIP. PostScript представляет собой процедурный язык описания страниц, операторы которого должны выполняться последовательно. Это затрудняет его адаптацию для параллельной обработки, поскольку каждая инструкция PostScript, описывающая страницу, может зависеть от результата выполнения предыдущих команд, а код, описывающий одну страницу, может повлиять на содержание последующих страниц. Таким образом, операторы языка не являются независимыми.
Компания Adobe утверждает, что после завершения интерпретации команд языка PostScript кое-что все же можно сделать. Например, разделить на разные потоки компоненты пользовательского интерфейса, интерфейсы принтеров и сетей, а также некоторые функции рендеринга страниц. Директор по маркетингу продуктов для вывода изображений компании Adobe заявляет, что общая архитектура языка PostScript, и в частности настраиваемый интерпретатор PostScript (Configurable PostScript Interpreter, - CPSI) - открытый растровый процессор для производителей оборудования, - может использовать для повышения производительности возможности многопоточности и многопроцессорной обработки на платформах Macintosh, Windows NT, Unix и других открытых системах. Подобные продукты разработаны партнерами Adobe из стана производителей оборудования.
Но это уже не так важно, поскольку в новой программной архитектуре Supra, разработанной Adobe, реализован многопроцессорный подход к высокоскоростной печати с поддержкой параллельной обработки страниц. Когда на вход системы Supra подается файл PostScript, он преобразуется в серию независимых файлов страниц в переносимом формате документов (Portable Document Format, - PDF) Acrobat, каждый из которых может быть направлен на отдельный растровый процессор.
Компания Harlequin, чье PostScript-совместимое ПО ScriptWorks RIP используется многими производителями принтеров и фотонаборных автоматов, впервые реализовала многопроцессорный RIP в 1992 году. Первоначально он предназначался для Unix-систем компании SGI. Примерно в то же время Harlequin продемонстрировала первый RIP для Windows NT, (платформа NT тогда еще никем не воспринималась всерьез). Теперь растровые процессоры Harlequin для Windows NT используются во многих продуктах, в том числе фирм ScanView, Optronix и Gerber Systems.
Как и Adobe, компания Harlequin не считает, что можно значительно ускорить процесс интерпретации файлов PostScript, в ходе которого программа на языке PostScript конвертируется в список объектов для последующего их преобразования в точки на устройстве вывода. Многопроцессорные потоки пакета ScriptWorks принимаются за дело после интерпретации. По словам Ральфа Ллойда из компании Harlequin, программа ScriptWorks может разделять задачи обработки на отдельные полосы для их параллельного выполнения. В частности, это подходит для тех объектов, которые должны интерпретироваться в полутоновые растры. При выводе цветоделенных полос каждый цвет также может обрабатываться в отдельном потоке. ScriptWorks ускоряет также работу контроллера вывода, сжимая обработанные для вывода страницы, сохраняя их на диске и поддерживая очередь заданий для печати на устройство вывода. Ллойд отмечает, что функции сжатия, сохранения на диске и поддержки очередей заданий на печать могут выполняться параллельно на отдельных процессорах. Выигрыш в производительности, по его словам, может составлять до 195% для двухпроцессорных систем, 275% для трех процессоров и 375% - для четырех.
Одним из первых продуктов, поддерживающих МП-ускорение допечатных процессов на платформе Macintosh, стал пакет Professional AutoTrapper компании Professional Computer. Менеджер по продуктам Майк Розтенборн сообщил, что ускорение "включается" после завершения интерпретации PostScript, когда приложение сливает списки отображения каждого цвета и распределяет их по потокам для выполнения на отдельных процессорах. В растрированном списке отображения анализ треппинга выполняется в два этапа: заданный ранее треппинг модифицируется для каждого нового цвета, а каждая часть выделяется в отдельный поток для выполнения на отдельном процессоре.
Перспективы многопроцессорной обработки
Компания Apple обещает, что встроенная в ядро версии System 8 поддержка симметричной многопроцессорной обработки будет также обладать обратной совместимостью с сегодняшней псевдосимметричной обработкой Apple MP API. "Сейчас мы встраиваем в наш продукт поддержку многопроцессорных систем на основе не самого совершенного интерфейса Apple MP API, - считает сотрудник компании Terran Interactive Джайлс Дэррен. - Когда Mac OS получит более мощную поддержку многозадачности, мы переработаем наш пакет с учетом всех возможностей новой ОС". Он отметил также, что существующая сейчас поддержка псевдосимметричной многопроцессорной обработки, разработанная Apple, нацелена главным образом на ускорение работы сложных алгоритмов с большими массивами данных. В то же время симметричная многопроцессорная архитектура будущей Mac OS позволит разработчикам ускорить работу пользовательских интерфейсов приложений и повысить общую производительность труда пользователей.
Интересно, что компания Intel также считает поддержку МП лишь промежуточным решением. "Мы рассчитываем, что МП - это способ дать пользователям возможность повышения производительности за счет масштабируемости систем в переходный период до выпуска следующего, более производительного поколения процессоров", - говорит Грилли, сотрудник компании компании Intel. Она отмечает, что процессор Pentium Pro разрабатывался более двух лет, и, хотя следующее поколение процессоров должно появиться быстрее, достижение нового уровня производительности может потребовать немало времени. По ее мнению, в этот период приемлемым решением могут быть многопроцессорные системы.
Двойная мощь компьютеров Macintosh
Журнал Publish сравнивал три многопроцессорных компьютера (Macintosh и два клона) с однопроцессорной системой Power Mac 8500 при выполнении семи типичных для издательских приложений операций.
Несмотря на псевдосимметричную многопроцессорную архитектуру Macintosh, МП-машины показали значительно более высокую производительность: четырехпроцессорный Genesis оказался, в среднем в 1,8 раза, а двухпроцессорные модели Power Mac и SuperMac примерно в 1,4 раза быстрее, чем однопроцессорный Power Macintosh. Наибольшее ускорение было достигнуто при выполнении комплексных работ, в которые были включены несколько повторяющихся задач по рендерингу трехмерной графики и изменению размеров изображения.
Во всех протестированных системах были установлены процессоры PowerPC 604e, оперативная память объемом 128 Мбайт, их системные шины работали на частоте 45 МГц и поддерживали чередование памяти. В компьютере Power Macintosh 8500 была установлена кэш-память второго уровня меньшего размера, чем у трех многопроцессорных систем (256 Кбайт против 512 Кбайт); системная плата 8500 несколько отличалась от использованных в многопроцессорных машинах.
RIP: умножение на два
Пакет ScriptWorks 4.1 компании Harlequin является одним из первых растровых процессоров (raster image processor, - RIP), использующих преимущества симметричной многозадачности на компьютерах под управлением Windows NT.
Журнал Publish протестировал пакет ScriptWorks на двухпроцессорной машине Intergraph TD-410 под управлением Windows NT 4.0. ScriptWorks позволяет вам выбрать количество процессоров, выделенных для RIP, поэтому машина Intergraph соревновалась сама с собой: через RIP было пропущено несколько тестовых файлов, вначале использовался один процессор, а затем - два.
Тесты показали, что растрирующее ядро ScriptWorks на двух процессорах работает от 1,4 до 1,8 раза быстрее, чем на одном. Точное значение зависит от сложности файла. Например, изображение в формате EPS объемом 64 Мбайт "проскочило" через растрирующее ядро, работающее на двух процессорах, почти в два раза быстрее, чем на одном. Но для обработки сложного документа QuarkXPress объемом 31,4 Мбайт, выведенного на диск как файл PostScript, на двух процессорах потребовалось более двух третей времени работы одного процессора. Интерпретирующий модуль ScriptWorks не оптимизирован для МП, поэтому общее время обработки сокращается гораздо меньше, чем время растрирования.
Тестируем NT RIP
Акселерированные приложения
Многопроцессорные компьютеры на базе Mac OS и Windows NT продаются уже больше года, однако за это время число программ, переработанных с учетом преимуществ МП-технологии, не достигло двадцати. Говорят, что много программ еще находятся в процессе переработки, но чем вызвана подобная задержка? Ответ прост: создание МП-приложений - долгий и дорогостоящий процесс.
"Чтобы переписать Photoshop для работы на МП-системах потребовались усилия нескольких инженеров в течение нескольких месяцев", - вспоминает Кевин Коннорс, менеджер компании Adobe, отвечающий за разработку Photoshop. Инженеры Adobe нашли все "узкие места" в предыдущих версиях Photoshop и заложили в архитектуру программы средства, ускоряющие обработку этих ситуаций. "Когда Photoshop сталкивается с "узким местом", для выполнения этих инструкций программа может задействовать дополнительный процессор". Ускорение, получаемое за счет новой технологии, не связано с какими-либо определенными фильтрами. Некоторые фильтры могут сталкиваться с несколькими "узкими местами". А ряд "узких мест" может иметь отношение к нескольким фильтрам. Первоначально технология "узких мест" предназначалась для использования процессора цифровых сигналов (DSP), установленного на плате сопроцессора. Но компания смогла переработать эту архитектуру для использования с современными многопроцессорными компьютерами. В этом состоит одна из причин лидерства Adobe в области переработки приложений для МП.
Для программ, подобных Photoshop, производительность определят все. Но создатели других приложений относятся к новой технологии более осторожно. "Мы уже видели как новые технологии приходят и уходят, особенно это касается технологий типа DSP-ускорения, которые вызывают проблемы с дополнительным аппаратным обеспечением", - считает Джон Басс, менеджер компании Fractal Design Painter. По его словам, не успели производители программного обеспечения переписать свои приложения с учетом возможностей DSP, как появились новые, более быстрые, процессоры, сделавшие использование DSP бессмысленным.
"Мы рассматриваем поддержку МП, как одно из перспективных направлений аппаратного ускорения", - говорит Басс. Но компании еще предстоит решить, какие функции Painter они будут ускорять, поскольку стоимость работ по ускорению отразится на цене пакета. Басс считает, что большинство разработчиков просто не располагают ресурсами, необходимыми для полной модернизации своих приложений.
Нижеперечисленные приложения были полностью или частично переработаны с учетом возможностей МП-технологии.
Многопроцессорные Macintosh и клоны
ПОХОЖИЕ СТАТЬИСтерео/варио для начинающихВ попытках привлечь внимание потребителя создатели печатных продуктов, особенно рекламных, всё чаще экспериментируют с необычными визуальными формами. Одна из них, известная ещё с 80-х годов прошлого века по "переливающимся" календарикам, обязана своим су |