GPUOutOfMemoryError
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.
Hinweis: Diese Funktion ist in Web Workers verfügbar.
Die GPUOutOfMemoryError
Schnittstelle der WebGPU API beschreibt einen Speicherüberlauf-Fehler (out-of-memory), der darauf hinweist, dass nicht genügend freier Speicher vorhanden war, um die angeforderte Operation abzuschließen.
Sie stellt einen der Fehlertypen dar, die durch GPUDevice.popErrorScope
und das uncapturederror
-Ereignis hervorgehoben werden.
Out-of-memory-Fehler sollten in einer gut funktionierenden App relativ selten sein, sind jedoch weniger vorhersehbar als GPUValidationError
s. Dies liegt daran, dass sie von dem Gerät abhängen, auf dem Ihre App läuft, sowie von anderen Apps, die zum Zeitpunkt der Ausführung GPU-Ressourcen nutzen.
Konstruktor
GPUOutOfMemoryError()
-
Erstellt eine neue Instanz des
GPUOutOfMemoryError
-Objekts.
Instanz-Eigenschaften
Beispiele
Das folgende Beispiel verwendet einen Fehlerbereich, um einen Out-of-Memory-Fehler zu erfassen und gibt ihn in der Konsole aus.
device.pushErrorScope("out-of-memory");
let buffer = device.createBuffer({
size: 100_000_000_000, // 100GB; far too big
usage: GPUBufferUsage.COPY_SRC | GPUBufferUsage.MAP_WRITE,
});
device.popErrorScope().then((error) => {
if (error) {
// error is a GPUOutOfMemoryError object instance
buffer = null;
console.error(`Out of memory, buffer too large. Error: ${error.message}`);
}
});
Spezifikationen
Specification |
---|
WebGPU # gpuoutofmemoryerror |