The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Доступен Vortex 2.0, открытый GPGPU на базе архитектуры RISC-V, opennews (??), 10-Ноя-23, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


53. "Доступен Vortex 2.0, открытый GPGPU на базе архитектуры RISC..."  +/
Сообщение от Аноним (53), 11-Ноя-23, 11:39 
>нехилый костыль с кешированием скомпиленого

Не костыль, а оптимизация. Совершенно правильная. Так и надо делать.

>В качестве шейдеров - пачка RISCV с энными расширениями, код выполняет. Что тут не понятного?

Да всё понятно. Но свои влажные мечты же озвучить надо.

>не потеряв состояние всей этой штуки

ну состояние можно хранить в оперативе.

>А вы предлагаете крайне ресурсоемкие операции, от "компиляции" до оптимизации, генерации фактического битстрима

кэшировать, да. Это всё надо делать 1 раз на программу.

> Они стоят как самолет. Это девтул

Поэтому и стоят, как самолёт, что в массовую серию не идут. Если пойдут настолько же массово как видеокарты - будут дешевле.

Ответить | Правка | Наверх | Cообщить модератору

84. "Доступен Vortex 2.0, открытый GPGPU на базе архитектуры RISC..."  +/
Сообщение от Аноним (-), 11-Ноя-23, 21:14 
>>нехилый костыль с кешированием скомпиленого
> Не костыль, а оптимизация. Совершенно правильная. Так и надо делать.

Технически любой кеш являет собой костыль на операцию получившуюся тормозной. Что намекает на скорость операции.

> Да всё понятно. Но свои влажные мечты же озвучить надо.

Там большой вопрос насколько эти мечты технически реализуемы на существующих дизайнах. Это ж надо какой-то дифференциальный аплоад только кусочка битстрима FPGA, для 1 закоулка, без потери состояния всего остального. Иначе нахрен оно надо, аплоадить все состояние GPU это "gpu recovery" и это такая деоптимизация и глюкизация что вы точно ЭТО не хотите.

В случае с машинным кодом vs ядра CPU, даже SIMDшно-оптовых, такая абстракция с сохранением состояния и заменой кусков не особо сложно делается. Но FPGA не это и там обычно если и реконфигурят на ходу - то редко и радикально, реплоадом иного стрима. А насколько реально что-то даже отдаленно напоминающее это в реально существующих FPGA - весьма отдельный вопрос.

>>не потеряв состояние всей этой штуки
> ну состояние можно хранить в оперативе.

Реаплоад состояния угробит все профиты от оптимизаций, и вообще, сложное это дело. Современные видео дрова умеют "gpu recovery" с чем-то напоминающим вот именно это, но это довольно стремный и компромиссный маневр. И уж точно не скоростной.

> кэшировать, да. Это всё надо делать 1 раз на программу.

А в PFGA вообще реально залить "дельту" битстрима на ходу, не угробив состояния железки вокруг? Потому что если совсем состояние снести - вся абстракция развалится. На ощутимое время. Вплоть до отсутствия на энное время шейдерокрушилок и проч, как и девайса на шине. А раз так то оно в это время и не рендерит и не передает данные по шинам. Что не есть оптимально.

>> Они стоят как самолет. Это девтул
> Поэтому и стоят, как самолёт, что в массовую серию не идут. Если
> пойдут настолько же массово как видеокарты - будут дешевле.

Топовые чипы, хоть какие, не могут стоить дешево. У них кристалл большой, на вафле мало чипов лезет (зиллионы вентилей же надо где-то размещать?!), дефаеты чипов куда вероятнее и дороже обходятся, технологию желательно топовую, иначе хорошие скорости и потребление совсем не сможет, т.е. производство - заведомо дорогое.

А в мелкую FPGA - окей, а копипастить SIMD ядра там куда? Чем больше вентилей, тем больше ядер можно накопипастить и оно ближе к GPU. С полутора ядрами - можете llvmpipe как "GPU" юзать, ничем не хуже.

Ответить | Правка | Наверх | Cообщить модератору

93. "Доступен Vortex 2.0, открытый GPGPU на базе архитектуры RISC..."  +/
Сообщение от Аноним (93), 12-Ноя-23, 00:12 
>Что намекает на скорость операции.

в мире ВСЁ tradeoff. Да, есть медленные операции. Такие нужно делать пореже и кэшировать. Такой подход к решению задач, как динамическое программирование - он как раз о кешировании, и экспоненциальные при наиболее тупом способе решения задачи становятся полиномиальными.

