Asahi, Apple AGX GPU үчүн ачык драйвер, Apple M4.6 жана M3.2 чиптери үчүн OpenGL 1 жана OpenGL ES 2 колдоо көрсөтөт. Белгилей кетчү нерсе, Apple компаниясынын M1 чиптери үчүн жергиликтүү графикалык драйверлер OpenGL 4.1 спецификациясын гана ишке ашырышат жана OpenGL 4.6 колдоосу ачык драйверде биринчи болуп пайда болгон. Даяр драйвер пакеттери мурунтан эле Fedora репозиторийлерине киргизилген жана Apple ARM чиптери бар системаларга орнотуу үчүн иштелип чыккан Fedora Asahi Remix 39 адистештирилген түзүмүндө колдонуу үчүн жеткиликтүү.
Мындан тышкары, графикалык стандарттарды иштеп чыгуучу консорциум Khronos Consortium Apple M1 жана M2 чиптерине кирген AGX GPU үчүн ачык Asahi драйверин OpenGL 4.6 жана OpenGL ES 3.2 спецификацияларына толук шайкеш келет деп тааныды. Драйвер Kronos Conformance Test Suite (CTS) программасындагы бардык сыноолордон ийгиликтүү өтүп, сертификатталган драйверлердин тизмесине киргизилди. Сыноо Asahi дистрибуциясын иштеткен Apple M1, M1 Pro/Max/Ultra, M2 жана M2 Pro/Max түзмөктөрүндө жүргүзүлдү. Linux Fedora Remix, Mesa 24.0.0 жана X.Org X Server (X11_GLX). Apple компаниясынын M1 жана M2 чиптери үчүн менчик драйверлери азырынча Khronos тарабынан сертификацияланган драйверлердин тизмесине киргизилген эмес. Сертификация алуу Khronos компаниясына графикалык стандарттар менен шайкештигин расмий түрдө жарыялоого жана ага байланыштуу Khronos соода белгилерин колдонууга мүмкүндүк берет.
M1 GPU OpenGL ES 3.2 жана OpenGL 4.2 ишке ашыруу үчүн талап кылынган кээ бир аппараттык мүмкүнчүлүктөрү жок, андыктан мындай жетишпеген функциялар учурдагы функциялардын негизинде ишке ашырылган. Мисалы, геометрия шейдерлери, тесселлация жана трансформациялык пикир эсептөө шейдерлеринин жардамы менен ишке ашырылат, аралыкты жоюу интерполяция аркылуу ишке ашырылат, ал эми клипти башкаруу чоку шейдер эпилогу аркылуу ишке ашырылат. Келечекте, Apple AGX GPU үчүн ачык драйверлерди иштеп чыгуу Vulkan графикалык API колдоо көрсөтүүгө багытталат, аны ишке ашырууда OpenGL үчүн драйверлерде колдонулган буга чейин сыналган стандарттык коддун бир бөлүгүн колдонуу пландаштырылууда.
Эске сала кетсек, Apple M1 жана M2 GPU чиптери үчүн бири-бири менен бирге иштеген эки драйвер иштелип чыгууда: ядро үчүн DRM (Direct Rendering Manager) драйвери drm-asahi Linux, Rust тилинде жазылган, ал эми Mesa үчүн asahi драйвери C тилинде жазылган. Ядро деңгээлиндеги драйвер келечектеги Vulkan API колдоосун эске алуу менен нөлдөн баштап иштелип чыгууда, ал эми колдонуучу мейкиндигинин APIси жаңы Intel Xe драйвери тарабынан берилген UAPI менен иштелип чыккан. Apple M1/M2 чиптери өздөрүнүн GPU'сун колдонгондуктан, ал менчик микропрограмманы иштетет жана бир топ татаал жалпы маалымат структураларын колдонот, көз карандысыз драйверлер драйверлерди тескери инженериялоо жолу менен иштелип чыгат. macOS.
Source: opennet.ru
