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

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

প্রকাশিত: ১৭ জুন, ২০২৫

বাইন্ডিং রিসোর্স হিসেবে বাফার ব্যবহারের সংক্ষিপ্ত রূপ

ডেভেলপাররা এখন বাইন্ডিংয়ের জন্য শেডারে এক্সপোজ করতে একটি GPUBuffer-কে সরাসরি GPUBindingResource হিসেবে ব্যবহার করতে পারবেন। এর ফলে এটি অন্যান্য বাইন্ডিং টাইপের সাথে সামঞ্জস্যপূর্ণ হয় এবং যখন সাইজ ও অফসেট উভয়ই ডিফল্ট মান ব্যবহার করে, তখন এটি GPUBufferBinding-এর চেয়েও ব্যবহার করা সহজ হয়। ইস্যু 419223794 দেখুন।

const bindGroup = myDevice.createBindGroup({
  layout: myPipeline.getBindGroupLayout(0),
  entries: [
    { binding: 0, resource: mySampler },
    { binding: 1, resource: myTextureView },
    { binding: 2, resource: myExternalTexture },
    { binding: 3, resource: myBuffer }, // Same as { buffer: myBuffer }
    { binding: 4, resource: { buffer: myOtherBuffer, offset: 42 },
  ],
});

তৈরির সময় ম্যাপ করা বাফারগুলির আকারের প্রয়োজনীয়তা পরিবর্তিত হয়।

mappedAtCreation `true` সেট করে কোনো বাফার তৈরি করলে, size ৪-এর গুণিতক না হলে এখন একটি ` RangeError` থ্রো হবে। পূর্বে এটি শুধুমাত্র ` PUPValidationError` দ্বারা নিয়ন্ত্রিত হতো। ইস্যু ৪০৫৮৮৩৪৪৫ দেখুন।

myDevice.createBuffer({
  mappedAtCreation: true,
  size: 42,
  usage: GPUBufferUsage.STORAGE,
});
// Throws RangeError

সাম্প্রতিক জিপিইউগুলির জন্য স্থাপত্য প্রতিবেদন

Nvidia এবং AMD-এর সর্বশেষ GPU-গুলো এখন GPUAdapterInfo-তে তাদের আর্কিটেকচার যথাক্রমে "blackwell" এবং "rdna4" হিসেবে রিপোর্ট করছে, এছাড়াও GPU আর্কিটেকচারের তালিকায় আরও কিছু ছোটখাটো সংযোজন করা হয়েছে। ইস্যু 417202748 দেখুন।

GPUAdapter isFallbackAdapter অ্যাট্রিবিউটটি অপ্রচলিত করুন

GPUAdapter-এর isFallbackAdapter অ্যাট্রিবিউটটি এখন আর ব্যবহার করা হয় না। Chrome 136-এ প্রবর্তিত GPUAdapterInfo-এর isFallbackAdapter অ্যাট্রিবিউট দ্বারা এটি প্রতিস্থাপিত হয়েছে। অপ্রচলিত করার উদ্দেশ্য দেখুন।

ভোরের আপডেট

Dawn GLFW-এর CMake বিল্ডগুলিতে Emscripten সমর্থিত, যা ডেভেলপারদের Emdawnwebgpu ব্যবহার করে তাদের WebGPU ক্রস-প্ল্যাটফর্ম অ্যাপ কোডকে আরও সরল করতে সাহায্য করে। Emdawnwebgpu ব্রাউজার API-এর মাধ্যমে সর্বশেষ মানসম্মত webgpu.h প্রয়োগ করে। পরিবর্তন dawn:242894 দেখুন।

সম্পূর্ণ নির্দেশিকার জন্য, “Build an app with WebGPU” এর হালনাগাদকৃত ডকুমেন্টেশনটি দেখুন।

প্যাকেজ রিলিজগুলোতে এখন একটি "রিমোট" Emdawnwebgpu পোর্ট অন্তর্ভুক্ত করা হয়েছে। এই পোর্টের একটি স্ন্যাপশট Emscripten 4.0.10+-এ অন্তর্ভুক্ত করা হয়েছে, যা এখন এক্সটার্নালি হোস্ট করা পোর্টগুলো সাপোর্ট করে। Emdawnwebgpu-তে সুইচ করার জন্য এখন emcc -sUSE_WEBGPU ফ্ল্যাগটি পরিবর্তন করে emcc --use-port=emdawnwebgpu করতে হবে। Emscripten PR #24303 , #24220 এবং Dawn CL 243214 দেখুন।

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

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

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

ক্রোম ১৪৭-১৪৮

ক্রোম ১৪৬

ক্রোম ১৪৫

ক্রোম ১৪৪

ক্রোম ১৪৩

ক্রোম ১৪২

ক্রোম ১৪১

ক্রোম ১৪০

ক্রোম ১৩৯

ক্রোম ১৩৮

ক্রোম ১৩৭

ক্রোম ১৩৬

ক্রোম ১৩৫

ক্রোম ১৩৪

ক্রোম ১৩৩

ক্রোম ১৩২

ক্রোম ১৩১

ক্রোম ১৩০

ক্রোম ১২৯

ক্রোম ১২৮

ক্রোম ১২৭

ক্রোম ১২৬

ক্রোম ১২৫

ক্রোম ১২৪

ক্রোম ১২৩

ক্রোম ১২২

ক্রোম ১২১

ক্রোম ১২০

ক্রোম ১১৯

ক্রোম ১১৮

ক্রোম ১১৭

ক্রোম ১১৬

ক্রোম ১১৫

ক্রোম ১১৪

ক্রোম ১১৩