LINUX.ORG.RU
ФорумTalks

Свободный драйвер для GPU VideoCore бесполезен

 , , ,


0

1

Несколько специалистов, включая Luc Verhaegen и David Airlie, обращают внимание на то, что открытый Broadcom драйвер используемого в Raspberri Pi GPU практически бесполезен. В отличие от настольных GPU от AMD или Nvidia, у которых различные API реализованы в драйвере, а блоб выполняет незначительные функции вроде выполнения питанием, у Broadcom практически все сделано в огромном блобе; например, внутри него скрыта реализация GLES, которую работающий на стороне ARM-ядра драйвер использует через высокоуровневый RPC-интерфейс - это напоминает сетевые карты с TCP offloading. Таким образом, открытие драйвера не дает возможности усовершенствовать существующую реализацию GLES (о которой David Airlie очень низкого мнения) или добавить другие API.

Подробности

Перемещено tazhate из opensource

★★

Последнее исправление: shatsky (всего исправлений: 1)

Приведите новость в порядок.

В отличие от настольных GPU от AMD или Nvidia, у которых различные API реализованы в драйвере, а блоб выполняет незначительные функции вроде выполнения питанием,

Укажите, про какой драйвер идёт речь (открытый / блоб).

у Broadcom практически все сделано в огромном блобе; например, внутри него скрыта реализация GLES,

Этот блоб правильнее назвать firmware, ибо оно загружается в чип. Иначе появляется двоякость.

например, внутри него скрыта реализация GLES, которую работающий на стороне ARM-ядра драйвер использует через высокоуровневый RPC-интерфейс

ARM-ядро?

На opennet'е хорошо написано. У Вас же ничего не понятно в новости.

carasin ★★★★★
()

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

ckotinko ☆☆☆
()

Как минимум — не будет проприетарного говна в kernel space. Это уже плюс.

ttnl ★★★★★
()
Ответ на: комментарий от carasin

блоб правильнее назвать firmware

В оригинале это называют firmware blob. Да, действительно путаница с закрытыми модулями ядра. «Закрытая прошивка» всяко лучше.

ARM-ядро

Ну да, оно самое.

shatsky ★★
() автор топика
Ответ на: комментарий от carasin

А SoC ядро ARM — это процессор, а фирмварь подгружается в видеоускоритель и её код выполняется им.

И? Я писал о том, что код драйвера на стороне процессорного ядра использует реализацию GLES из прошивки, загруженной в видеоядро, а не компилирует самостоятельно шейдеры и т. п.

shatsky ★★
() автор топика
Ответ на: комментарий от harper

Возможно это «управление питанием».

UNiTE ★★★★★
()
Ответ на: комментарий от shatsky

код драйвера на стороне процессорного ядра использует реализацию

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

carasin ★★★★★
()

Ну как минимум нет ограничений на портирование драйвера на различные системы и их версии и запуск на различных архитектурах (правда насчёт последнего не знаю, полезно ли, я не интересовался, что это за устройство, если SoC, то явно бесполезно). А то бинарные драйверы, выполняемые на CPU, часто доставляют такие проблемы. Если производитель забросил, то драйвер в будущем окажется несовместим с будущими версиями ядра и иксов. Про портирование другие ОС (пусть и редко используемые на практике, например, Hurd (точнее всю систему правильно было бы назвать GNU)) или другие графические подсистемы (Wayland) я вообще не говорю. Со всякими фичами типа нвидиевского оптимуса, которые производитель видеокарты реализовал только для Windows тоже проблемы. А тут — либо фича не реализована нигде, либо её можно реализовать на любой ОС, даже если это не сделал производитель.

Ttt ☆☆☆☆☆
()
Последнее исправление: Ttt (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.