Скажем, я использую компьютер, любой типичный современный компьютер более или менее. Драйвер устройства отвечает за все, что я вижу на своем экране, в том числе и при вводе этого текста, экран обновляется (это, конечно, в рамках операционной системы, такой как Windows).
Давайте возьмем это до уровня, когда аппаратное обеспечение не заботится о том, есть ядро или нет, и просто принимает инструкции.
По сути, как графические процессоры «знают», как именно все делать? Управляет ли драйвер в основном каждой мелкой, внутренней или аппаратной функцией уровня схемы, возможной или необходимой для вычисления двоичных данных для отображения с использованием специальных инструкций, которые предоставляет драйвер?
Если да, использует ли GPU «специальный» язык или «сборку» для понимания команд, отправляемых ему, как процессор?
У меня слишком много пробелов в моих знаниях, и есть эта неприятная «загадка» за графическими процессорами и доступом к ним напрямую через аппаратное обеспечение.
Например, GPU и CPU должны иметь возможность каким-либо образом соединяться, чтобы можно было получить доступ к GPU через сборку CPU и реализовать правильные шины данных / адресов. Поставщик устройства не может сделать невозможным доступ к графическому процессору вне драйвера, поскольку драйвер также является скомпилированным кодом, а графический процессор, как программируемая схема, должен работать с двоичными инструкциями.
Я задавал эти типы вопросов, и они быстро удалялись без ответа, почему на многих сайтах, так в чем же здесь большая загадка / секрет? Это часть аппаратного обеспечения на материнской плате, доступ к которой, как и любой другой.
Так что на самом деле ... если предположить, что это "нормальный" вопрос в отношении программного и аппаратного обеспечения, любой может получить прямой доступ к графическому процессору без специальных файлов производителя, поскольку эти файлы не являются волшебными.
Так как же «программировать» графические процессоры с точки зрения аппаратного обеспечения на аппаратном уровне?