>Это ж надо какой-то дифференциальный аплоад только кусочка битстрима FPGA, для 1 закоулка, без потери состояния всего остального
>А в FPGA вообще реально залить "дельту" битстрима на ходу, не угробив состояния железки вокруг?

на зайлинксах такое есть. FPGA - это же просто SRAM, приделанная к мультиплексорам и базовым ячейкам. Нет никакой проблемы перелить некоторые ячейки из этой памяти. Это речь шла о состоянии внутри FPGA. Состояние внутри оперативы должен поддерживать контроллер оперативы, который вообще должен быть асиком, так как реконфигурить контроллер оперативы смысла нет, ибо память распаяна.

>Топовые чипы, хоть какие, не могут стоить дешево. У них кристалл большой, на вафле мало чипов лезет (зиллионы вентилей же надо где-то размещать?!), дефаеты чипов куда вероятнее и дороже обходятся

Вот это меня беспокоит, но я думаю, это можно обойти. Во-первых, FPGA - это реконфигурируемая штука. Дефекты будут, нужно помнить, где они. Точечный дефект не портит весь чип. Он портит окрестность этого дефекта. Чипы нужно тестировать, и номера дефектных ячеек - записывать в пзу. То что чипы большие - ну да, большие.  Но ведь надёжнее 1 большой единый чип с отключаемыми дефектами, чем несколько маленьких, соединённых друг с другом, ведь так?

>А в мелкую FPGA - окей, а копипастить SIMD ядра там куда?

Никуда. Никаких сложных софт-процессоров - примитивный процессор, но с набором инструкций под каждую конкретную задачу и программами без ветвлений. Просто декодер инструкции, активирующий нужные подсхемы схемы + конвейер, управляющий перекачкой данных через нашу схему из одних кольцевых буфферов в другие.

Ответить | Правка | Наверх | Cообщить модератору

101. "Доступен Vortex 2.0, открытый GPGPU на базе архитектуры RISC..."  +/
Сообщение от Аноним (-), 13-Ноя-23, 00:06 
> в мире ВСЁ tradeoff.

Удивлюсь если та идея никому не приходила в голову за столько лет. Я и предположил что оно не получило распостранения из-за траблов с вот именно tradeoff.

>> А в FPGA вообще реально залить "дельту" битстрима на ходу, не угробив
>> состояния железки вокруг?
> на зайлинксах такое есть. FPGA - это же просто SRAM, приделанная к
> мультиплексорам и базовым ячейкам.

Ничего не говорит о том как сделан аплоад и применение битстрима, и насколько это затронет те или иные состояния системы в целом.

> Нет никакой проблемы перелить некоторые ячейки из этой памяти. Это речь шла
> о состоянии внутри FPGA. Состояние внутри оперативы должен поддерживать
> контроллер оперативы, который вообще должен быть асиком,
> так как реконфигурить контроллер оперативы смысла нет, ибо память распаяна.

Если отливать ASIC - то уже ВСЕГО ЧИПА, имхо, потому что стоит столько же - а параметры сильно лучше. И ядер больше влезет на ту же площадь, и частоты будут куда выше. И даже оптимизировать можно - да хоть неделю для окончательной выгрузки на фабу.

> Вот это меня беспокоит, но я думаю, это можно обойти. Во-первых, FPGA
> - это реконфигурируемая штука. Дефекты будут, нужно помнить, где они.

Вот это так то забавная идея. Но чтобы скипнуть произвольный дефект надо что-то как-то ремапить видимо. А коммутация этого всего что, халявная по площади кристалла? Или как столько коммутации оптом халявное получится? Еще увеличить огромный кристалл?

> Точечный дефект не портит весь чип. Он портит окрестность этого дефекта. Чипы
> нужно тестировать, и номера дефектных ячеек - записывать в пзу.

И дальше - чего? В него либо не пройдет аплоад дизайна юзавшего проблемный регион и чип в этом смысле все же труп. Либо надо ремап какой-то для абстрагирования этого всего. А это точно реально сделать относително халявно? Для толпы ячеек?

> То что чипы большие - ну да, большие.  Но ведь надёжнее 1 большой единый чип
> с отключаемыми дефектами, чем несколько маленьких, соединённых друг с другом, ведь так?

