AleaGPU에서 GPU 코드를 실행하기 전에 GPU가 있는지 감지 할 수 있습니까?GPU가 AleaGpu에서 사용 가능한지 감지하십시오.
Gpu.Default
이 null입니까? 이 개체에 확인할 수있는 속성이 있습니까?
기본적으로 GPU가있는 경우 더 빠른 버전의 알고리즘을 실행하고 그렇지 않으면 원래의 느린 버전을 실행하려고합니다.
AleaGPU에서 GPU 코드를 실행하기 전에 GPU가 있는지 감지 할 수 있습니까?GPU가 AleaGpu에서 사용 가능한지 감지하십시오.
Gpu.Default
이 null입니까? 이 개체에 확인할 수있는 속성이 있습니까?
기본적으로 GPU가있는 경우 더 빠른 버전의 알고리즘을 실행하고 그렇지 않으면 원래의 느린 버전을 실행하려고합니다.
내가 장애인 내 GPU는 다음이 줄 시도가 :
Console.WriteLine(Alea.Device.Devices.Count().ToString());
을 그리고 난이 예외 System.Exception was unhandled Message=[CUDAError] CUDA_ERROR_UNKNOWN
를 가지고와 Gpu.Default
에 액세스하려고하면 같은 예외가 발생합니다. 나는 GPU가 있기 때문에 Alea가 예외를 던져하지만 장애인이라면 나는 확실하지 않다, 또는 '아무튼 기계와 같은 방식으로 작동합니다 :
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();
}