Mengoptimalkan JavaScript
Kontributor Chromium mempercepat performa WebGPU untuk metode GPUComputePassEncoder
, GPURenderPassEncoder
, dan GPUCommandEncoder
dengan mengurangi overhead melakukan panggilan dari kode yang dihasilkan di mesin JavaScript V8 ke pengendali C++ di mesin rendering Blink. Lihat masalah chromium:1417558.
Microbenchmark berikut menunjukkan waktu CPU panggilan dari JavaScript menurun dari sekitar 0,5 md per 10K menggambar menjadi sekitar 0,3 ms per 10K menggambar, yang merupakan peningkatan 40%.
getCurrentTexture() pada kanvas yang tidak dikonfigurasi menampilkan InvalidStateError
Memanggil metode getCurrentTexture()
GPUCanvasContext
pada kanvas yang tidak dikonfigurasi kini menampilkan InvalidStateError
, bukan OperationError
, sesuai dengan spesifikasi WebGPU. Lihat masalah chromium:1424461.
const context = document.querySelector("canvas").getContext("webgpu");
context.getCurrentTexture(); // Throws InvalidStateError
Info terbaru tentang WGSL
Vektor AbstractInt yang terisi nol kini dapat ditulis sebagai vec2()
, vec3()
, dan vec4()
. Lihat masalah tint:1892. Contoh:
vec2()
adalahvec2(0,0)
vec3()
adalahvec3(0,0,0)
vec4()
adalahvec4(0,0,0,0)
Update Fajar
Memperbaiki pesan error
Label deskriptor untuk objek yang tidak valid tidak dihapus lagi sehingga Anda dapat melihatnya di pesan error. Lihat masalah fawn:1771.
Menambahkan API yang tidak ada untuk Node.js
Metode GPUAdapter::requestAdapterInfo()
dan GPUBuffer::getMapState()
kini diterapkan untuk Node.js. Lihat masalah dawn:1761.
Yang Baru di WebGPU
Daftar semua hal yang tercakup dalam seri What's New in WebGPU.
Chrome 125
Chrome 124
- Tekstur penyimpanan hanya baca dan baca-tulis
- Dukungan pekerja layanan dan pekerja bersama
- Atribut informasi adaptor baru
- Perbaikan bug
- Update fajar
Chrome 123
- Dukungan fungsi bawaan DP4a dalam WGSL
- Parameter pointer yang tidak dibatasi dalam WGSL
- Gula sintaksis untuk dereferensi komposit dalam WGSL
- Pisahkan status hanya baca untuk aspek stensil dan kedalaman
- Update fajar
Chrome 122
- Memperluas jangkauan dengan mode kompatibilitas (fitur dalam pengembangan)
- Meningkatkan batas maxVertexAttributes
- Update fajar
Chrome 121
- Mendukung WebGPU di Android
- Menggunakan DXC, bukan FXC, untuk kompilasi shader di Windows
- Kueri stempel waktu dalam penerusan komputasi dan render
- Titik entri default ke modul shader
- Mendukung display-p3 sebagai ruang warna GPUExternalTexture
- Info heap memori
- Update fajar
Chrome 120
- Dukungan untuk nilai floating point 16-bit dalam WGSL
- Capai batas
- Perubahan pada status stensil kedalaman
- Pembaruan informasi adaptor
- Kuantisasi kueri stempel waktu
- Fitur bersih-bersih
Chrome 119
- Tekstur float 32-bit yang dapat difilter
- format verteks unorm10-10-10-2
- Format tekstur rgb10a2uint
- Update fajar
Chrome 118
- Dukungan HTMLImageElement dan ImageData di
copyExternalImageToTexture()
- Dukungan eksperimental untuk tekstur penyimpanan baca-tulis dan hanya baca
- Update fajar
Chrome 117
- Membatalkan penetapan buffer verteks
- Tidak menetapkan bind group
- Menonaktifkan error dari pembuatan pipeline asinkron saat perangkat hilang
- Update pembuatan modul shader SPIR-V
- Meningkatkan pengalaman developer
- Menyimpan data dalam cache dengan tata letak yang dibuat secara otomatis
- Update fajar
Chrome 116
- Integrasi WebCodecs
- Perangkat hilang yang ditampilkan oleh GPUAdapter
requestDevice()
- Buat pemutaran video tetap lancar jika
importExternalTexture()
dipanggil - Kesesuaian spesifikasi
- Meningkatkan pengalaman developer
- Update fajar
Chrome 115
- Ekstensi bahasa WGSL yang didukung
- Dukungan eksperimental untuk Direct3D 11
- Mendapatkan GPU diskret secara default menggunakan daya AC
- Meningkatkan pengalaman developer
- Update fajar
Chrome 114
- Mengoptimalkan JavaScript
- getCurrentTexture() pada kanvas yang tidak dikonfigurasi menampilkan InvalidStateError
- Info terbaru WGSL
- Update fajar