|
Buzz
#13
12 февраля 1998 |
|
Amiga UMA - Плюсы и минусы Unified Memory Architecture.

_
___ ___ __[_]__ ____ ___
/ _ │ \ │ │ / ___│ _ \
/ _ │ │ \ │ │ / /_│ │ _ \
/ / │_│_│_│ \│_│/______│_│ \ \
/_/ \_\ \_\
----------------------------------------------------------------
Phase 5 Digital Products
------------------------------
phone: +49 6171 583787
fax: +49 6171 583789
WWW: www.phase5.de
FTP: ftp.phase5.de
E-Mail: mail@phase5.de
----------------------------------------------------------------
Кодовое имя: A\BOX
Шаг к мечте
----------------------------------------------------------------
Плюсы и минусы Unified Memory Architecture
После опубликации самых основных спецификаций A\BOX и "все
еще находящейся на стадии разработки" CAIPIRINHA, общественность
начала обсуждать плюсы и минусы данной разработки. Основными
темами дискуссий стало использование Unified Memory Architecture
и почему стандартные сейчас в компьютерном мире компоненты
бессмысленно использовать в A\BOX.
Основной довод, который приводят против использования UMA -
это общий доступ ко всей памяти всех устройств системы,
например, и процессора, и видеоконтроллера. Приводились такие
примеры: "1600x1200x24 = 432 МБ/сек - непрерывный трансфер с
памятью первого видео-DMA, плюс второй видеовывод, плюс расчет
3D с кучей текстур, плюс мультиканальная музыка, плюс еще
что-нибудь - и времени для доступа к памяти процессору совсем не
останется". Приводя такие доводы, некоторые подерживают
концепцию раздельных шин для графики и всего остального,
предлагая использовать AGP и PCI. Другие предлагают
использовать иные, более дешевые модульные системы или шины.
Hиже мы прокоментируем эти точки зрения с нескрываемой
улыбкой на лице:
1) Во-первых, сегодняшняя архитектура с раздельной системной и
графической памятью, например, PCI, имеет очень низкий трансфер.
Во-вторых, так как память разделена, необходимо постоянно
пересылать данные по шине из системной памяти в видеопамять.
Вот три примера работы подобной системы:
- процессор PC расчитывает анимационный 3D-сценарий. Для этого
он считывает десятки тысяч координат из памяти, производит
сложнейшие расчеты и затем записывает результаты обратно в
память. Затем данные должны быть собраны и пересланы через
PCI-шину в видеокарту с 3D-процессором. Далее происходит
пересылка текстур в видеопамять для того, чтобы 3D-процессор
расчитал полигоны. Так как сценарий может быть довольно
сложным, а количество памяти на видеокарте ограничено,
приходится постоянно подгружать новые текстуры из основной
памяти. Hо можно использовать простенькие сценарии с небольшим
количеством простых текстур, чтобы они все целиком влезали в
видеопамять... Hастоящая Hi-End технология ;)
- видеодигитайзер оцифровывает изображение в реальном времени и
полученные видеоданные записывает в память PC, где они например
могут быть отредактированы или обработаны. Далее, для того,
чтобы оцифрованные видеоданные были показаны в окне на экране,
происходит их пересылка в видеопамять со скоростью 25 МБ в
секунду (1 кадр - 1 МБ), т.е. с половиной реального трансфера
PCI-шины в большинстве систем. Как жаль, что остальная часть
трансфера уже используется видеодигитайзером...
- виртуальный экран размером 4000x4000 точек и глубиной 24 бита
( = 48 МБ) отображается на экране с разрешением 1280x1024 и
необходимо его проскроллировать. Конечно же, подобное возможно
на PC-архитектуре, не учитывая лишь тот факт, что PCI-шина и
шина данных будут полностью перегружены передачей данных из
основной памяти в видеопамять и процессор практически ничего не
сможет делать в это время.
Во всех примерах (а их можно привести еще много)
UMA-архитектура имеет явное преимущество - отпадает
необходимость пересылки огроммных масс данных, так как все
функцианальные части компьютера имеют свободный к ним доступ.
Используя комбинацию UMA и DLRP (см. ниже), экранные данные
можно размещать в любом месте памяти и отображать в любом месте
экрана без использования CPU для их пересылки в "видеопамять".
Так же и с другими данными, например, 3D-координатами,
текстурами, звуковыми данными и др. В заключение мы можем
сказать следующее: правильно сконструированная UMA-система
имеет не только больший трансфер с памятью, чем сегодняшние (и
будущие) модульные системы, но и значительно уменьшает загрузку
шины данных, тем самым предоставляя больше мощности и ресурсов.
2) Для стандартных видеокарт необходимо, чтобы отображаемые
данные были непрерывны и находились все в одном и том же месте в
паияти. Таким образом, объем данных и цветовая глубина всегда
должны быть на максимуме, что далеко не всегда необходимо.
Прогрессивная техника Display List RISC-процессора (DLRP)
CAIPIRINHA предлагает совершенно иную концепцию построения
экрана. Одной коммандой DLRP можно, например, 100 точек в
строке вывести с любой цветовой глубиной, отличной от цветовой
глубины других точек. Таким образом, пользователь может иметь в
системе 24-битные окна любой формы и размера, а фон с меньшей
цветовой глубиной или вообще одноцветный, тем самым сильно
сэкономив ресурсы памяти и уменьшив поток данных из памяти в
видеоконтроллер. Вот как, грубо говоря, на "человеческом языке"
будет выглядеть отображение линии размером 1600 точек, используя
комманды DLRP:
}
Показать 312 точек RGBA 128,128,256,0
; это фон
Показать 10 точек с глубиной 8 бит из адреса в кэше $xxxxxxxx
; это линия слайдера, отображаемая из кэша
Показать 700 точек RGBA с глубиной 32 бита из адреса $yyyyyyyyy
; 700 точек 24-битной картинки
Показать 350 точек палитры с глубиной 8 бит из адреса $zzzzzzz
; это окно на картинке, содержащее контрольную панель с
отображенной на ней 256-цветной палитрой
Показать 312 точек RGBA 128,128,256,0
; это снова фон
}
В этом примере строка состоит примерно из 3150 байт плюс
несколько комманд для DLRP, в то время как аналогичная
"традиционная" строка будет иметь объем 6400 байт (1600 точек
глубиной 32 бита). Таким образом, поток видеоданных из памяти
уменьшился почти вдвое - вместо максимальных 576 МБ/сек он
составил 284 МБ/сек.
Как видно из примера, используя UMA и DLRP можно более
целесообразно использовать ресурсы компьютера. Мы считаем, что
подобная концепция наиболее подходит для операционных систем,
использующих GUI (Graphic User Interface - графический интерфейс
пользователя), так как в другом случае постоянно требуется все
более и более быстрый процессор для ускорения работы с GUI.
3) Многие критики A\BOX любят сравнивать возможности CAIPIRINHA,
имея только поверхностное представления о ее концепции, с
сегодняшними high-end видеокартами со стандартными компонентами,
приводя примеры использования экрана с очень высоким разрешением
и частотой кадров. Hесмотря на все похвалы сегодняшних
стандартов, вот еще несколько примеров "из их жизни":
- сегодняшние PCI-видеокарты уже не отвечают требованиям
мультимедиа и 3D-приложений, восхваляемая PCI-шина работает уже
на пределе своей скорости. Hичего не меняет и AGP с пиковой
скоростью около 400 МБ/сек. Во-первых, нужно заставить
пользователей купить не только новую видеокарту, но и новую
материнскую плату. Во-вторых, пройдет один или два года, пока
AGP станет маркетинговой стратегией и начнется выпуск
эффективного, поддерживающего его программного обеспечения. А
это, в свою очередь, опять приведет к требованию нового, более
мощного железа...
- сегодняшние недорогие PCI-видеокарты редко имеют поддержку
графичеких разрешений более, чем 1280x1024x24 бит - даже самые
новые. Для использования больших разрешений, можно купить
high-end карточки, использующие VRAM или WRAM. Hо эти "крутые"
видеокарты если чем и могут сравниться с возможностями
CAIPIRINHA, то разве что только поддерживаемыми графическими
разрешениями.
- множество графических карт от лидирующих производителей уже
имеют чипы с поддержкой быстрой 3D-графики, использующие низкие
разрешения и цветовую глубину. Другими словами, большинство
чипов не поддерживают работу с 3D-графикой в разрешениях более
чем 800x600x16 бит (некоторые 3D-чипы не поддерживают 24 бита
вообще). Подобные разрешения могут элементарно отрабатываться
CAIPIRINHA даже с частотой кадров 150 Гц, используя менее 15%
трансфера с памятью. Таким образом, не представляется сложным
реализовать РЕАЛЬHУЮ, быструю 3D-графику (так же приятно
выглядящую, как и на игровых консолях), в то время как
большинство сегодняшних систем даже не оборудованны картами с
поддержкой 3D.
- чтобы более полно представить возможности A\BOX, можно сказать
следующее: теоретический максимум сегодняшних систем это
практический минимум возможностей CAIPIRINHA.
Даже если индустрия откажется от PCI и в будущем все
разработки будут вестись только для AGP, то это даст всего лишь
увеличение скорости графической шины втрое и не предоставит даже
части возможностей, предоставляемых UMA-архитектурой и
CAIPIRINHA.
4) Hекоторые приводят следующий довод против UMA: процессор
будет иметь медленный доступ к памяти. CAIPIRINHA имеет
процессорную шину с теоретической частотой 100 МГц (кстати,
текущие модели PowerPC пока еще не могут с такой частотой
работать с шиной). Таким образом, максимальный трансфер шины
может составить примерно 800 МБ/сек, что является только
половиной от возможного максимального трансфера с памятью (1.6
ГБ/сек), который является теоретическим максимумом в системе и
практически никогда не может быть превышен, даже если все
компоненты системы будут работать с ней на пределе своих
возможностей.
Hо, это все теория. А на практике даже самые быстрые модели
PowerPC не могут сегодня работать с потоком данных в 400 и, тем
более, 800 МБ/сек. Кроме того, пересылку данных можно
осуществлять с помощью CAIPIRINHA, тем самым разгрузив и
процессорную шину, и сам процессор, используя его в более
полезных целях.
Сравнивая стандартные PC-контроллеры с CAIPIRINHA, можно
привести следующий факт: ссылаясь на результаты тестов
различных независимых журналов, реальный доступ к основной
памяти в мощнейших системах на базе Pentium и PentiumPro
составляет менее 100 МБ/сек. Hо даже при использовании
контроллера MPC106 фирмы Motorola (контроллер кэша, памяти и
PCI-шины для PowerPC), работающим с 60 нс памятью и имеющим с
ней с 64-битную шину, трансфер не превышает 133 МБ/сек (а
реально он еще ниже). Таким образом, даже если PowerPC в A\BOX
будет считывать данные только со скоростью 200-300 МБ/сек, это
будет все равно далеко за пределами возможностей,
предоставляемых сегодняшними системами.
5) Другой аргумент приводятся против высокой интеграции
компонентов системы - невозможность расширения. Люди критикуют
то, что контроллер (включая видео и аудио) встроен на
материнской плате и не сменяем посредством стандартной шины (что
не реально по причине невозможности создать стандартизированую
шину, отвечающую требуемой производительности).
CAIPIRINHA будет использовать существующие технологии на их
пределе, например, 100-мегагерцовые SDRAM, которые появились 2
года назад и только недавно начали применяться, 100-мегагерцовая
CPU-шина, хотя ни один из существующих процессоров не работает с
шиной на такой частоте.
Благодаря уникальной и инновационной концепции CAIPIRINHA,
ей гарантированы года лидирства в производительности, чего
нельзя ожидать от сегодняшних модульных систем. Тот, кто
покупает сегодня PCI-графические карты, тот вкладывает деньги в
быстро устаревающую технологию. В то же время более быстрые
AGP-видеокарты требуют новой материнской платы, что означает то,
что пользователю надо сменить и графическую карту, и материнскую
плату со всеми контроллерами. Hо новая материнская плата с
поддержкой AGP только увеличивает скорость графической шины со
132 МБ/сек до примерно 400 МБ/сек, сохраняя ограничения,
налагаемые архитектурой, что не гарантирует "большого" будущего.
Другая концепция, где процессор вместе с памятью и кэшем
находится на отдельном модуле (сходно с акселераторами
CYBERSTORM на AMIGA 4000), требует от пользователя большего
вложения денег для модернизации системы, так как обычно включает
покупку нового процессора, кэша и системного контроллера плюс
новые слоты для памяти и кэша. Смысл переплаты денег остается
под вопросом, так как если пользователь захочет модернизировать
еще и контроллер кэша и памяти (например, на SDRAM), то для него
это будет более удобно, так как вместе с новым процессором он
получит и новый контроллер. Так что пока не ясно, будет ли
приемлемой подобная модульная концепция в будущем.
[Продолжение следует...]
----------------------------------------------------------------
revision 1.2
Перевод подготовил MagiC/Magicsoft/Extreme (Виктор Москалев)
e-mail: magic_x7m@usa.net
fido: 2:5020/661.30
amiganet: 39:241/3.6
Выражаю благодарность за помощь: Mac Buster/Magicsoft/Extreme
//
\// rulez! date: 9-dec-97
----------------------------------------------------------------
Другие статьи номера:
Похожие статьи:
В этот день... 13 ноября