WebGPU ஆதரவு Chrome இல் இயக்கப்படும்

Chrome 113 இல் WebGPU கிராபிக்ஸ் API மற்றும் WGSL (WebGPU ஷேடிங் லாங்குவேஜ்) ஆகியவற்றிற்கான இயல்புநிலை ஆதரவைச் சேர்ப்பதாக Google அறிவித்துள்ளது, இது மே 2 அன்று வெளியிட திட்டமிடப்பட்டுள்ளது. WebGPU ஆனது வல்கன், மெட்டல் மற்றும் டைரக்ட்3டி 12 போன்ற ஒரு நிரலாக்க இடைமுகத்தை வழங்குகிறது, இது ரெண்டரிங் மற்றும் கம்ப்யூட்டிங் போன்ற ஜிபியூ பக்க செயல்பாடுகளைச் செய்வதற்கு, மேலும் ஜிபியு பக்கத்தில் இயங்கும் நிரல்களை எழுத ஷேடர் மொழியைப் பயன்படுத்த அனுமதிக்கிறது. WebGPU செயல்படுத்தல் முதலில் ChromeOS, macOS மற்றும் Windows பில்ட்களில் மட்டுமே இயக்கப்படும். Linux மற்றும் Androidக்கு, WebGPU ஆதரவு பிற்காலத்தில் செயல்படுத்தப்படும்.

Chrome ஐத் தவிர, WebGPUக்கான சோதனை ஆதரவு ஏப்ரல் 2020 முதல் Firefox மற்றும் நவம்பர் 2021 முதல் Safari இல் சோதிக்கப்பட்டது. Firefox இல் WebGPU ஐ இயக்க, dom.webgpu.enabled மற்றும் gfx.webgpu.force-enabled கொடிகளை about:config இல் அமைக்க வேண்டும். Firefox மற்றும் Safari இல் இயல்புநிலையாக WebGPU ஐ இயக்க இன்னும் திட்டங்கள் எதுவும் இல்லை. Firefox மற்றும் Chromeக்காக உருவாக்கப்பட்ட WebGPU செயலாக்கங்கள் தனித்தனி நூலகங்களின் வடிவத்தில் கிடைக்கின்றன - Dawn (C++) மற்றும் wgpu (Rust), உங்கள் பயன்பாடுகளில் WebGPU ஆதரவை ஒருங்கிணைக்க நீங்கள் பயன்படுத்தலாம். WebGL ஐப் பயன்படுத்தும் பிரபலமான ஜாவாஸ்கிரிப்ட் நூலகங்களுக்கு WebGPU ஆதரவைச் சேர்க்கும் பணியும் நடந்து வருகிறது. எடுத்துக்காட்டாக, WebGPU க்கான முழு ஆதரவு ஏற்கனவே Babylon.js இல் அறிவிக்கப்பட்டுள்ளது, மேலும் Three.js, PlayCanvas மற்றும் TensorFlow.js இல் பகுதி ஆதரவு.

கருத்துப்படி, வல்கன் கிராபிக்ஸ் ஏபிஐ ஓபன்ஜிஎல்லில் இருந்து வேறுபடுவதைப் போலவே வெப்ஜிபியு வெப்ஜிஎல்லில் இருந்து வேறுபடுகிறது, ஆனால் வெப்ஜிபியு என்பது ஒரு குறிப்பிட்ட கிராபிக்ஸ் ஏபிஐயை அடிப்படையாகக் கொண்டதல்ல, ஆனால் வல்கன், மெட்டல் மற்றும் மெட்டல் ஆகியவற்றில் காணப்படும் அதே குறைந்த-நிலை ஆதிநிலைகளைப் பயன்படுத்தும் உலகளாவிய அடுக்கு ஆகும். டைரக்ட்3டி. WebGPU ஆனது அமைப்பு, செயலாக்கம் மற்றும் GPU க்கு கட்டளைகளை அனுப்புதல், தொடர்புடைய வளங்கள், நினைவகம், பஃபர்கள், அமைப்பு பொருள்கள் மற்றும் தொகுக்கப்பட்ட கிராபிக்ஸ் ஷேடர்கள் ஆகியவற்றின் மீது குறைந்த அளவிலான கட்டுப்பாட்டுடன் JavaScript பயன்பாடுகளை வழங்குகிறது. இந்த அணுகுமுறை மேல்நிலைச் செலவுகளைக் குறைப்பதன் மூலமும், GPU உடன் பணிபுரியும் திறனை அதிகரிப்பதன் மூலமும் கிராபிக்ஸ் பயன்பாடுகளுக்கான அதிக செயல்திறனை அடைய உங்களை அனுமதிக்கிறது.