Технологический процесс гоняется для вафли и занимает немало времени. Чем больше с нее чипов - тем дешевле каждый чип. Стоимость процесса размажется на N. А если дефект накрыл 1 чип, пролет пропорционален 1/N. Для очень мелких чипов достигается некий предел т.к. повышение требований к резке на чипы и прочая корпусировка мешают снизить цену дальше, но это не тот случай.

> Никуда. Никаких сложных софт-процессоров - примитивный процессор, но с набором инструкций
> под каждую конкретную задачу и программами без ветвлений.

А что есть "конкретная задача" в современном мире с GPGPU где именно совсем примитивные нужно? В таком духе как максимум NPU какой-то смысл получили, но поскольку это 1 конкретная задача, их и отлили в ASIC уже все кому не лень.

> Просто декодер инструкции, активирующий нужные подсхемы схемы + конвейер,
> управляющий перекачкой данных через нашу схему из одних кольцевых буфферов в другие.

Современные GPUшки предпочитают вообще делать нечто типа локальных буферов для считалок с одной стороны и мощные движки DMA для IO с системой с другой.

Ответить | Правка | Наверх | Cообщить модератору

128. "Доступен Vortex 2.0, открытый GPGPU на базе архитектуры RISC..."  +/
Сообщение от Аноним (127), 13-Ноя-23, 13:43 
>Ничего не говорит о том как сделан аплоад и применение битстрима, и насколько это затронет те или иные состояния системы в целом.

На зайлинксах это есть уже долгое время. При этом во время реконфигурации остальная часть чипа продолжает работать.

>Если отливать ASIC - то уже ВСЕГО ЧИПА, имхо, потому что стоит столько же

А производители FPGA-то и не знали! Поэтому в некоторых FPGA с завода идут нереконфигурируемые готовые блоки с контроллерами памяти, распространёнными интерфейсами и ARM-ядрами. На самом деле зависит от цели. FPGA - это основа для своей числомолотилки. А ей надо взаимодействовать с внешним миром. У моей идеи цель - универсальная плата в каждый компьютер, способная не только заменить и превзойти GPU, но и заменить многое другое, требующее сейчас специализированных железок, и обновляемая во многом через замену прошивки вместо покупки нового устройства.

>надо что-то как-то ремапить видимо

В процессе синтеза и роутинга нужно учитывать карту дефектов.

>А коммутация этого всего что, халявная по площади кристалла? Или как столько коммутации оптом халявное получится? Еще увеличить огромный кристалл?

Коммутация не халявная, но регулируемая. Во-первых некоторую избыточность можно заложить на стадии проектирования FPGA, и она не пропадёт, её можно утилизировать в случае отсутствия дефектов. Во-вторых если отмаппить вентили на ячейки нельзя так, чтобы дефекты не мешали, то можно из простаивающих ячеек сделать обходные пути. Чем меньше дефектов - тем меньше обходных путей нужно в среднем. Соответственно, чем меньше дефектов - тем более универсален чип, и чипы с меньшим количеством дефектов можно продавать пожороже. То есть цена на каждый чип должна быть своя, а чипы - продаваться на аукционах.

>Технологический процесс гоняется для вафли и занимает немало времени. Чем больше с нее чипов - тем дешевле каждый чип.

Да, это понятно. Но суммарную площадь тебе уменьшить не удастся. Тебе для такого-то устройства с такой-то производительностью и такими-то возможностями нужно столько-то ячеек, хоть тресни. Каждые ячейки - это площадь. Если ты берёшь чип площадью M, то стоимость его будет L. Или ты берёшь K чипов площадью M/K, каждый стоимостью L/K. В результате платишь те же L. Только тогда чипы нужно соединять - а это издержки, а соединения между чипами - это уязвимые места с точки зрения надёжности и узкие места с точки зрения роутинга. Поэтому лучше 1 чип.

>Стоимость процесса размажется на N. А если дефект накрыл 1 чип, пролет пропорционален 1/N. Для очень мелких чипов достигается некий предел т.к. повышение требований к резке на чипы и прочая корпусировка мешают снизить цену дальше, но это не тот случай.

Нужно уменьшать не стоимость чипа путём уменьшения чипа (мы не можем уменьшить чип, он будет большим), а уменьшать стоимость чипа путём увеличения количества пластин с чипами и размазывания издержек по большему числу пластин, и увеличения площади пластин, но тут уже проблемы будут.

>И дальше - чего? В него либо не пройдет аплоад дизайна юзавшего проблемный регион и чип в этом смысле все же труп. Либо надо ремап какой-то для абстрагирования этого всего.

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

