Buzz #13
12 февраля 1998
  Amiga  

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
----------------------------------------------------------------



Другие статьи номера:

Amiga or PC - Амига или PC. Где выход из тупика ?

Amiga UMA - Плюсы и минусы Unified Memory Architecture.

Chip'n'Dale - 1 - Чип и Дейл спешат заSAVEиться часть 1.

Demoz - Демки кодить я хочу - пусть меня научат. Основные требования предъявляемые к Eurodemo.

Enlight'97 - Результаты голосования на Enlight.

Moscow - Краткий отчет о том, как редакция газеты съездила в Москву.

TOP ZX - Пятерка лучших музыкальных программ , десятка лучших игр и восьмерка лучших журналов.

Towdie - Описание-проходилка игры Towdie.

Авторы

Анекдоты - 20 анекдотов...

Ассемблер - Процедуры : Stretch texture engine, Texture mapping engine, Texture mapping + gourauds hading engine, Gouraudmapping engine for Z80.

Гороскоп - Гороскоп для программистов.

Ликбез - Нострадамус - его пророчества о будущем и о конце света в частности.

Наши новости - Копировщик Mandarin Turbo Copier. Сборник из 3-color'ных японских картинок.

Реклама - Реклама и объявления...

Содержание


Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Похожие статьи:
Программистам - О дополнительных функциях TR-DOS 5.04.
Реклама - ISKRASOFT - Каталог (Прайс-лист).
Юрка - Все же есть свое очаpование в западнобелоpусской деpевеньке в сезон убоpки каpтофеля.

В этот день...   21 марта