WebGPU তে নতুন কি আছে (Chrome 122)

ফ্রাঁসোয়া বিউফোর্ট
François Beaufort

এবার WebGPU ফিচারের সংখ্যা একটু হালকা মনে হতে পারে, তবে বড় ধরনের অগ্রগতি খুব শীঘ্রই! পরবর্তী রিলিজে DP4a, রিড-অনলি এবং রিড-রাইট স্টোরেজ টেক্সচার, পৃথক স্টেনসিল এবং ডেপথ অ্যাসপেক্ট কন্ট্রোল, 3D টেক্সচার স্লাইসে রেন্ডারিং এবং শেডার কম্পাইলেশন উন্নতির মতো ফিচার অন্তর্ভুক্ত থাকবে।

ইতিমধ্যে, হেডলেস ক্রোমে WebGPU এবং WebGL সাপোর্ট ব্যবহার করে আপনার ওয়েব AI মডেল টেস্টিং কীভাবে সুপারচার্জ করবেন এবং কেন WebGPU Chrome এ অক্ষম থাকতে পারে বা কাজ করছে না তা শিখুন।

সামঞ্জস্যতা মোডের মাধ্যমে নাগাল বাড়ান (বিকাশের অধীনে থাকা বৈশিষ্ট্য)

WebGPU আধুনিক গ্রাফিক্স API গুলির (Vulkan, Metal, এবং D3D12) সাথে ভালোভাবে সামঞ্জস্যপূর্ণ, কিন্তু কিছু ডিভাইসে এই ধরণের সমর্থন নেই। এটি WebGPU-এর অ্যাক্সেসযোগ্যতা সীমিত করে, বিশেষ করে Windows (31% Chrome ব্যবহারকারীর D3D11.1+ নেই), Android (23% ব্যবহারকারীর Vulkan 1.1+ নেই), এবং ChromeOS (Vulkan গ্রহণ বৃদ্ধি পাচ্ছে) এর মতো প্ল্যাটফর্মগুলিতে।

এই সমস্যা সমাধানের জন্য Chrome টিম WebGPU-তে একটি সামঞ্জস্যপূর্ণ মোড নিয়ে কাজ করছে, যা WebGPU-এর একটি সামান্য সীমাবদ্ধ সংস্করণ অফার করে যা D3D11 এবং OpenGL ES-এর মতো পুরোনো API-তে কাজ করে। এটি WebGPU-এর সম্ভাব্য ব্যবহারকারীর সংখ্যা প্রসারিত করবে।

গুরুত্বপূর্ণভাবে, সামঞ্জস্যতা মোড ব্যবহারকারী অ্যাপ্লিকেশনগুলি সম্পূর্ণরূপে বৈধ WebGPU অ্যাপ্লিকেশন হিসাবে রয়ে যায়। সামঞ্জস্যতা মোড সমর্থন ছাড়া ডিভাইসগুলি নির্বিঘ্নে মূল WebGPU অ্যাডাপ্টারে ডিফল্ট হবে, যা ব্যাপক ব্যবহারযোগ্যতা নিশ্চিত করবে।

WebGPU সামঞ্জস্য মোডের চিত্র।
WebGPU সামঞ্জস্য মোড প্রসারিত নাগালের।

প্রস্তাবটি দেখুন এবং কোন প্রশ্ন থাকলে মন্তব্য করুন

maxVertexAttributes সীমা বৃদ্ধি করুন

GPURenderPipeline তৈরি করার সময় বাফারগুলিতে সর্বাধিক ১৬টি অ্যাট্রিবিউটের সংখ্যা ডিফল্টরূপে। এখন maxVertexAttributes সীমা ব্যবহার করে সর্বাধিক ৩০টি অ্যাট্রিবিউটের অনুরোধ করা সম্ভব, যখন এটি সমর্থিত হবে। নিম্নলিখিত উদাহরণটি দেখুন এবং dawn:2223 ইস্যু করুন

const adapter = await navigator.gpu.requestAdapter();

if (adapter.limits.maxVertexAttributes < 30) {
  // When the desired limit isn't supported, take action to either fall back to
  // a code path that does not require the higher limit or notify the user that
  // their device does not meet minimum requirements.
}

// Request highest limit of max vertex attributes.
const device = await adapter.requestDevice({
  requiredLimits: { maxVertexAttributes: 30 },
});

ভোরের আপডেট

"expose_wgsl_experimental_features" নামে একটি নতুন ইনস্ট্যান্স টগল যোগ করা হয়েছে যাতে ইনস্ট্যান্সটি শুধুমাত্র পরীক্ষামূলক WGSL বৈশিষ্ট্যগুলি প্রকাশ করতে পারে কিন্তু অনিরাপদ বৈশিষ্ট্যগুলি নয়, যাতে নিরাপদ পরীক্ষামূলক WGSL বৈশিষ্ট্যগুলি "allow_unsafe_apis" টগল সক্ষম না করেই ব্যবহার করা যেতে পারে। সমস্যাটি দেখুন dawn:2260

Node.js-এর জন্য Dawn বাইন্ডিং- এর সাম্প্রতিক উন্নতিগুলির মধ্যে নিম্নলিখিতগুলি অন্তর্ভুক্ত রয়েছে:

  • GPUSupportedFeatures::getSize() যোগ করা হয়েছে।
  • GPUAdapter staleness বাস্তবায়িত হয়েছে।
  • GPUInternalError এখন ডিভাইসের জন্য সঠিকভাবে রিপোর্ট করা হয়েছে।
  • গুণাবলী এখন গণনাযোগ্য।

এখানে শুধুমাত্র কিছু গুরুত্বপূর্ণ বিষয় অন্তর্ভুক্ত করা হয়েছে। কমিটের সম্পূর্ণ তালিকাটি দেখুন।

WebGPU-তে নতুন কী আছে

"What's New in WebGPU" সিরিজে যা যা আলোচনা করা হয়েছে তার একটি তালিকা।

ক্রোম ১৪৩

ক্রোম ১৪২

ক্রোম ১৪১

ক্রোম ১৪০

ক্রোম ১৩৯

ক্রোম ১৩৮

ক্রোম ১৩৭

ক্রোম ১৩৬

ক্রোম ১৩৫

ক্রোম ১৩৪

ক্রোম ১৩৩

ক্রোম ১৩২

ক্রোম ১৩১

ক্রোম ১৩০

ক্রোম ১২৯

ক্রোম ১২৮

ক্রোম ১২৭

ক্রোম ১২৬

ক্রোম ১২৫

ক্রোম ১২৪

ক্রোম ১২৩

ক্রোম ১২২

ক্রোম ১২১

ক্রোম ১২০

ক্রোম ১১৯

ক্রোম ১১৮

ক্রোম ১১৭

ক্রোম ১১৬

ক্রোম ১১৫

ক্রোম ১১৪

ক্রোম ১১৩