>А это точно реально сделать относително халявно? Для толпы ячеек?

Скажем так, расчёт роутинга - это далеко не халявная задача сама по себе, это NP-сложная задача.

>А что есть "конкретная задача" в современном мире с GPGPU где именно совсем примитивные нужно? В таком духе как максимум NPU какой-то смысл получили, но поскольку это 1 конкретная задача, их и отлили в ASIC уже все кому не лень.

Я выше приводил примеры. Алгоритмы, реализованные в виде схем для FPGA обычно производительнее и энергоэффективнее, чем реализованные программно для GPU. Конкретно в майнинге так было. Нет оснований считать, что для шейдеров будет по-другому. Плюс FPGA открывают возможности, которые для GPU недоступны в принципе, такие как SDR или высокоскоростные аппаратные протоколы. То есть представь, что чтобы у тебя в компьютере появился последний Thunderbolt или новый "аппаратный" декодер тебе бы не новый компьютер покупать пришлось, а всего-лишь нетлист/исходник скачать и отроутить конкретно под твой FPGA (автоматически, писать самому код на верилоге не обязательно). Но сейчас большие FPGA золотые и позволить себе их могут немногие.

>Современные GPUшки предпочитают вообще делать нечто типа локальных буферов для считалок с одной стороны и мощные движки DMA для IO с системой с другой.

Ну суть предложения от этого не меняется. Есть исток, есть сток, есть конвеер без всякого предсказания ветвлений и ненужной для конкретного применения сложности. Только сдаётся мне, научить машину автоматически бить шэйдеры на куски так, чтобы оптимально задействовать ресурс FPGA, и выбирать интерфейс между набором команд и netlist-реализованными блоками может быть очень нетривиально.

Ответить | Правка | Наверх | Cообщить модератору

145. "Доступен Vortex 2.0, открытый GPGPU на базе архитектуры RISC..."  +/
Сообщение от Аноним (145), 15-Ноя-23, 20:33 
> На зайлинксах это есть уже долгое время. При этом во время реконфигурации
> остальная часть чипа продолжает работать.

По своему круто. Но тут вопрос кто еще так умеет. Не окажется так что это только 1 производитель умел и теперь все жестко завязано на него?

> А производители FPGA-то и не знали! Поэтому в некоторых FPGA с завода
> идут нереконфигурируемые готовые блоки с контроллерами памяти, распространёнными
> интерфейсами и ARM-ядрами. На самом деле зависит от цели.

Я думал вы про внешний чип. Внутри это лишь IP-блок. Ничему не противоречит, но вот ASIC выпускать как раз не требует.

> FPGA - это основа для своей числомолотилки. А ей надо взаимодействовать с внешним миром.
> У моей идеи цель - универсальная плата в каждый компьютер, способная
> не только заменить и превзойти GPU, но и заменить многое другое,

Вообще чипсеты AFAIK на FPGA вроде и прототипят порой. Правда это не платы. Они между процом и IO скорее. И дают процу новые возможности по (довольно шустрому) IO, при том до некоторой степени реконфигурируемому.

Однако когда выходит новый стандарт - вон то в его электрические спеки может вписаться. А может и нет. Без гарантий.

> требующее сейчас специализированных железок, и обновляемая во многом через замену прошивки
> вместо покупки нового устройства.

Специализированные железки все же эффективнее, by design. И в целом generic решение обычно сложнее сделать. Особенно чтобы потом не вылезло ограничений.

>>надо что-то как-то ремапить видимо
> В процессе синтеза и роутинга нужно учитывать карту дефектов.

Я не очень крутой эксперт по синтезу для FPGA но в например флешах - дефектлисты это гемор на всю голову, настолько, что в итоге RAW NAND стали предпочитать заменять на eMMC где это "счастье" делегировано отдельному процику и его фирмвари. Не случится что-то такое же, когда сложность возрастает настолько что никто не захочет с этим возиться?

> Коммутация не халявная, но регулируемая. Во-первых некоторую избыточность можно заложить
> на стадии проектирования FPGA, и она не пропадёт, её можно утилизировать
> в случае отсутствия дефектов.

Интересно. А чего из нее такого можно сделать в этом случае? Но вообще идея выглядит по своему круто. Был бы я прозводителем FPGA - взял бы этого анона в R&D, посмотреть насколько это (не)бред. Редко кто попадается с настолько необычными идеями.

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

