கொலாபோராவில் வீடியோ கோடெக் மேம்பாட்டுப் பணிகளில் ஈடுபடும் டேனியல் அல்மெய்டா, டெவலப்பர் அஞ்சல் பட்டியலில் பதிவிட்டார். Linuxகமாண்ட் ஸ்ட்ரீம் ஃப்ரண்ட்எண்ட் (CSF) தொழில்நுட்பத்தைப் பயன்படுத்தும் மாலி G310, G510, மற்றும் G710 போன்ற ARM மாலி GPU-களுக்கான Tyr டிரைவரின் ஆரம்பகட்ட செயலாக்கம். இந்த டிரைவர் குறியீடு ரஸ்ட் மொழியில் எழுதப்பட்டுள்ளது மற்றும் 600 வரிகளுக்குச் சற்று அதிகமான குறியீட்டைக் கொண்டுள்ளது. Tyr டிரைவர் மீதான பணிகள் கொலாப்ரா, ஆர்ம் மற்றும் கூகிள் ஆகிய நிறுவனங்களால் கூட்டாக மேற்கொள்ளப்படுகின்றன.
புதிய இயக்கியை உருவாக்குவதற்கான கட்டமைப்பு, சுருக்கமான rust_platform_driver இயக்கி மற்றும் NVIDIA GPUகளுக்காக உருவாக்கப்பட்ட, ரஸ்டில் எழுதப்பட்ட மற்றும் 6.15 கர்னலில் ஓரளவு சேர்க்கப்பட்ட நோவா இயக்கியின் கூறுகளைப் பயன்படுத்துகிறது. மாலி GPU உடன் தொடர்புகொள்வதற்கான செயல்பாடு, C இல் எழுதப்பட்ட ஏற்கனவே உள்ள Panthor (நேரடி ரெண்டரிங் மேலாளர்) DRM இயக்கியிலிருந்து போர்ட் செய்யப்படுகிறது. Tyr இயக்கியின் uAPI, Panthor இயக்கியின் uAPI ஐப் போலவே உள்ளது, இது ஏற்கனவே உள்ள பயனர் இட கூறுகளை அதனுடன் பயன்படுத்த அனுமதிக்கிறது.
மாலி GPU-களின் 10வது தலைமுறையிலிருந்து பயன்படுத்தப்படும் CSF தொழில்நுட்பம், சில இயக்கி செயல்பாடுகளை ஃபார்ம்வேர் பக்கத்திற்கு நகர்த்துவதற்கும், GPU-வில் வேலை செயல்படுத்தலை ஒழுங்கமைக்க ஒரு புதிய மாதிரியைப் பயன்படுத்துவதற்கும் குறிப்பிடத்தக்கது. CSF இடைமுகம் கொண்ட GPU-களில், வேலைகளின் சங்கிலியை அனுப்புவதை அடிப்படையாகக் கொண்ட மாதிரிக்குப் பதிலாக, ஃபார்ம்வேர் பக்கத்தில் கட்டளை ஓட்ட வரிசையை திட்டமிடுவதன் மூலம் கட்டளை ஓட்டத்தை அடிப்படையாகக் கொண்ட ஒரு மாதிரி பயன்படுத்தப்படுகிறது. திட்டமிடுபவரின் வேலையை ஒழுங்கமைக்க, GPU-வில் ஒரு தனி Cortex-M7 மைக்ரோகண்ட்ரோலர் கட்டமைக்கப்பட்டுள்ளது, மேலும் CSF வழிமுறைகளை செயல்படுத்த ஒரு சிறப்பு கட்டளை செயல்படுத்தல் அலகு (கட்டளை செயல்படுத்தல் அலகு) வழங்கப்படுகிறது.
டைரின் செயல்பாடு இன்னும் பான்தோர் இயக்கியை விட பின்தங்கியுள்ளது, ஆனால் டெவலப்பர்கள் இயக்கி திறன்களில் சமநிலை அடையும் வரை இடைவெளியை படிப்படியாகக் குறைக்க விரும்புகிறார்கள். காணாமல் போன அம்சங்களுக்கு ரஸ்டில் இயக்கிகளை உருவாக்க கர்னலில் கூடுதல் சுருக்கங்களை ஒருங்கிணைக்க வேண்டும், எனவே டைர் இயக்கியின் மேம்பாடு கர்னலில் இந்த சுருக்கங்களைச் சேர்ப்பதன் மூலம் ஒத்திசைக்கப்படும். எடுத்துக்காட்டாக, GPUகளுக்கான ரஸ்ட் இயக்கிகளில் நினைவக மேப்பிங்கிற்கான திறன்களை கர்னல் இன்னும் கொண்டிருக்கவில்லை, அவை இன்னும் ஏற்றுக்கொள்ளப்படாத GPUVM பேட்ச் தொகுப்பில் உருவாக்கப்படுகின்றன.
ஆதாரம்: opennet.ru
