「SwiftShader」の版間の差分
Administrator (トーク | 投稿記録) 編集の要約なし |
Administrator (トーク | 投稿記録) 編集の要約なし |
||
| 1行目: | 1行目: | ||
'''SwiftShader'''(すいふとしぇーだー)とは、[[Google]]が[[オープンソース]]のもとで開発している[[Vulkan]]を[[CPU]]上で動かす[[デバイスドライバー]]です。 | '''SwiftShader'''(すいふとしぇーだー)とは、[[Google]]が[[オープンソース]]のもとで開発している[[Vulkan]]を[[CPU]]上で動かす[[デバイスドライバー]]です。 | ||
SwiftShaderを使うことで[[Vulkan]] | SwiftShaderを使うことで[[Vulkan]]に対応した[[GPU]](を搭載した[[ビデオカード]])がなくても、[[CPU]]上で[[Vulkan]]対応の仮想ビデオカードを使えるという代物です。当然ながらSwiftShaderの激遅です。 | ||
== 用途 == | |||
SwiftShaderの用途は[[Vulkan]]の「理想的な動作」を確認するためのものです。 | |||
[[Vulkan]]は最近でこそ[[Steam Deck]] ([[Steam OS]])などでも使われだしましたが永らく[[Android]]専用みたいな感じでした。Android向けの[[GPU]]([[SoC]])は実質的に[[NVIDIA]]、[[AMD]]、[[Intel]]の三社しかない[[PC]]向けとは比べ物にならないほど種類が多く、しかも多くのスマホはOSがバージョンアップされない関係でデバイスドライバもバージョンアップされず放置され、それらのVulkanの挙動がメチャクチャという問題がありました。 | |||
これが原因で不具合が出た際に「アプリが悪いのか」「GPUがクソなのか」の判断に困ることがありました。 | これが原因で不具合が出た際に「アプリが悪いのか」「GPUがクソなのか」の判断に困ることがありました。 | ||
2024年10月1日 (火) 08:11時点における版
SwiftShader(すいふとしぇーだー)とは、Googleがオープンソースのもとで開発しているVulkanをCPU上で動かすデバイスドライバーです。
SwiftShaderを使うことでVulkanに対応したGPU(を搭載したビデオカード)がなくても、CPU上でVulkan対応の仮想ビデオカードを使えるという代物です。当然ながらSwiftShaderの激遅です。
用途
SwiftShaderの用途はVulkanの「理想的な動作」を確認するためのものです。
Vulkanは最近でこそSteam Deck (Steam OS)などでも使われだしましたが永らくAndroid専用みたいな感じでした。Android向けのGPU(SoC)は実質的にNVIDIA、AMD、Intelの三社しかないPC向けとは比べ物にならないほど種類が多く、しかも多くのスマホはOSがバージョンアップされない関係でデバイスドライバもバージョンアップされず放置され、それらのVulkanの挙動がメチャクチャという問題がありました。
これが原因で不具合が出た際に「アプリが悪いのか」「GPUがクソなのか」の判断に困ることがありました。
そこで登場したのが「めっちゃ遅いが完璧な動作をするSwiftShader」です。たとえば、あるVulkanを使ったアプリを開発していて不具合が出たとします。その際にSwiftShaderでは正常に動くが特定のGPUでは正常に動かない場合は「プログラムは悪くない」「GPUがクソ」と判断できます。
備考
スマホでSnapdragonの採用が多くなったのもVulkanの実装がメチャクチャなのが原因です。アプリ開発者だけでなくスマホ利用者にも「ゲームするならSnapdragonが安心」という風潮が根付いたせいです。ただそのSnapdragon(のAdrenoシリーズ)ですら不具合が結構な頻度で発見されています。