А это задержек разве не добавит? И как при этом синхронизация, максимальные частоты и проч будут себя ощущать? Тоже на фазе синтеза все это учитывать предлагаете?

> Чем меньше дефектов - тем меньше обходных путей нужно в среднем.

Более-менее практичные дизайны типа сабжа как я понимаю на FPGA гоняют близко к пределу возможностей для сколь-нибудь приемлимых скоростей. Если что-то такое огорошить таким изменением правил игры - уровень сложности не пробьет потолок? Но вообще - на лично мой вкус мне кажется что это одна из областей которые еще не исследованы в должном объеме.

> Соответственно, чем меньше дефектов - тем более универсален чип,
> и чипы с меньшим количеством дефектов можно продавать пожороже. То есть
> цена на каждый чип должна быть своя, а чипы - продаваться
> на аукционах.

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

> же L. Только тогда чипы нужно соединять - а это издержки,
> а соединения между чипами - это уязвимые места с точки зрения
> надёжности и узкие места с точки зрения роутинга. Поэтому лучше 1 чип.

На практике приходит к тому что выше некоего размера чипы дико дорогие, и это не лечится. Если даже каждый второй чип поражен дефектом и выкинут - окей, но половина пригодна к продаже, придется поднять цену но есть что продавать. А если они были крупнее и акрыло все чипы - упс, выход около ноля. Продавать нечего. Хотя с fault tolerant дизайном - вообще, это какое-то не очень изведанное измерение.

Чипмейкеров это тоже не радует, они и опробуют всякие промежуточные сценарии, типа мультичиповых сборок на interposer. Где технологии кремниевые и можно что-то крутое, типа 4096-бит шин раскидать. Видимо идеальных решений нет и еще есть что улучшить. Получается ессно круто но - опять же дорого.

> Нужно уменьшать не стоимость чипа путём уменьшения чипа (мы не можем уменьшить
> чип, он будет большим), а уменьшать стоимость чипа путём увеличения количества
> пластин с чипами и размазывания издержек по большему числу пластин, и
> увеличения площади пластин, но тут уже проблемы будут.

Ну тут уж упс, за раз делается - вот столько. Времени на процесс - вот столько. Чем больше с "забега" получилось - тем дешевле чип. Если за раз условно 10 чипов vs 100 чипов, 100 чипов имеют предпосылки стоить примерно в 10 раз меньше. За то же время с теми же процессами их получилось в 10 раз больше. Поэтому дешевые чипы с большим кристаллом - упс, так вроде не бывает.

> Там не ремап, там в ходе синтеза вентили мапятся на ячейки. Всегда.
> С учётом ограничений, таких как задержки. То, что некоторые ячейки нельзя
> использовать и надо отключить - это такое же ограничение.

Вообще вроде звучит разумно. Интересно, никто не хочет этого анона в R&D какого-нибудь FPGAшного вендора нанять? Будет довольно тупо если эти идеи окажутся не исследованы. Может сами черканете кому из них? Чем черт не шутит. Вы кажется очень неплохо разбираетесь в inner working этого добра. Во всяком случае это первый анон на этом глобусе давший мне такой годный мастеркласс по теме.

> Скажем так, расчёт роутинга - это далеко не халявная задача сама по
> себе, это NP-сложная задача.

Оптимизация программ IIRC в принципе тоже, но если немного срезать углы...

> Я выше приводил примеры. Алгоритмы, реализованные в виде схем для FPGA обычно
> производительнее и энергоэффективнее, чем реализованные программно для GPU.

В каком-то роде принимается, памятуя о истории SHA256... только потом ASIC пришли и дали всем мастеркласс на тему эффективности. А кроме счета SHA256 от них ничего и не требовалось и то что они именно ASIC всем как бы и норм. GPUшки то остались полезны для других вещей.

> Конкретно в майнинге так было. Нет оснований считать, что для шейдеров будет по-другому.

Майнинг все же специфичная штука: 1 алго, фиксированый, несложный и надо макс. скорость любой ценой. Реконфигурацию опосля и тем более на ходу не надо.

> Плюс FPGA открывают возможности, которые для GPU недоступны в принципе,
> такие как SDR или высокоскоростные аппаратные протоколы.

