Tính năng mới trong WebGPU (Chrome 114)

François Beaufort
François Beaufort

Tối ưu hoá JavaScript

Các cộng tác viên của Chromium đã tăng tốc hiệu suất WebGPU cho các phương thức GPUComputePassEncoder, GPURenderPassEncoderGPUCommandEncoder bằng cách giảm chi phí chung khi thực hiện các lệnh gọi từ mã được tạo trong công cụ JavaScript V8 đến các trình xử lý C++ trong công cụ kết xuất Blink. Hãy xem vấn đề chromium:1417558.

Việc đo điểm chuẩn vi mô sau đây cho thấy thời gian CPU của các lệnh gọi từ JavaScript giảm từ khoảng 0,5 mili giây cho mỗi 10.000 lượt vẽ xuống khoảng 0,3 mili giây cho mỗi 10.000 lượt vẽ, tức là mức cải thiện 40%.

Ảnh chụp màn hình biểu đồ điểm chuẩn của trình duyệt Chrome cho thấy những điểm cải tiến về các lệnh gọi nhanh.
Biểu đồ điểm chuẩn của Chrome cho thấy những điểm cải tiến về các lệnh gọi nhanh (nguồn).

getCurrentTexture() trên canvas chưa được định cấu hình sẽ gửi InvalidStateError

Giờ đây, việc gọi phương thức GPUCanvasContext getCurrentTexture() trên một canvas chưa được định cấu hình sẽ tạo ra InvalidStateError thay vì OperationError theo thông số WebGPU. Hãy xem vấn đề chromium:1424461.

const context = document.querySelector("canvas").getContext("webgpu");
context.getCurrentTexture(); // Throws InvalidStateError

Nội dung cập nhật về WGSL

Giờ đây, bạn có thể viết các vectơ có giá trị 0 của AbstractInt dưới dạng vec2(), vec3()vec4(). Xem vấn đề tint:1892. Ví dụ:

  • vec2() hiện là vec2(0,0)
  • vec3() hiện là vec3(0,0,0)
  • vec4() hiện là vec4(0,0,0,0)

Thông tin cập nhật về bình minh

Cải thiện thông báo lỗi

Nhãn mô tả cho các đối tượng không hợp lệ sẽ không bị loại bỏ nữa để bạn có thể thấy chúng trong thông báo lỗi. Hãy xem vấn đề dawn:1771.

Thêm các API còn thiếu cho Node.js

Các phương thức GPUAdapter::requestAdapterInfo()GPUBuffer::getMapState() hiện được triển khai cho Node.js. Xem vấn đề dawn:1761.

Tính năng mới trong WebGPU

Danh sách mọi nội dung đã được đề cập trong loạt bài Tính năng mới trong WebGPU.

Chrome 140

Chrome 139

Chrome 138

Chrome 137

Chrome 136

Chrome 135

Chrome 134

Chrome 133

Chrome 132

Chrome 131

Chrome 130

Chrome 129

Chrome 128

Chrome 127

Chrome 126

Chrome 125

Chrome 124

Chrome 123

Chrome 122

Chrome 121

Chrome 120

Chrome 119

Chrome 118

Chrome 117

Chrome 116

Chrome 115

Chrome 114

Chrome 113