Информация о графическом процессоре через свойство экземпляра RegistryID Metal framenwork - PullRequest
0 голосов
/ 09 мая 2018

Я ищу информацию о графическом процессоре с помощью ввода-вывода, соответствующего «IOPCIDevice», и было бы неплохо иметь информацию о Metal, то есть, поддерживается или нет (я все еще поддерживаю MacPro несколько лет назад). Я вижу, что у Metal 2 есть новое свойство под названием registryID , и я попытался сопоставить IOIteratorNext, но этого не произошло. Код, который я использую, точно такой же, как описан здесь @rsharma (кредиты идут в @trojanfoe) с небольшими изменениями. Итак, мой вопрос: как я могу использовать RegistryID, чтобы убедиться, что та же видеокарта?

P.S. У меня уже есть массив i / GPU, которые поддерживают Metal с использованием MTLCopyAllDevices.

1 Ответ

0 голосов
/ 12 мая 2018

Учитывая идентификатор записи реестра, вы можете использовать IORegistryEntryIDMatching() для создания соответствующего словаря. Затем вы должны передать это в IOServiceGetMatchingService() (при условии, что есть только один) или IOServiceGetMatchingServices(), чтобы получить объект.

...