There's no such word as impossible.
1) На RasPI через GPIO сделали миниму FM TX - а по моему и 433MHz OOK даже (радиопультики и проч). Just because they can. Ессно все софтом. Там есть способы оооооочень быстро махать лапами GPIO. Это "direct synth", похабный, зато из подручного гамна за копейки. Чем и круто.
2) Лично я экспериментировал с STM32+DMA и в конце концов нашел апнот от STMicro как делать параллельную шину юзая GPIO, таймер и DMA автомат. И TX-side и RX side. И если туда DAC/ADC на ...цать MSPS подвесить... когда нельзя но очень хочется, можно и почти на вашем поле немного поиграть :). У более жирных внешняя шина есть хардварно, там какой DAC/ADC можно почтенно прокачать, используя все тот же DMA и таймер. В STM32 DMA похрен куда писать/что читать и это дает довольно много "странных" возможностей, в том числе и по части синтеза странных протоколов. Правда все же не настолько быстрых как вон то.
3) На самом деле у меня есть нечто весьма угарное. Проц и проводок к лапке. А воооон там, через весь дом, его коллега - ловит это. Деталей не будет, скажу лишь что в силу маргинальности такого "передатчика" пришлось сделать оооочень забавный формат сигнала.
4) Никогда не видели MIPI DSI сделаный из SPI ESP32 при помощи делителя напряжения и одного триггера? Знаю где такое есть. Конечно полные скорости оно не будет, и в 1 сторону, но иногда это и не надо, если у панели RAM набортный есть то те бандвизы и не требуются. И там сложнее всего как раз понять какая из панелек под такой финт годится. Иные реализации потребовали бы FPGA с специфичными драйверами - и это были бы совсем другие бабки.

> То есть представь, что чтобы у тебя в компьютере появился последний Thunderbolt
> или новый "аппаратный" декодер тебе бы не новый компьютер покупать пришлось,

Боюсь что по электрическим спекам оно бы много где не пролезло. Ну вот допустим я хочу отрастить себе пусть тот же MIPI DSI. А там - тыдыщ - уровень сигналов довольно специфичный. Generic железо сделаное без этого интерфейса в уме - врядли сможет ЭТО изобразить.

Из FPGA это сделать можно. Из некоторых. Если вы заранее условиились что делаете вот это и правильно развели все, и вольтажи подходящие есть. А вот заранее ДО выпуска спеков протокола в generic железе - можно и обломиться это ОПОСЛЯ сделать на СУЩЕСТВУЮщЕЙ разводке. Даже если перераскинув ее оно и получится - но вот кто ж заранее знал что вон то будет вон так?

А как вы представляете себе "произвольные" драйверы линий, что дифференциальные что single ended с "произвольными" вольтажами, чего доброго несколько разных на пин, разведенное "в количестве" и чтобы это не стоило как самолет потом? И откуда возьмутся нужные разъемы?

> а всего-лишь нетлист/исходник скачать и отроутить конкретно под твой FPGA
> (автоматически, писать самому код на верилоге не обязательно). Но сейчас
> большие FPGA золотые и позволить себе их могут немногие.

Ну я как бы немного в курсе "продвинутых" интерфейсов и догадываюсь что "generic" электрические моменты - это боль. Ну вот диф пара. А что если вон там номинальное волновое сопротивление одно, а вон там - другое? Это программно не решается - вопрос топологии печатки.

При том это все актуально для почти всех скоростных и-фейсов, наверное у части можно что-то общее нащупать но далеко не 100%. На правах мечты - это офигенно, но я туго представляю себе практическую реализацию. Даже на уровне "и как мы роутим печатку?!"

> Ну суть предложения от этого не меняется. Есть исток, есть сток, есть
> конвеер без всякого предсказания ветвлений и ненужной для конкретного применения сложности.

Ну как, постепенно немного сложности добавили сделав чуть более похоже на обычные CPU. Скажем совсем без усложнений - VLIW было мучительно програмить. Пришлось фронтэндов поставить и сделать CU с группами ALUшек и wave (у нвидии вроде что-то сравнимое, они это warp называют).

> Только сдаётся мне, научить машину автоматически бить шэйдеры на куски так,
> чтобы оптимально задействовать ресурс FPGA, и выбирать интерфейс между набором команд
> и netlist-реализованными блоками может быть очень нетривиально.

Ну как бы шейдеры изначально все же программы. Хотя учитывая что вооооон тот кодек AV1 транслируют через HLS - это вероятно "сложно" но не "невозможно".

Айти забавная штука. Тут почти нет "невозможно". Но иногда оказывается "нецелесообразно". Однако особо упертые индивидуалы все равно могут всем назло сделать "невозможное".

Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру