1. 開発者向けのウェブ技術
  2. Web API
  3. GPUAdapter
  4. GPUAdapter: requestAdapterInfo() メソッド

このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。

View in English Always switch to English

GPUAdapter: requestAdapterInfo() メソッド

Experimental: これは実験的な機能です。
本番で使用する前にブラウザー互換性一覧表をチェックしてください。

GPUAdapter インターフェイスの requestAdapterInfo() メソッドは、アダプターに関する特定用の情報が格納された GPUAdapterInfo オブジェクトで解決する Promise を返します。

このメソッドの背景の意図は、開発者がユーザーの GPU の特定の詳細を要求し、GPU に固有のバグの回避策を先手を取って適用したり、異なる GPU のアーキテクチャにより合う異なるコードパスを提供したりできるようにすることです。このような情報を提供すると、フィンガープリンティングに利用でき、セキュリティリスクが発生します。そのため、共有される情報は最小限にとどめられ、異なるブラウザーのベンダー間で情報の種類と粒度を共通化するでしょう。

メモ: 仕様書には requestAdapterInfo() 用の引数として、上記のセキュリティリスクを低減することを意図した unmaskHints が存在します。これに対応すれば、開発者は本当に知る必要がある値を指定することができるようになり、ユーザーはメソッドが呼び出されたとき情報を共有してよいかを尋ねる許可プロンプトを提示されるようになるでしょう。許可プロンプトで守られる場合、メソッドのフィンガープリンティングの対象としての有用度は下がるので、ブラウザーのベンダーはより有用な情報を共有するようになるでしょう。

構文

js
requestAdapterInfo()

引数

なし

返値

GPUAdapterInfo オブジェクトのインスタンスで解決する Promise です。

js
async function init() {
 if (!navigator.gpu) {
 throw Error("WebGPU に対応していません。");
 }
 const adapter = await navigator.gpu.requestAdapter();
 if (!adapter) {
 throw Error("WebGPU アダプターを要求できませんでした。");
 }
 const adapterInfo = await adapter.requestAdapterInfo();
 console.log(adapterInfo.vendor);
 console.log(adapterInfo.architecture);
 // ...
}

仕様書

この機能は、どの仕様書にも定義されていません。

ブラウザーの互換性

関連情報

MDN の改良に協力

協力方法を知る

このページは MDN の貢献者によって に最終更新されました。

AltStyle によって変換されたページ (->オリジナル) /