GPUOutOfMemoryError

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.

Note: This feature is available in Web Workers.

Giao diện GPUOutOfMemoryError của WebGPU API mô tả lỗi hết bộ nhớ (oom) cho biết không đủ bộ nhớ trống để hoàn thành thao tác được yêu cầu.

Nó đại diện cho một trong các loại lỗi được hiển thị bởi GPUDevice.popErrorScope và sự kiện uncapturederror.

Lỗi hết bộ nhớ nên tương đối hiếm trong một ứng dụng hoạt động tốt nhưng khó dự đoán hơn so với GPUValidationError. Điều này là do chúng phụ thuộc vào thiết bị mà ứng dụng đang chạy cũng như các ứng dụng khác đang sử dụng tài nguyên GPU tại thời điểm đó.

GPUError GPUOutOfMemoryError

Hàm khởi tạo

GPUOutOfMemoryError()

Tạo một đối tượng GPUOutOfMemoryError mới.

Thuộc tính phiên bản

Thuộc tính message được kế thừa từ lớp cha, GPUError:

message Experimental Read only

Một chuỗi cung cấp thông báo dễ đọc giải thích lý do tại sao lỗi xảy ra.

Ví dụ

Ví dụ sau sử dụng phạm vi lỗi để bắt lỗi hết bộ nhớ và ghi nó vào bảng điều khiển.

js
device.pushErrorScope("out-of-memory");

let buffer = device.createBuffer({
  size: 100_000_000_000, // 100GB; quá lớn
  usage: GPUBufferUsage.COPY_SRC | GPUBufferUsage.MAP_WRITE,
});

device.popErrorScope().then((error) => {
  if (error) {
    // error là một đối tượng GPUOutOfMemoryError
    buffer = null;
    console.error(`Out of memory, buffer too large. Error: ${error.message}`);
  }
});

Thông số kỹ thuật

Specification
WebGPU
# gpuoutofmemoryerror

Tương thích trình duyệt

Xem thêm