வல்கன், மெட்டல் அல்லது டைரக்ட்3டியை நேரடியாகப் பயன்படுத்தும், ஆனால் குறிப்பிட்ட தளங்களுடன் இணைக்கப்படாத, தனித்தனி நிரல்களை விட மோசமாகச் செயல்படாத, சிக்கலான 3டி திட்டங்களை வலைக்கு உருவாக்க WebGPU உதவுகிறது. WebGPU ஆனது WebAssembly இல் தொகுக்கப்படுவதன் மூலம் நேட்டிவ் கிராபிக்ஸ் புரோகிராம்களை இணைய-இயக்கப்பட்ட படிவத்தில் மாற்றுவதற்கான கூடுதல் திறன்களை வழங்குகிறது. 3D கிராபிக்ஸ் தவிர, WebGPU ஆனது GPU க்கு கணக்கீடுகளை ஏற்றுவது மற்றும் ஷேடர்களை செயல்படுத்துவது தொடர்பான திறன்களையும் கொண்டுள்ளது.

WebGPU இன் முக்கிய அம்சங்கள்:

  • வளங்களின் தனி மேலாண்மை, ஆயத்த வேலை மற்றும் GPU க்கு கட்டளைகளை அனுப்புதல் (WebGL இல் ஒரு பொருள் ஒரே நேரத்தில் எல்லாவற்றிற்கும் பொறுப்பாகும்). மூன்று தனித்தனி சூழல்கள் வழங்கப்பட்டுள்ளன: இழைமங்கள் மற்றும் இடையகங்கள் போன்ற ஆதாரங்களை உருவாக்குவதற்கான GPU சாதனம்; ரெண்டரிங் மற்றும் கணக்கீட்டு நிலைகள் உட்பட தனிப்பட்ட கட்டளைகளை குறியாக்கம் செய்வதற்கான GPUCommandEncoder; GPUCommandBuffer GPU இல் செயல்படுத்துவதற்கு வரிசையில் இருக்க வேண்டும். முடிவு ஒன்று அல்லது அதற்கு மேற்பட்ட கேன்வாஸ் உறுப்புகளுடன் தொடர்புடைய பகுதியில் வழங்கப்படலாம் அல்லது வெளியீடு இல்லாமல் செயலாக்கப்படும் (உதாரணமாக, கம்ப்யூட் பணிகளை இயக்கும் போது). நிலைகளைப் பிரிப்பதன் மூலம் வள உருவாக்கம் மற்றும் தயாரிப்புச் செயல்பாடுகளை வெவ்வேறு த்ரெட்களில் இயங்கக்கூடிய வெவ்வேறு ஹேண்ட்லர்களாகப் பிரிப்பதை எளிதாக்குகிறது.
  • செயலாக்க நிலைகளுக்கு வேறுபட்ட அணுகுமுறை. WebGPU இரண்டு பொருட்களை வழங்குகிறது - GPURenderPipeline மற்றும் GPUComputePipeline, இது டெவலப்பரால் முன்பே வரையறுக்கப்பட்ட பல்வேறு நிலைகளை இணைக்க உங்களை அனுமதிக்கிறது, இது ஷேடர்களை மீண்டும் தொகுத்தல் போன்ற கூடுதல் வேலைகளில் வளங்களை வீணாக்காமல் இருக்க உலாவியை அனுமதிக்கிறது. ஆதரிக்கப்படும் நிலைகளில் பின்வருவன அடங்கும்: ஷேடர்கள், வெர்டெக்ஸ் பஃபர் மற்றும் பண்புக்கூறு தளவமைப்புகள், ஒட்டும் குழு தளவமைப்புகள், கலவை, ஆழம் மற்றும் வடிவங்கள் மற்றும் பிந்தைய-ரெண்டர் வெளியீட்டு வடிவங்கள்.
  • வல்கனின் வளக் குழு அம்சங்களைப் போலவே ஒரு பிணைப்பு மாதிரி. ஆதாரங்களை ஒன்றாகக் குழுவாக்க, WebGPU ஆனது GPUBindGroup பொருளை வழங்குகிறது, இது கட்டளைகளை எழுதும் போது ஷேடர்களில் பயன்படுத்த மற்ற ஒத்த பொருள்களுடன் இணைக்கப்படலாம். அத்தகைய குழுக்களை உருவாக்குவது, இயக்கி தேவையான ஆயத்த நடவடிக்கைகளை முன்கூட்டியே செய்ய அனுமதிக்கிறது, மேலும் டிரா அழைப்புகளுக்கு இடையில் ஆதார பிணைப்புகளை மிக வேகமாக மாற்ற உலாவியை அனுமதிக்கிறது. GPUBindGroupLayout பொருளைப் பயன்படுத்தி ஆதார பிணைப்புகளின் தளவமைப்பை முன் வரையறுக்கலாம்.

ஆதாரம்: opennet.ru

கருத்தைச் சேர்