Проект open source GPU на Kickstarter

    image

    На Kickstarter несколько дней назад стартовал любопытный проект. Его цель — создать открытый [тут всякий бред маркетологов] и современный графический процессор. Под современностью автор подразумевает совместимость с OpenGL и D3D. Упоминается реализация всего этого на языке Verilog, т.е. подразумевается, что готовая плата будет выполнена на основе FPGA. С одной стороны, это позволит быстро взлететь и в перспективе перейти на заказные чипы, с другой — до этого перехода соотношение цена/качество может быть не на высоте. Хотя душу владельца такой карты будет греть открытость исходников.

    image

    Разработчик, Silicon Spectrum, Inc., в 2002 году выкупил лицензию и всю документацию у производителя видеочипов Number Nine. Была такая контора, Википедия помнит. Эти чипы реализовали в FPGA и продают под собственным именем. В целях проекта — собрать $200k, с дополнительными плюшками на отметках $400k, $600k и $1М. Это должны быть 2D-ускоритель с интерфейсом PCI, 3D-ускоритель с поддержкой OpenGL неизвестной версии и D3D 8.0, и две его более нафаршированных фичами и ускоренных версии соответственно.

    Самое интересное, что разработчик практически прямым текстом пишет про то, что 2D-версия это выкупленный одиннадцать лет назад и устаревший уже тогда процессор производства Number Nine, и он просто откроет исходники. Минимальный вариант 3D-ускорителя пока не готов, но его можно будет доделать буквально за несколько месяцев. Драйвера, по крайней мере первое время, будут так себе. Но сообщество их улучшит, здесь все-таки опен-сорс очень силен.

    Впечатления от проекта смешанные. С одной стороны, дело идейно правильное. С другой, ощущается тонкий запашок торговли воздухом.
    AdBlock has stolen the banner, but banners are not teeth — they will be back

    More
    Ads

    Comments 58

      +3
      <почти_шутка>Кикстартер и ни кружек, ни кепок, ни футболок? Не взлетить проект.</почти_шутка>
      Открытый GPU конечно хорошо, но если он уже устарел на over11 лет, а еще и пилить его, то на первых порах толку мало, только вбухивание денег. А вот в перспективе, могут и вендоров переплюнуть, если всем миром подумать, лишь бы мощности под производство потом найти.
        +5
        Жду «нового инновационного российского» GPU от Сколково
        • UFO just landed and posted this here
            +1
            А в Сколково бывает по-другому?
        • UFO just landed and posted this here
          0
          Неплохо, недавно пришлось аппаратный растеризатор простейших фигур делать на FPGA. А тут такое. А разработчики в любом случае исходники откроют? Интересно посмотреть на текстурирование с корректной перспективой.
            0
            С современными FPGA и доступностью там делений/умножений — проблем нет :-)
          • UFO just landed and posted this here
              0
              А сейчас на современных материнках есть слоты PCI?
                +4
                Да, на многих
                  +1
                  Давно уже даже на дешевых ПЛИС ( ценой до 100уе ) есть PCI-Express ip блоки, причем частенько их не только на x1, но и на x4 хватает.
                    0
                    Для PCI-E будет нужен отдельный адаптер, встраивать его никто не собирается. По крайней мере, так написано
                  +5
                  Так кикстартер рассматривается скорее как благотворительность с возможностью получить небольшой бонус при значимом вкладе. Лучше не стоит это как предзаказ рассматривать.
                    0
                    FPGA платы для такого проекта будут стоить от 500 долларов
                      0
                      SoCKit — the Development Kit for New SoC Device
                      Price 299$
                      Э?
                        0
                        А что там по емкости? На странице проекта есть требования

                          0
                          Емкости хватит, плату пиарят на самой странице проекта. А если этот слон прилетит ещё и с ES версией чипа, что места будет до дури.
                    0
                    А кто-нибудь вообще исследовал, имеет это смысл делать на FPGA или нет? Просто насколько я понимаю, если мы говорим про графику, то фактически наше применение ограничивается математикой плюс всем что связано с обработкой текстур. FPGA же обычно используется когда надо зашить, а потом и перепрошить, некую кастомную логику которая не только математическая (и, насколько я знаю, конкретно для FP подсчетов FPGA не идеальный вариант). Соответственно непонятно что мы получим от этого решения помимо готовой реализации графического взаимодействия FPGA и драйверов.
                      0
                      когда я в 2004-2005х делал магистерскую работу на эту тему, тогда это было актуально.
                      В инете нарыл несколько разработок.
                      Одну, на сколько я помню, делали немцы — они делали системы трёхмерной визуализации данных МРТ, и т.к. станартные решения им не подходили они делали свой ГПУ на FPGA.
                      Сейчас, в связи со всякими CUDA, OpenCL мне такое направление кажется уже не актуальным.
                      0
                      Лучше бы они выкупили у nVidia все разработки 3dfx (а именно так и не успевшего выйти чипов Rampage и Sage с кучей никем так и нереализованный математических фич — www.ixbt.com/video/rampage-tribute.shtml ) и на их основе уже на современном техпроцессе запилить скоростные чипы. Только кто им даст это сделать…
                      ЗЫ и да — как ни странно, но именно у Voodoo4/5 был и есть самый лучший в мире 2D ускоритель.
                      ЗЗЫ — да и драйвера от них со всеми исходниками еще 10 лет как утекли в народ.
                        0
                        с кучей никем так и нереализованный математических фич

                        Вы о чём?
                        Упомянутые чипы — жуткий примитив из «дошейдерной» эпохи, с никакой производительностью (по современным меркам)
                          0
                          Вы сначала почитайте про этот «примитив»: что стоит T-Buffer на VSA-100 (Voodoo4/5), дающий FSAA, Blur и переменный фокус, а те самые мат. навороты по крутизне дали бы прикурить этим вашим шейдерам, которые также поддерживались бы чипом Sage.

                          Ну а про скорость — тогда это было 250 МГц и 65 нм техпроцесс — а сейчас сами понимаете 800..1000 МГц и 20 нм…

                          «Зато еще позднее должен был появится Mojo — принципиально новое, тайловое решение. Не зря же 3dfx купила технологии Gigapixel. У Mojo ожидалось кардинальное новшество — реализация некой разновидности аппаратной сортировки, когда каждый тайл экранного буфера хранит не только цвета точек, но и информацию о задевающих его примитивах (binning архитектура). Т.е, подаваемые на ускоритель треугольники аппаратно сортировались бы прямо на лету, за счет определения принадлежащих им тайлов. Кроме того — в Mojo планировался 16 битный, плавающий формат для вычисления и хранения цветовых компонент. Нас ждала очень точная передача цвета (64 бит плавающий цвет) и его рассчеты, а также широчайший динамический диапазон. А возможно, и еще что-то, кто теперь знает…»
                            0
                            что стоит T-Buffer на VSA-100 (Voodoo4/5), дающий FSAA, Blur и переменный фокус, а те самые мат. навороты по крутизне дали бы прикурить этим вашим шейдерам

                            Т-буффер это костыль созданный потому что блендинг в финальный буффер при многопроходном рендере слишком тормозил. С т-буффером даже постэффекты не сделать — т.к. смешивание происходит слишком поздно.
                            Текстурный комбайнер супротив шейдеров? Бой гусеницы с керзачом?
                            Вы так и не отвелили, что вы подразумевали под словами «мат. навороты».

                            У Mojo ожидалось кардинальное новшество — реализация некой разновидности аппаратной сортировки, <...>
                            Т.е, подаваемые на ускоритель треугольники аппаратно сортировались бы прямо на лету, за счет определения принадлежащих им тайлов

                            Знаете, у меня был PowerVR PCX-1 1996г с настоящей тайловой архитектурой и поддержкой аппаратных теневых обьёмов.
                              0
                              Один из примеров мат. фишек (что помню) — это задание любой криволинейной поверхности через систему из двух уравнений. Экономия объема хранимой информации колоссальный. Пруф пока никак не могу найти — это обещалось в Rampage.
                                0
                                Что вы пытаетесь доказать? Что древнее фиксированное железо лучше нового программируемого?

                                Сможете задать такую систему «двух уравнений» чтобы рисовалось что-то подобное?
                                www.shadertoy.com/view/lsXGWl
                                  0
                                  Да я уже не знаю сам…
                                  Ну да, вы правы — время уже ушло.

                                  По поводу ссылки — говно вопрос — это дело математиков — системой уравнений вида:
                                  A(x,y,z)=0
                                  B(x,y,z)=0
                                  можно задать ЛЮБУЮ поверхность, хоть трехмерного коня, хоть целый город, просто будет много коэфициентов и парочка констант.
                                    0
                                    Хотел бы я посмотреть как вам сферические математики в вакууме будут строить рендер типа вышеприведённого через системы уравнений =)
                                    Системы уравнений с бесконечным количеством коэфициентов это из области фантастики.
                                    Упомянутое вами железо настолько примитивно, что там проблемно было поставить простейшее ALU.
                                    Какие уж там системы уравнений =)
                              +2
                              «тогда это было 250 МГц и 65 нм техпроцесс»
                              Тогда это не могло быть техпроцесса 65 нм. Он был 250 нм.
                              0
                              Еще можно почитать тут — www.kinnet.ru/cterra/386/7657_2.html — глава 3dfx Specter
                              0
                              > лучший в мире 2D ускоритель

                              Ностальгия: все же Matrox рулил, а уж по качеству картинки, да на хорошем мониторе…
                              0
                              Товарищи, это очень хорошая идея.
                              Производители AMD и Nvidia достаточно жестко держат рынок, и всю игровую индустрию. А так же сферы профессиональной графики и не-графические вычисления.
                              Я уже писал, что игровые видеокарты — это урезанные (по скорости отрисовки сложных моделей) профессиональные. Монополия на рынке позволяет им контролировать рынок.
                              Если бы этого не было, была бы возможность делать гораздо более сложные модели в играх, не раскошеливаться на дорогие проф видеокарты, быстрее развивать не графические вычисления, драйвера, внедрять всякие новые фишки вроде аппаратного воксельного рендеринга, которого восхвалял Джон Кармак.
                                +3
                                игровые видеокарты — это урезанные (по скорости отрисовки сложных моделей) профессиональные

                                Там порезаны даблы разве что, да драйвера заточены под разные вещи. В большинстве профессиональных приложений рендер — отстойный легаси код. Игровые карты рассчитаны (удивительно!) под игровой рендер. А даблы в играх нафиг не нужны.
                                  –3
                                  Советую самому вникнуть и разобраться, потом учить окружающих, чем ограничены игровые видеокарты.
                                    +2
                                    А еще удивительнее то, что люди не разобравшись, кто прав, а кто нет — ставят лайки тому, кто «им кажется что прав».
                                    Да, даблы урезаны, но это лишь часть.
                                    +1
                                    Беда моя в том, что я пытаюсь спорить с людьми, некомпетентными в этом вопросе.
                                    Которые пытаются произвести впечатление жаргонами вроде «легаси код» и «даблы».

                                    Если вы возьмете Quadro K5000 и GeForce GTX680 (они на одинаковом чипе) — то при равных частотах они не будут отличаться производительностью в играх. Проверьте. Но если вы внедрите в игру свою модель с миллионами треугольников — Жефорс просядет мгновенно. А Квадра проглотит и не заметит. Тоже проверьте. А стоимость Квадры в 5 раз больше Жефорса.
                                    Я работаю дизайнером, и взял себе Квадру вовсе не из-за даблов.
                                      0
                                      они на одинаковом чип

                                      Тут логика должна подсказывать что отличия кроются где-то в драйверах.

                                      Но если вы внедрите в игру свою модель с миллионами треугольников

                                      Спасибо, но я вежливо откажусь

                                      Как бы то ни было, сетап рейт у 680 — 2 миллиарда полигонов в секунду.
                                      Модель с несколькими миллионами полигонов не выглядит как тяжелая задача.
                                      GPU — дело тонкое. Размеры буферов, политики выделения памяти, настройки параметров кеша сильно влияют на результат.
                                      А вот разговоры про якобы специально заторможенные игровые карты есть не более чем фантазии.
                                      Настроить драйвер под десяток приложений это одно. А под десятки тысяч игр — совсем другое.

                                      А стоимость Квадры в 5 раз больше Жефорса.

                                      Если её покупают — пусть стоит.
                                        0
                                        Фантазия моя основана на реальных фактах.
                                        Просто Вы хотите во что бы то ни было доказать мне свою правоту.

                                        Попробуйте откройте пакет 3d моделирования (не от Autodesk, я объяснял, почему, в статье, упомянутой выше). И откройте в нем модель на 2 млн треугольников. И расскажите мне, о 2 млрд треугольниках в секунду.
                                        А Квадра, на том же чипе, легко крутит 3д модели и за 20 млн треугольников вертит легко.

                                        А в играх они одинаковы, потому что вся игровая индустрия использует низкополигональные объекты.
                                          0
                                          А в чем у них аппаратные различия, учитывая то, что все они делаются на унифицированных шейдерных процессорах? (т.е. отдельного геометрического блока нет).
                                            0
                                            Очевидно же, ни в чем.
                                            Можно взять Жефорс, и сделать из него Квадру, только лишь поменяв какие-то резисторы.
                                              0
                                              Но там говорят, что ускорения в CADах это не дало.
                                                0
                                                А можно ссылку на коммент?
                                                  0
                                                  Да там же третий комментарий: habrahabr.ru/post/173545/#comment_6028283
                                                    0
                                                    В итоге драйвер включает фичи, которые для более дешевой GeForce на включал.
                                                    Ускорения при это НЕ происходит.

                                                    А где же слова «в CADах»? Ускорение в CADах и есть «фичи, которые Жефорс не включал». Ускорение в большинстве игр не происходит, так как количество треугольников не превышает «допустимый для Жефорса».
                                                      +1
                                                      Кстати, недавно выпущенные Жефорсы комплектуются защитным пластиком, чтобы не ковырялись в схеме. И походу с пломбой. Сам купил недавно, думал перепаять, а вот отдирать пластик не хочется, мало ли что они там задумали.
                                              0
                                              Просто Вы хотите во что бы то ни было доказать мне свою правоту.

                                              А мне вот неясно что вы хотите доказать?
                                              Вы же признаёте что чипы одинаковые. Я говорю что разница в дровах, в их заточке под специфические приложения.
                                              В чём же я не прав, интересно?
                                            +1
                                            А как вы оцениваете лично свою компетентность?
                                            Для предыдущего поколения nVidia была возможность «разблокировать» профессиональные возможности на игровых картах простой перепрошивкой биоса. Были слухи, что и на новых этого можно добиться перепайкой и прямыми руками, но это на порядок сокращает количество «экспериментаторов».
                                            Кроме скорости из воздуха Quadro как бы подразумевает выборку лучших чипов, но эти обещания довольно сложно проверить.
                                            На деле во многих продуктах под которые рекомендованы Quadro (исключая Maya, 3d Max) на деле ничем не лучше GTX 570+ (это с учетом того что «новейшие» Quadro построены еще на GF 100, который относится к 400 серии).
                                            Реальный прирост можно ощутить только в Maya, 3d Max вот только скорее это заслуга разработчиков, а не nVidia, тем более за такие деньги.
                                              +1
                                              Почему никто не удосужится прочитать мою статью.
                                              Там написано, почему в некоторых пакетах Autodesk, Жефорсы «внезапно» так же быстры как Квадры.
                                          0
                                          Кроме AMD и Nvidia есть ещё и активные ARM, Vivante, Imagination Technologies, и даже S3 Graphics. И это не полный список.
                                            0
                                            А теперь попробуйте написать драйвер под Vivante ну или Mali от ARM. Скажем так, купив! исходный! verilog код на Vivantовское ip ведро, чтобы подзапилить и реализовать у себя в проекте вы от документации получаете только самый минимум(которого для написания драйверов просто не хватает), а на просьбу дать всю доку вас ласково посылают нафиг. Да, наличие драйверов под линукс/ведроид просьба не упоминать, сначала изучите их сами, и подумайте, с чего бы там magic word-ы плодятся тысячами?
                                              0
                                              Т.е. под AMD или Nvidia проще драйвер написать?
                                              Я ведь ответил на фразу Marchevsky
                                              Производители AMD и Nvidia достаточно жестко держат рынок
                                                0
                                                Да, представьте себе. АМД если уж на то пошло довольно много документации открыло.
                                          +1
                                          Если они смогут вернуть в видеокарты настоящую 2d графику, и графические примитивы будет круто.
                                          Т.к. сейчас игровые видеокарты, с нормальной скоростью, умеют только треугольники рисовать, никаких тебе линий или точек, да и картинка на разных видеокартах разная.
                                          А если нужны примитивы, настоящее сглаживание, точный рединг, то только дорогие профессиональные видеокарты.
                                            +1
                                            GPU www.kickstarter.com/projects/2084212109/gameduino-2-this-time-its-personal — уже есть. Возможно не такой как у авторов, но зато с практической пользой.
                                              0
                                              D3D 8 — это тоже 12-летней давности…
                                              • UFO just landed and posted this here
                                                  0
                                                  Жадные лентяи какие-то за этим кикстартером. Вот парниша за просто так и примерно год сделал в одного полностью свой платформу с кастомным CPU и шейдерами: parallelogram by lft.
                                                    0
                                                    Сходный проект — miaowgpu.org но к сожалению не полный GPU, а только «Compute Unit» и тесты:
                                                    MIAOW (pronounced me-ow) is an open source GPU created by the Vertical Research Group at the University of Wisconsin-Madison led by Professor Karu Sankaralingam. Based off of the publicly released Southern Islands ISA by AMD, MIAOW implements a compute unit suitable for performing architecture analysis and experimentation with GPGPU workloads. In addition to the Verilog HDL composing the compute unit, MIAOW also includes a suite of unit tests and benchmarks for regression testing.

                                                    A primary motivator for MIAOW's creation is the belief that software simulators of hardware such as CPUs and GPUs often miss many subtle aspects that can skew the performance, power, and other quantitative results that they produce. As an actual implementation of a GPU's logic, the Vertical Research Group believes that MIAOW can be a useful tool in producing not only more accurate quantitative results when benchmarking GPGPU workloads but also provide context for the architectural complexities of actually implementing newly proposed algorithms and designs that are intended to improve performance or other desired characteristics.

                                                    Our long term vision is to move forward the movement of Open Source Hardware by contributing an open source GPU implementation to it.

                                                    It must be emphasized that MIAOW represents a GPU's compute unit. It does not possess the auxiliary logic required to produce actual graphical output nor does it have logic to connect it to a specific memory interface or system bus. These extensions can be developed and we would welcome outside contributors for such efforts, but as MIAOW was created as a research tool their presence was not an absolute necessity in running benchmarks and experiments.

                                                    MIAOW is licensed under the 3-clause BSD license.

                                                    MIAOW's RTL and detailed documetation are on Github. A short whitepaper that decsribes MIAOW and its usage in research is here


                                                    PS: Рядом с RISC-V могут и другие проекты упоминаться, например поиском lowrisc gpu — comments.gmane.org/gmane.comp.hardware.lowrisc.devel/32
                                                      0
                                                      Еще одно ядро для GPU:
                                                      www.opennet.ru/opennews/art.shtml?num=43737 «Открытый GPU Nyuzi задействован для научных исследований» — 25.01.2016 — «OpenHardware-проекта Nyuzi (бывший Nyami), наработки которого распространяются под свободной лицензией Apache 2.0. Графические процессоры, основанные на архитектуре Nyuzi, задействованы в серии экспериментов»
                                                      nyuzi.org
                                                      This project is a open source processor designed for highly parallel and GPGPU applications. It was inspired by Intel's Larrabee, although the instruction set and microarchitecture are substantially different.

                                                      The processor runs in Verilog simulation and on FPGA. It is a modern architecture, with set associative L1 & L2 caches, fine grained hardware multi-threading, pipelined SIMD floating point and integer execution units, and support for multiple cache coherent cores. It includes a C/C++ compiler based on LLVM
                                                      This video shows a software renderer written in C++ rendering a Phong shaded teapot with 2300 triangles. It is running on a single core at 50Mhz on a Cyclone IV FPGA.

                                                      www.youtube.com/watch?v=DsvZorBu4Uk — Teapot — Aug 9, 2015 (DE2-115, Cyclone EP4CE115)
                                                      github.com/jbush001/NyuziProcessor

                                                    Only users with full accounts can post comments. Log in, please.