Самодельная видеокарта FuryGPU запускает Quake со скоростью 60 кадров в секунду
PCI Express (Peripheral Component Interconnect Express), или PCIe, или PCI-e (также известная как 3GIO for 3rd Generation I/O; не путать с PCI-X и PXI) — компьютерная шина (хотя на физическом уровне шиной не является, будучи соединением типа «точка-точка»), использующая программную модель шины PCI и высокопроизводительный физический протокол, основанный на последовательной передаче данных. Разработка стандарта PCI Express была начата фирмой Intel после отказа от шины InfiniBand. Официально первая базовая спецификация PCI Express появилась в июле 2002 года. Развитием стандарта PCI Express занимается организация PCI Special Interest Group. Википедия
Читайте также:Работающее подключение PCIe 6.0 продемонстрировано Astera LabsКитайский SSD-контроллер RISC-V PCIe 5.0 обещает скорость до 14,2 ГБ/с без вентилятораСамый быстрый графический ускоритель ИИ Nvidia H100 SXM можно установить в обычный слот x16 PCIePCIe 7.0 увеличит пропускную способность в четыре раза по сравнению с PCIe 5.0Объявлена спецификация PCIe 6.0 – скорость передачи данных вдвое превышает PCIe 5.0
Quake (/kweɪk/, с англ. — «дрожь») — компьютерная игра в жанре шутера от первого лица, разработанная id Software и выпущенная 22 июля 1996 года (полная версия). Перед официальным релизом полной версии игры, а именно 24 февраля 1996 года была выпущена технологическая демо-версия игры под названием QTest. В ней не было поддержки одиночного режима игры, и часть геймплея была ещё не доработана, однако, благодаря присутствию в игре поддержки мультиплеера, буквально за сутки в мире появились десятки серверов для онлайн-игры. Затем, 22 июня 1996 года была выпущена shareware-версия игры, включавшая в себя только первый эпизод, и доступная для скачивания с официального сайта id Software. Википедия
Читайте также:Рождается новый Doom или Quake; id Software ищет сотрудниковАркадная версия Quake появилась на ПКBethesda сделала Quake Champions бесплатнойQuake Champions будет бесплатной еще одну неделюQuake Champions получит одно из самых больших обновлений
Как вы можете видеть на изображениях, FuryGPU очень похожа на типичную видеокарту для ПК, выпущенную примерно 20 лет назад, но оснащенную выходами DisplayPort и HDMI. Однако этот проект выходит далеко за рамки аппаратного обеспечения: Барри признает, что самым болезненным аспектом конструкции было создание драйверов для Windows.
Аппаратное обеспечение: от платы производителя до видеокарты
Барри начал реализовывать свою мечту о создании графического процессора с нуля после того, как взял в руки макетную плату Arty Z7 с FPGA и провел предварительную разработку и тестирование. Впоследствии проект получил импульс благодаря дебюту Xilinx Kria System-on-Modules (SoM), которые сочетают в себе «безумно дешевые FPGA Zynq UltraScale+ с массой модулей DSP и (сравнительно) огромным количеством LUT и FF, а также особый интерес — усиленное ядро PCIe», — восторгался Барри.
Чтобы перейти от этой платы производителя к дизайну платы расширения FuryGPU PCIe, которую мы увидим в 2024 году, Барри самостоятельно изучил язык описания и проверки оборудования SystemVerilog, а также программный пакет KiCAD EDA/CAD для электроники. Он говорит, что потребовались титанические усилия для разработки схемы FuryGPU с 4-канальным PCIe, который мы видим сегодня, даже со схемой FPGA, встроенной в SoM. Теперь пришло время подключить FuryGPU к его тестовому стенду, написать драйверы и протестировать игры.
Драйверы Windows и Quake со скоростью 60 кадров в секунду
Создание драйверов Windows для FuryGPU Барри описывает как «самый болезненный» аспект всего проекта – несмотря на то, что его основная работа в течение последних 14 лет была связана с программным обеспечением рендеринга графики в индустрии разработки игр.
Первоначально целью производителя FuryGPU было запустить простую демонстрационную версию вращающегося куба, чтобы продемонстрировать работу графического процессора. Однако по мере развития проекта новой целью стала игра в культовую компьютерную игру Quake с приемлемой частотой кадров.
Барри объясняет, что после подготовки драйверов для Windows он написал специальный графический API для связи с графическим процессором, написал драйверы ядра Windows для дисплея и звука, и теперь у него есть «полнофункциональное графическое оборудование, которое может отображать Quake с высокой скоростью 60 кадров в секунду».
Разработчик говорит, что есть явные возможности заставить Quake «работать намного быстрее», поскольку он увидел некоторые очевидные узкие места, которые он будет устранять при оптимизации.
FuryGPU получит открытый исходный код. «В какой-то момент я планирую открыть исходный код всего стека (схемы/схемы печатной платы, всех HDL, драйверов Windows WDDM, драйверов среды выполнения API и Quake, портированного для использования API), но есть ряд юридических проблем, — написал Барри в посте Hacker News в среду. Поскольку его профессия косвенно связана с FuryGPU, он хочет быть уверен, что никакая из этих работ не нарушит его рабочий контракт, лицензию и т. д. В этой же теме содержится немало дополнительных подробностей о проекте FuryGPU для тех, кто особенно заинтересован.
На сайте FuryGPU есть статья, посвященная текстурным блокам графического процессора, для желающих глубже погрузиться в архитектуру.
Чтобы завершить освещение этого интересного нового (для нас) проекта, стоит объяснить предполагаемый масштаб FuryGPU. Понятно, что это проект производителя, как и макет процессора, но FuryGPU предлагает настолько впечатляющую производительность, что некоторые могут принять его за серьезную новую архитектуру графического процессора. Барри (пишущей под псевдонимом PfhorSlayer) ясно дает понять, что это не так в вышеупомянутой теме Hacker News. «Это игрушка», — заявил производитель FuryGPU. «Это не изменит ситуацию с графическими процессорами и не приведет к конкуренции с кем-либо из коммерческих игроков».
0 комментариев