AleaGPUでGPUコードを実行する前にGPUが存在するかどうかを検出できますか?AleaGpuでGPUが使用可能かどうかを検出する
Gpu.Default
はnullですか?このオブジェクトにチェックできるプロパティがありますか?
GPUが存在する場合、基本的にはより高速なバージョンのアルゴリズムを実行したい場合は、元の低速バージョンを実行します。
AleaGPUでGPUコードを実行する前にGPUが存在するかどうかを検出できますか?AleaGpuでGPUが使用可能かどうかを検出する
Gpu.Default
はnullですか?このオブジェクトにチェックできるプロパティがありますか?
GPUが存在する場合、基本的にはより高速なバージョンのアルゴリズムを実行したい場合は、元の低速バージョンを実行します。
私は私のGPUを無効にしているが、このラインを試みた:
Console.WriteLine(Alea.Device.Devices.Count().ToString());
を、私はこの例外System.Exception was unhandled Message=[CUDAError] CUDA_ERROR_UNKNOWN
を得て、 Gpu.Default
にアクセスしようとすると同じ例外が発生します。私はGPUを持っているので、アリアは例外をスローしますが、それは無効になった場合、私はわからない、またはそれはdoesnのマシンと同じように動作します:
bool GpuEnabled = false;
try
{
GpuEnabled = Alea.Device.Devices.Count() > 0;
}
catch
{
GpuEnabled = false;
}
Console.WriteLine(GpuEnabled.ToString());
注:だから、このような何かを行うことができますとにかく、このコードは両方の仮定を安全に処理する必要があります。
これは最も簡単な方法はおそらくある:(それはあなたがAPIの独立ます)
var searcher = new ManagementObjectSearcher("SELECT * FROM Win32_DisplayConfiguration");
var q = searcher.Get()
.SelectMany(x => x.Properties)
.Where(x => x.Name == "Description")
foreach (var item in q)
{
yield return item.Value.ToString();
}