Про GPU

Вообще если критично посмотреть на компоновку современных настольных систем, то возникают логичные предложения.

Вот например видео — атрибут нынче обязательный, но вы не встретите на мамках гнезда под видеочип наподобие процессорного, вместо этого вам предложат выбор между слабым, но с низкой задержкой встроенным в процессор графическим ядром либо мощной, но «находящейся далеко» PCIe карточкой. Вариант «видеочип на мамке» можно видеть разве что в бюджетных матплатах и ноутбуках, да и там скорее всего будут иметь место ненужные промежуточные слои. В то же время мы давно не удивляемся встроенному в матплату аудиочипу (хотя можно ставить и отдельную аудиокарту, но это редко того стоит), так почему бы и графике не занять своё заслуженное место?


А ведь казалось бы, сделайте гнездо для видеочипа да распаяйте несколько гигов GDDR (или HBM?). Пусть проц и видео используют общую память, ведь тогда не придётся слать данные из одной памяти в другую и обратно (кстати, как с этим у встроек дела — они и так основную ОЗУ используют, есть ли оптимизация в драйверах, предотвращающая ненужное копирование?).
При этом можно на уровне ОС помечать, что встроенная быстрая GDDRx-память нужна именно для связанных с видеочипом нужд, а плашки с DDR — для всего остального. Результат — клиентская программа может выделять потенциально нужные видеочипу данные сразу в быстрой ОЗУ, что плюс к скорости выполнения, да и в случае не установленных плашек DDR система вполне заведётся, если 2-4ГБ GDDR и так распаяны и доступны CPU.
С другой стороны, видеокарта всегда сможет использовать DDR в случае нехватки GRAM. Ведь если посмотреть на основных потребителей GRAM — а это игры — то можно увидеть, что обычно больше 2ГБ им сиюминутно не нужно, просто игроделы вынуждены загонять всё в GRAM, дабы уменьшить количество передач данных из памяти в память — а это, ещё раз, для дискретной видеокарты очень дорого. Да и что такое GRAM — это та же DRAM, только шире шина(от 128 бит на плашку в бюджетных GDDR до 4Кбит в HBM-варианте, например) и из-за этого её проще иметь распаянной. Например 4ГБ распаянной на материнке памяти — это огромный запас, который будет актуален лет десять.

Этот навязанный выбор между встроенным видеоядром, которое полагается на медленную системную DDR-память, и по сути отдельным компьютером в виде дискретной видеокарты, лежащий через южный мост и отдельный интерфейс — это выбор между двумя плохими решениями, со своими ограничениями и проблемами. Какой-то промежуточный вариант дают новые процессоры от Intel со встроенной графикой AMD — там есть HBM-память, но она только для GPU, CPU ею напрямую пользоваться не может, да и отдельно видеочип сменить будет невозможно.
Можно возразить, что перенос линий питания и части логики видеокарты на матплату сделает её дороже, но это может быть с лихвой компенсировано за счёт отказа от дискретного монстра.

Отдельно замечу, что хорошо было бы видеочипы перевести из класса чёрных ящиков полностью на VLIW-рельсы, чтобы вместо пианолы была комбинация «вычислительные ядра+выходной буфер». Это сразу упрощает написание тех же драйверов, потому что подход унифицируется и инициализацию с базовым выводом картинки можно сделать минимумом вызовов; что до серьёзной логики, то времена fixed pipeline давно прошли и сейчас всё завязано на шейдеры, в свою же очередь за конкретными видами шейдерных блоков почти везде стоят одни и те же вычислительные ядра, то есть база для такого переосмысления уже есть. Граница размывается, и на графическом процессоре вполне можно делать рассчёты — специфичные, с определёнными ограничениями, но можно и причём сразу на очень многих ядрах, а это бывает нужно чаще, чем кажется.
Следующим шагом может стать вынос буфера вывода на отдельный чип, к которому будут иметь равный доступ и GPU, и CPU, и тогда для базового вывода картинки GPU и вовсе не будет нужен.

В итоге мы возвращаемся к ситуации, когда у нас на матплате есть раздельные сокеты под центральный процессор и АЛУ (который теперь мультиядерный суперскалярный и т.д.), и это сразу даёт плюсы по части скорости, энергопотребления и гибкости построения различных конфигураций. Это логичный эволюционный ход, которому будут противиться организации, чьи сверхприбыли растут из производства исключительно видеокарт.

Пора избавляться от дискретных монстров.

P.S. Пост навеян информацией о новых «Байкалах», в которых по слухам оказалась крайне примитивная и слабая встроенная видеоподсистема, из-за чего для настольных задач требуется установка дискретной видеокарты, которых в РФ пока делать не научились.