पब्लिश किया गया: 21 नवंबर, 2024
WebGPU स्पेसिफ़िकेशन लगातार बेहतर होता जा रहा है. Google, Mozilla, Apple, Intel, और Microsoft जैसी बड़ी कंपनियां, इसके डेवलपमेंट के बारे में बातचीत करने के लिए हर हफ़्ते मिलती हैं. वेब के लिए GPU के काम करने वाले ग्रुप की हाल ही की मीटिंग में, WebGPU के अगले वर्शन के मुख्य लक्ष्यों और सुविधाओं के बारे में जानकारी दी गई थी. इस ब्लॉग पोस्ट में, मीटिंग से मिली कुछ अहम जानकारी के बारे में बताया गया है.
नौकरी के लिए उम्मीदवार के सुझाव की स्थिति
इस मीटिंग में, पहले माइलस्टोन की प्रोग्रेस पर चर्चा की गई. साथ ही, उन समस्याओं को हल करने के बारे में भी बातचीत की गई जिन्हें W3C के लिए, 'रिकॉमेंडेशन के लिए उम्मीदवार' स्टेटस पाने से पहले ठीक करना ज़रूरी है. यह स्टैंडर्ड बनाने की प्रोसेस का अगला चरण है. इसमें, ऐप्लिकेशन के काम करने के तरीके और बौद्धिक संपत्ति की सुरक्षा के बारे में ज़्यादा भरोसेमंद जानकारी मिलती है.
मीटिंग में हिस्सा लेने वाले लोगों ने इस बात पर सहमति जताई कि ये समस्याएं, WebGPU को W3C के उम्मीदवार के तौर पर सुझाव देने में कोई रुकावट नहीं हैं. साथ ही, इन समस्याओं को समय पर हल किया जा सकता है.
नई सुविधाओं को प्राथमिकता देना
मीटिंग में हिस्सा लेने वाले लोगों ने भी नई सुविधाओं को प्राथमिकता दी. उन्होंने सुविधा के अनुरोधों की सूची से शुरुआत की. यह सूची, डेवलपर, लागू करने वाले लोगों, और हिस्सेदारों के सुझावों और राय से बनाई गई थी.
चर्चा के बाद, एआई के लिए WebGPU की इन मुख्य सुविधाओं की पहचान की गई:
सबग्रुप और सबग्रुप मैट्रिक्स: ऐप्लिकेशन को GPU थ्रेड के बीच तेज़ी से स्थानीय कम्यूनिकेशन का इस्तेमाल करने दें. साथ ही, शेडर कोर के बगल में, तय साइज़ के मैट्रिक्स गुणन हार्डवेयर का फ़ायदा लें. सबग्रुप का प्रस्ताव देखें.
टेक्सल बफ़र: छोटे डेटा टाइप को स्टोर और ऐक्सेस करने का बेहतर तरीका उपलब्ध कराते हैं. जैसे, 16-बिट या 8-बिट वैल्यू को आसानी से स्टोर और ऐक्सेस किया जा सकता है. यह मशीन लर्निंग (एमएल) से जुड़ी इमेज प्रोसेसिंग के कुछ एल्गोरिदम के लिए ज़रूरी है. टेक्सल बफ़र स्लाइड देखें.
UMA बफ़र मैपिंग: कॉपी और सिंक करने में लगने वाले समय को कम करके या उसे खत्म करके, डेटा अपलोड करने की परफ़ॉर्मेंस को बेहतर बनाएं. स्पेसिफ़िकेशन से जुड़ी समस्या 2388 देखें.
रेंडरिंग के नए एल्गोरिदम को अनलॉक करने के लिए, WebGPU की इन सुविधाओं पर भी विचार किया जा रहा है और उन्हें प्राथमिकता दी जा रही है:
बिंडलेस: ज़्यादातर बेहतर रेंडरिंग एल्गोरिदम के लिए, इस सुविधा के प्रस्ताव को ज़रूरी शर्त माना जाता है. इसकी वजह यह है कि उन्हें पूरे सीन की जानकारी की ज़रूरत होती है. बांधने की सुविधा के बिना, शेडर अनलिमिटेड संसाधनों का इस्तेमाल कर सकते हैं. इनमें टेक्सचर भी शामिल हैं. फ़िलहाल, शेडर के लिए तय की गई सीमाएं काफ़ी सख्त हैं.
मल्टी-ड्रॉ इनडायरेक्ट: इससे जीपीयू पर पहले किए गए कैलकुलेशन की मदद से,
drawIndirect
के साथ पहले सिर्फ़ एक के बजाय कई ड्रॉ बनाए जा सकते हैं. यह जीपीयू से चलने वाली रेंडरिंग के लिए एक अहम सुविधा है. जैसे, ऑब्जेक्ट के लिए जीपीयू कलिंग. पुल अनुरोध 2315 देखें.64-बिट एटॉमिक: बफ़र या टेक्सचर में, जीपीयू पर "सॉफ़्टवेयर रेस्टराइज़ेशन" करने के लिए, यह ज़रूरी है. इसके लिए, डेप्थ-टेस्ट को बंडल करके, एक ही
atomicMax
ऑपरेशन में 32-बिट पेलोड लिखना होगा. समस्या 4329 देखें.
WebGPU की सुविधाओं और बड़े वेब प्लैटफ़ॉर्म के साथ इंटिग्रेशन को बेहतर बनाने के लिए, WebGPU की इन सुविधाओं के बारे में चर्चा की गई है:
कंपैटिबिलिटी मोड: इस मोड का मकसद, WebGPU को ज़्यादा से ज़्यादा डिवाइसों पर चलाने की सुविधा देना है. इसमें वे डिवाइस भी शामिल हैं जो सिर्फ़ OpenGL ES 3.1 के साथ काम करते हैं. अनुकूलता मोड का प्रस्ताव देखें.
WebXR: यह मौजूदा WebXR लेयर मॉड्यूल को WebGPU के साथ इंटरफ़ेस करने की अनुमति देता है. इसके लिए, हर लेयर टाइप के लिए WebGPU स्वैपचैन उपलब्ध कराए जाते हैं. WebGPU/WebXR इंटिग्रेशन की स्लाइड देखें.
Canvas2D: Canvas 2D और WebGPU के बीच बेहतर इंटरऑपरेबिलिटी (दूसरे सिस्टम के साथ काम करने की सुविधा) बनाता है. इससे परफ़ॉर्मेंस और काम करने के तरीके से जुड़ी समस्याओं को हल करने में मदद मिलती है. WebGPU ट्रांसफ़र के इस प्रस्ताव से, WebGPU में टेक्स्ट और पाथ ड्रॉइंग को ऐक्सेस किया जा सकेगा. साथ ही, Canvas 2D में WebGPU रेंडरिंग लागू की जा सकेगी.
इस मीटिंग में, WGSL टूल और लाइब्रेरी को बेहतर बनाने के बारे में प्रज़ेंटेशन और चर्चाएं भी हुईं. WESL (WGSL एक्सटेंडेड शेडिंग लैंग्वेज) को डेवलप करना एक अहम पहल है. इसका मकसद, WGSL के लिए कम्यूनिटी से मिले एक्सटेंशन का एक सेट उपलब्ध कराना है.
ज़्यादा जानकारी के लिए, मीटिंग के रॉ नोट देखें.
विचार
इस मीटिंग में, WebGPU के भविष्य को बेहतर बनाने के लिए, WebGPU के वर्किंग ग्रुप, डेवलपर, और ग्राफ़िक्स कम्यूनिटी के बीच मिलकर काम करने की अहमियत पर प्रकाश डाला गया. वर्किंग ग्रुप, सुझाई गई सुविधाओं के बारे में लगातार सुझाव, राय या शिकायतें मांग रहा है. साथ ही, यह डेवलपर के साथ मिलकर काम करने के लिए प्रतिबद्ध है, ताकि यह पक्का किया जा सके कि WebGPU उनकी ज़रूरतों को पूरा करता है.
WebGPU के अगले वर्शन से, वेब ग्राफ़िक के लिए नई संभावनाएं खुलेंगी. साथ ही, डेवलपर को एआई के लिए, वेब पर ज़्यादा दिलचस्प और बेहतर अनुभव देने में मदद मिलेगी.