CUDA ライブラリにリンクせずに、NVIDIA GPU に関する限られた情報セットを抽出したいと考えています。必要な情報は計算能力と GPU の名前だけです。これ以上の情報があれば便利ですが、必須ではありません。コードは C (または C++) で作成する必要があります。この情報は、構成時 (CUDA ツールキットが使用できない場合) および実行時 (実行されたバイナリが CUDA サポートでコンパイルされていない場合) に使用され、サポートされている GPU がシステムに存在することをユーザーに示唆します。
私が理解している限り、これはドライバー API を介して可能ですが、これが必要とする技術的な詳細についてはよく知りません。だから私の質問は:
少なくとも最小要件を満たすための正確な手順は何ですか (上記を参照)。
そのようなオープンソースのコードはありますか?
私の最初のステップは Linux 用のコードを用意することですが、最終的にはプラットフォームに依存しないコードが必要になることに注意してください。CUDA のプラットフォーム利用可能性を考慮すると、完全なソリューションの場合、これには Linux、Mac OS、および Windows 用の x86/AMD64 のコードが含まれます (少なくとも今のところ、リストは ARM ですぐに拡張される可能性があります)。
編集
「ドライバー API を介して可能である」とは、libcuda.so を動的にロードし、ドライバー API を介してデバイス プロパティをクエリできる必要があることを意味します。詳細はわかりませんが。