Тайна Intel i740 — самой экзотической видеокарты из 90-х [Длиннопост, про железо]
Ранее я часто рассказывал об особенностях видеокарт из 90-х. В рамках прошлых статей, мы успели с вами рассмотреть внутреннюю архитектуру 3dfx Voodoo, узнать о кастомном графическом API в S3 ViRGE, и даже написать свою собственную небольшую демку под видеокарты из 90-х. Вместо рассказов о GeForce 256 и ATi 3D Rage, в сегодняшнем материале мне хотелось бы поговорить о видеокарте, которая обогнала своё время — и при этом всё равно провалилась. Как вы уже поняли — речь пойдет об Intel i740.
Каким был первый GPU от Intel, на что он был способен и в чём заключается его главная тайна — читайте в сегодняшней статье!
❯ Предисловие
История видеоускорителей Intel начинается, как это ни странно, с программ космических симуляций. Первые наработки 3D-ускорителей разрабатывали ещё в 70-х годах в стенах компании GE Aerospace, однако в 1992 году, General Electric решили продать своё аэрокосмическое подразделение компании Martin Marietta, которое в 1995 году стало называться Lockheed Martin. После появления PlayStation 1 и массовых игровых автоматов с 3D-графикой, было очевидно что рано или поздно 3D станет мейнстримом и в сегменте домашних компьютеров, а пока конкуренция была ещё достаточно мала, Lockheed Martin решила организовать подразделение под названием Real3D.
По сути, в 1995 году из конкурентов у Real3D была только Nvidia со своим мультимедийным акселлератором NV1 и... PowerVR с GPU Midas 3. Но NV1 не был просто 3D-ускорителем — это целый комбайн, который включал в себя контроллер геймпадов от SEGA Saturn, звуковую карту, 2D-ускоритель для GDI/DDraw-игр и, собственно, 3D-ускоритель. Стоил NV1 целых 300$ и его самая главная фишка в лице 3D-ускорителя оказалась полным провалом: дело в том, что по каким-то причинам инженеры Nvidia решили построить растеризатор на базе квадов, а не общепринятых треугольников. Из-за этого разработчикам приходилось серьезно переписывать рендереры своих игр, поэтому на NV1 вышло всего 6 игр. Кроме того, NV1 оперировал не классическими UV-координатами, а специальными «весами», которые диктовали GPU как правильно наносить текстуру на примитив.
Как и NV1, PowerVR Midas 3 был тоже прорывным и в некоторой степени экзотическим GPU. В отличии от чипа от Nvidia, он оперировал классическими треугольниками, однако растеризатор здесь работал по принципу TBDR — Tile Based Deffered Renderer. Если говорить простыми словами, то видеокарта разбивала экран на набор тайлов размером 32x32 каждый, считала видимость и перекрытие всех рисуемых в тайле треугольников и затем отсылала их растеризатору. Таким образом, Midas 3 очень сильно экономил филлрейт за счёт отсечения невидимых поверхностей, не требовал тяжелого Z-буфера и заметно снижал нагрузку на общую шину с видеопамятью. Однако TBDR очень не любит полупрозрачные поверхности, а также геометрию с альфа-тестом, поэтому производительность Midas 3 значительно падала при отрисовке заборов, решеток и прочих объектов с полностью прозрачными пикселями. К слову TBDR в отличии от квадов живёт и сегодня и применяется даже в вашей RTX5090, а GPU от PowerVR сильно повлияли на успех первых iPhone (причём MBX был прямым наследником Midas 3).
Поэтому в 1995 году, Real3D совместно с Intel и Chips (читатели, заставшие 386/486, сразу поймут что это за компания) начали разрабатывать потребительский GPU под кодовым именем Auburn. Главной фишкой Auburn была новая шина AGP, созданная специально для видеокарт. Концептуально и электрически AGP был практически идентичен PCI: использовалась всё та же параллельная шина (за исключением того, что AGP не делил линии с другими устройствами как PCI) с теми же логическими уровнями, на программном уровне AGP-устройства использовали регистры PCI-контроллера и PCI-й же Configuration Space, а регистры и память самого GPU точно также маппились в адресное пространство процессора с помощью MMIO. Однако AGP добавлял ещё несколько важных фишек:
Возможность передачи данных как по восходящему, так и по спадающему фронту — как в DDR. Это позволяло передавать данные в два раза быстрее без фактического увеличения скорости шины, которая в первых версиях работала на частоте в 66МГц — x2 от PCI.
Технология GART, позволявшая замаппить кусок RAM для совместного использования GPU и CPU. Таким образом, GPU мог читать текстуры не только из собственной видеопамяти, но и из оперативной — что по теории Intel должно было решить проблему недостатка дорогой EDO-памяти для текстур и заметно удешевить видеокарты.
Иллюстрация с сайта pctechguide. Как мы с вами видим, процессор был связан напрямую с северным мостом, который включал в себя контроллер DRAM, PCI и AGP. Процессор был подключен к «северу» с помощью шины FSB
Как вы уже могли понять, основной упор в Auburn решили сделать на поддержку технологии GART. Суть её была такой, что на видеокарте располагается лишь минимальный объём видеопамяти (~4МБ) для хранения фреймбуфера и Z-буфера, в то время как для хранения текстур предполагается использовать системную память. Теоретически этот способ помогал заметно разгрузить шину GPU — VRAM в процессе растеризации, при этом распараллеливая обращения к текстурам через контроллер памяти в северном мосту. На бумаге это звучало хорошо...
❯ Разбираем архитектуру
Архитектура видеокарт в 90-х заметно отличалась от современных. Во первых, в GPU тех лет конвейер был фиксированным: все возможные операции по освещению, наложению тумана и текстурированию были заранее реализованы в железе и возможности вручную посчитать цвет фрагмента не было. Некоторым подобием шейдеров была возможность мультитекстурирования, которая позволяла за один проход наносить несколько текстур одновременно с разными операциями: например можно было наложить основную текстуру, маску и сферическую карту отражений, что позволяло сделать модельку машины, где кузов отражается, а матовые элементы — нет. Первой видеокартой с поддержкой мультитекстурирования была 3dfx Voodoo 2, однако там возможность нанесения нескольких текстур за один такт зависела от числа TMU — текстурных юнитов на видеокарте.
Иллюстрация с сайта ScienceDirect. Здесь представлен чуть более поздний конвейер — времен GeForce 256, с аппаратным T&L
Во вторых, вплоть до GeForce 256 в видеокартах вообще не было вершинного конвейера. Вы же помните слова о том, что видеопамять используется только для фреймбуфера, а оперативная — для текстур? Так вот, в те годы видеокарты не хранили в себе геометрию и никак её не обрабатывали, ожидая на вход уже готовые и преобразованные треугольники. Таким образом, вся нагрузка по трансформации треугольников, перспективному делению, повершинному освещению и клиппингу (разбиения частично видимых треугольников «перед носом» на несколько более мелких) ложилась на центральный процессор, в то время как GPU оставалось лишь это всё растеризовать (и именно отсюда растут корни glBegin/glEnd). В GF256 уже появилась поддержка T&L и возможность размещать вершинные буферы в видеопамяти, что позволило уже через 2-3 года кратно увеличить полигональность моделей в играх.
Auburn, уже под финальным названием Intel i740, появился в начале 1998 года и должен был конкурировать с новым ATi Rage 128. На первый взгляд, это был суперсовременный и доступный GPU на момент выхода:
В i740 был встроен 2D-ускоритель с аппаратным ускорением GDI и DirectDraw, поддержкой разрешения до 1280x1024 при 16-битном цвете и поддержкой как VGA, так и NTSC/PAL для вывода изображения на телевизор.
Помимо 2D-ускорителя, в GPU был также аппаратный декодер DVD. Это уже очень серьезная заявка на успех с учетом того, что не каждый процессор в те годы мог программно декодировать MPEGII.
3D движок поддерживал все современные на тот момент возможности: Z-буфер, MSAA, затенение по методу Гуро, попиксельный туман, альфа-блендинг, альфа-тест, дизеринг, трилинейную фильтрацию. Из текстурных форматов поддерживалась палитровые, 1555, 565 и 4444 — никаких 24 и тем более 32 битных текстур.
На бумаге GPU работал на частоте в 133МГц, имел приличный филлрейт в ~55 мегапикселей, мог растеризовывать до ~350к треугольников в секунду (или около 11к треугольников на один кадр — это не так мало, как кажется. В HL ~4к треугольников на кадр к примеру).
И самое главное — никаких собственных GAPI, полный ориентир на OpenGL и Direct3D.
Всё это было выполнено на техпроцессе в 350нм и при скромной розничной цене в 120$. Звучит как что-то невероятное, однако на практике FPS в играх был не особо высокий из-за использования GART: видеокарте постоянно приходилось бороться с процессором за возможность доступа к оперативной памяти, из-за чего страдала пропускная способность как со стороны GPU, так и со стороны процессора. Добавьте к этому невысокую частоту FSB и самой SDRAM и получаем просадки растущие не только от объёма геометрии в кадре, но и количества наносимых текстур, благо i740 не поддерживал мультитекстурирование.
Очевидно что в 1998 году, большинство 3D-акселлераторов проектировались как игровые и i740 стал провалом в геймерском сегменте из-за невысокого FPS в играх. Ситуация становилась ироничной из-за того, что Intel выпустила специальную PCI-версию, для которой отдельно разработала чип-мост, перенаправляющий обращения к GART с северного моста на дополнительные чипы SGRAM распаянные на плате. PCI-версия стоила значительно дороже и нивелировала все плюсы i740, хоть и работала в играх чуть быстрее, что иронично.
Однако огромным плюсом были адекватные драйвера для OpenGL и Direct3D. До 1998 года, большинство видеокарт были ориентированы в первую очередь на свои собственные проприетарные графические API — у 3dfx был Glide, у S3 — Metal (не тот что у Apple), а у ATi — CIF, в то время как i740 был ориентирован на стандартные API. При этом все три API взваливали задачу написания аллокатора текстур, математической библиотеки и вершинного конвейера на программиста, что заметно увеличивало порог входа для разработки 3D-игр. У GL и D3D же это всё было готово «из коробки», благодаря чему большинство игр уже в 1999 году перешли на DirectX. Для понимания почему так произошло — окромя Nvidia, ни у одного производителя GPU в 90-х не было адекватных драйверов для OpenGL. У 3dfx был обрубок под названием MiniGL специально для Quake, у ATi драйвера были кривыми вплоть до ~2001 года, а у S3/SiS вообще всё с этим было максимально плохо, поэтому и победил DirectX.
Ещё одна причина почему победил в DirectX
Во времена DirectX 6 было два режима D3D — Immediate и Retained. Immediate больше всего похож на современные графические API, поскольку сразу оперировал программными командными буферами, и аппаратными вершинными/индексными буферами, что позволило прозрачно для игр использовать T&L и заметно поднять их производительность.
Retained же представлял из себя почти готовый графический движок с полноценным графом сцены, математической библиотекой и даже API для загрузки моделей/текстур с диска. Retained-режим очень сильно снижал порог входа в сферу, благодаря чему некоторые игры использовали именно его.
Касательно конкретных фишек у i740 всё тоже было не идеально. Во первых, как я и говорил ранее, i740 не имел поддержки мультитекстурирования, что требовало двухпроходной отрисовки уровней — сначала геометрия с текстурой, затем та же самая геометрия с лайтмапой. Больше всего это было актуально для Half-Life и Quake. Во вторых, i740 не поддерживал Stencil-буфер и соответственно стенсильные тени в реальном времен. Можно было только очень костыльно реализовать самые примитивные Shadowmap'ы без фильтрации, но выглядели они отвратительно.
И в третьих — i740 не поддерживал текстурную компрессию, которая позволила бы заметно выиграть в производительности. Дело в том, что блочные алгоритмы типа DXT позволяют хранить блок из 16 пикселей всего в 8 байтах (двух машинных словах) и отлично кэшируются, что помогло бы разгрузить шину... но имеем что имеем. В играх i740 показывал себя в целом очень даже неплохо, но уступал решениям от ATi и Nvidia, а ещё по каким-то причинам GPU не использовался в ноутбуках (скорее всего из-за отсутствия поддержки LVDS).
Результаты в играх были неплохими, но не более того. В Quake 3 i740 в AGP-версии выдавала солидные 30 FPS (а PCI-версия всего 20), в то время как в Quake 1 кадровая частота местами подлетала почти до 50 FPS. В Carmageddon II приходилось наслаждаться 20-22 FPS на обеих версиях, зато Mortal Kombat 4 шел в 50 на PCI версии и 60 на AGP. В MS Flight Simulator 98, i740 вытворял чудеса и выдавал более 60 FPS - это уже FPS уровня современного геймера.
Несмотря на все свои недостатки, i740 не отправился в помойку: несмотря на провал на розничном рынке, i740 стоил очень недорого на оптовом для OEM, что и обеспечило ему большую популярность в готовых сборках. А годом позднее, GPU был интегрирован в чипсет Intel i810, где и раскрыл свой бюджетный потенциал во всю. Его основными конкурентами стали SiS Mirage Graphics на базе SiS 6326 (обычно была слабее Intel'ов), VIA Unichrome на базе легендарного S3 Savage, и такая экзотика, как Trident CyberBLADE XP. В 2004'ом, Intel выпустила современный и относительно крутой GPU под названием GMA900 с поддержкой Direct3D9 и продвинутым шейдерным конвейером, но... об этом как-нибудь в другой раз.
❯ Заключение
Вот такой была первая видеокарта от Intel. И, судя по всему, из года в год Intel повторяет историю точь в точь: разрабатывают продвинутый GPU с поддержкой всех современных технологий, но спотыкаются об использование RAM в качестве основной памяти и кривоватые драйвера. Хотя сейчас с появлением Intel Arc ситуация кратно улучшилась. А что вы думаете о GPU от Intel? Пишите своё мнение в комментариях!
В будущем хотелось бы написать статью про что-то из Trident'ов, PowerVR, Trident'ов или ранних 3dfx, но к сожалению пока возможности купить их нет. Но там будь что будет :)
Ну а я надеюсь, что вам было интересно. Подписывайтесь на блог, чтобы не пропускать новые статьи каждую неделю! А если вам интересна тематика ремонта, моддинга и программирования для гаджетов прошлых лет — подписывайтесь на мой Telegram-канал «Клуб фанатов балдежа», куда я выкладываю бэкстейджи статей, ссылки на новые статьи и видео, а также иногда выкладываю полезные посты и щитпостю. А ролики (не всегда дублирующие статьи) можно найти на моём YouTube канале.
А если вы хотите что-нибудь подарить из железа и увидеть о нём статью — пишите мне в Telegram. Меня очень интересуют самые разные гаджеты: начиная от игровых консолей и любых связанных с геймингом устройств, телефонов, смартфонов, КПК, заканчивая ретро-компьютерами и ноутбуками. Кто знает, может героем следующей подобной статьи окажется ноутбук из 90-х? :)
После обзоров устройства не продаются, а остаются в моей коллекции. Когда-нибудь я хочу сделать музей, где к каждому устройству можно будет приложить QR и почитать мою статью. Кто знает, вдруг на следующей неделе я также подробно расскажу про девайс из вашей юности? :)
Фото Nokia 9300 с сайта mobile-review.com
Кстати, у меня есть GameBoy Advance SP, под который я очень хочу написать игру. Однако мой экземпляр был залит водой и кофе. Может у кого-то есть донор с дохлой платой, откуда я смог бы взять контроллер питания? У меня AGS-101.
Xena
Герой Российской Федерации Магомед Шамиль Абдурахимов
Магомедшамиль Магомедович Абдурагимов (5 января 1980, Какамахи, Сельсовет Кака-Шуринский, Карабудахкентский район, Дагестанская АССР— 9 октября 2005, Махачкала) — оперуполномоченный отряда милиции особого назначения криминальной милиции Министерства внутренних дел Республики Дагестан, старший лейтенант милиции.Герой Российской Федерации (2006).
Обладатель Кубка мира по тайскому боксу (2001), серебряный призёр чемпионата мира по тайскому боксу (2003), чемпион России,мастер спорта России международного класса.
После окончания школы Магомедшамиль поступил на юридический факультет Дагестанского государственного университета.Обучаясь в ДГУ, он устроился работать в отдел спецназначения правоохранительных структур.
C 2003 года служил в отряде милиции особого назначения криминальной милиции Министерства внутренних дел Республики Дагестан.
9 октября 2005 года старший лейтенант милиции М.М.Абдурагимов в составе отряда особого назначения принимал участие в спецоперации по уничтожению участников диверсионно- террористической банды по улице Первомайской в Махачкале .
Как только бойцы правоохранительных органов вошли во двор дома, где засели и были блокированы члены террористической группировки “Шариат”, бандиты открыли по ним огонь из автоматического оружия. В этом скоротечном отрезке боя два сотрудника милиции получают смертельные ранения.
Магомедшамилю, получившему серьезное ранение, вместе с товарищами удалось спастись в первые минуты боя. В этот момент старший лейтенант М. Абдурагимов порекомендовал своим товарищам отойти назад, а сам бросился спасать боевого товарища, майора Сергея Подвального, которого бандиты накрыли шквалом огня. Там он сумел обезвредить террориста, установившего взрывное устройство.
Он, отстреливаясь из автомата, почти подполз к своему командиру, когда один из боевиков вышел из под лестницы и выстрелил ему в спину из гранатомета.
Указом Президента Российской Федерации от 29 мая 2006 года за мужество и героизм, проявленные при исполнении служебного долга, старшему лейтенанту милиции Абдурагимову Магомедшамилю Магомедовичу присвоено звание Героя Российской Федерации (посмертно).
Знак особого отличия Героя Российской Федерации - медаль «Золотая Звезда» была вручена его матери.
B Республике Дагестан проводятся турниры по спортивным боям памяти Героя Российской Федерации М.М.Абдурагимова.
Источники :
Курица-подушка и торт Панчо
Один раз гулял по Москве. Устал, ночь уже. Лёг спать в Александровском саду. А так как я был богат, у меня было две бутылки «Старого мельника» и курица-гриль — редкое сокровище для меня в моей бомжиной жизни.
Пиво приговорил, курицу положил под голову как подушку. Сон у меня всегда колымский был. Сплю и слышу, как на голове волосы растут. Думаю: «Рассосутся люди и по хаваю». Хотя хотел сожрать её ещё когда покупал.
Лёг короче. И чувствую — кто-то богатство это из-под головы тянет. Вытащил и уходит. Я за ним — догнал, забрал. Не поделился, потому что красть у бедолаги нельзя.
Сменил место дислокации и сожрал курицу с таким наслаждением, как будто это торт «Панчо». Для меня торт «Панчо» — верх всего самого наилучшего на тот момент был. Развалился, размечтался — уснул.
А утром опять бродить по Москве. Она богатая, всем тогда давала. В туалет зашёл, умылся — и вперёд, заре навстречу.
Пятничный Counter Strike 1.6 в 20:30 МСК
🎮 Кто еще не в отпуске, подключайтесь на пятничный Counter Strike 1.6. Играем в классический cs, без модов, со стандартным балансом.
‼️Как номинировать карты? Пишем в чат на "Y" название карты или ее часть. Например хотим номинировать карты aim или dust, так и пишем, что-то из этого и увидите список карт, где есть aim или dust.
🎮Статистика сервера (https://uplay2.ru/csstats2/). Для проверки онлайна на сервере, т.е узнать кто сейчас играет можно чекнуть эту страничку (https://gamestates.ru/info/37.230.137.48:27015).
🟢Как зайти на сервер. Нажимаем "Найти сервер", выбираем вкладку "Избранное" и нажимаем "Добавить". Копируйте и вставляете IP: 37.230.137.48
❗️Убрать звания и опыт, если мешают, команда /informer в чат игры.
Можно играть со Steam версии или любой другой на ваш выбор.
✈️Онлайн-ретро чат, пишите обязательно, если возникают проблемы с запуском или заходом на сервер.
✈️Наше сообщество в Телеграме https://t.me/uPlay2ru
🕒Начинаем в 20:30 МСК
🖥Discord (https://discord.com/invite/r3kCQNxX5Z) для общения в голосе. Можем подтвердить ваш номер, если не приходит смс, нужен только ваш ник.
Африканский автопром. Машины, дороги и немного ржавчины
В начале нулевых мне повезло попасть в команду, которая запускала телеком-проекты по всей Африке. Тогда российских инженеров очень уважали. Не потому, что мы были какими-то волшебниками (хотя иногда приходилось ими становиться), а потому что у советской инженерной школы была отличная репутация. Плюс мы были относительно недорогими специалистами и соглашались на такие сроки и бюджеты, от которых многие европейцы предпочитали держаться подальше.
До сих пор считаю, что мне невероятно повезло с коллегами. Это были настоящие Кулибины. Если нужной детали нет - сделаем. Нет софта - напишем. Нет электричества (и такое случалось) - тоже как-нибудь решим. Именно рядом с такими людьми я научилась понимать, что инженерия - это не про красивые чертежи, а про способность заставить работать то, что работать вообще не должно.
За несколько лет мне довелось поработать в Нигерии, Мали, Буркина-Фасо и ЮАР. А поскольку я до фотографировала буквально всё подряд (увы, сначала на "мыльницу"), накопилось немало снимков местного транспорта. Давайте просто посмотрим, на чем тогда ездили люди, а заодно немного поговорим о самих странах.
НИГЕРИЯ
Если смотреть только на цифры, Нигерия - это одна из самых богатых стран Африки. Здесь живет более 200 миллионов человек, а основа экономики нефть и газ. Именно нефть десятилетиями приносила львиную долю валютной выручки страны.
Но есть классическая проблема "ресурсного проклятия": богатые природные ресурсы вовсе не гарантируют богатую жизнь населения. Огромные доходы соседствуют с бедностью, коррупцией и слабой инфраструктурой. Поэтому рядом с современными внедорожниками можно встретить машины, которые в Европе давно стали музейными экспонатами.
Почему машины там так гниют?
Это вопрос мне уже задавали после рассказа про ремонт телефона.
В комментариях сравнивают Нигерию с Нидерландами или Кипром:
— "Ну там же тоже влажно."
Но дело вовсе не только во влажности. В Нигерии совпадает сразу несколько факторов.
температура почти круглый год +30...35°C;
влажность часто 90–100%;
океан совсем рядом, а морской воздух содержит мельчайшие капли соли;
во время сезона дождей машина практически не успевает высыхать.
Именно сочетание тепла + постоянной влажности + соли многократно ускоряет электрохимическую коррозию.
На Кипре, конечно, воздух тоже соленый, но большую часть года сухо. В Нидерландах влажность высокая, зато температура значительно ниже, поэтому химические процессы идут заметно медленнее. Зимой основной ущерб там приносит дорожная соль, а не климат.
В прибрежной Нигерии автомобиль может покрыться рыжими очагами буквально за несколько лет, если за ним не ухаживать.
МАЛИ
После Нигерии Мали меня удивила (или удивил?). Ржавчины здесь заметно меньше. Просто потому, что климат совершенно другой.
Это уже Сахель - полупустынная зона. Воздух сухой, дождей мало, поэтому кузова сохраняются намного лучше. К слову, тут очень любят мопеды
Кажется, что местный автопарк состоит из автомобилей, которые уже пережили несколько поколений владельцев. Многие машины приезжают сюда после Европы и работают до последнего болта. Не все, конечно..
Экономика Мали исторически держится на трех китах:
сельское хозяйство;
добыча золота (страна входит в число крупнейших производителей золота в Африке);
хлопок.
Промышленности немного, новые автомобили стоят очень дорого, поэтому местные умеют поддерживать жизнь в любой технике.
Иногда смотришь на очередной пикап и понимаешь: по всем законам физики он должен был умереть лет десять назад. Но нет. Едет (иногда сквозь днище в салоне я видела асфальт)
БУРКИНА - ФАСО
Это одна из самых бедных стран мира, хотя сами жители удивительно открытые и доброжелательные. Экономика здесь очень простая:
хлопок;
животноводство;
сельское хозяйство;
немного добычи золота.
Климат похож на малийский - жаркий и довольно сухой.
Машины тоже сохраняются намного лучше, чем в Нигерии. Но лично у меня Буркина всегда будет ассоциироваться совсем не с автомобилями. А с клубникой.
Я до сих пор вспоминаю, как покупала ее... ведрами. После европейских цен это выглядело почти сюрреалистично.
Ну и любимые всеми мопеды - куда без них!
Про ЮАР напишу отдельно.... И так что-то много вышло.
Всем хорошего дня и бензина - полный бак!











































