Hallo,
ich möchte den gesamten Grafikspeicher, sowie die Auslastung von Selbigen über die NVAPI.dll auslesen.
Nun habe ich bereits die Funktion für die Auslastung der GPU von der NVAPI (NvAPI_GPU_GetUsages) am laufen und da ist alles super.
Nur bin ich mir a) nicht sicher welche Funktion der NVAPI.dll mir meine gewünschten Werte auslesen und habe b) bei den Funktionen mit denen ich rumprobiert habe (z.B. NvAPI_GPU_GetMemoryInfo) noch keinen Erfolg gehabt.
Beim googlen habe ich diesen C#-Code gefunden, steige aber auch da noch nicht ganz durch:
Spoiler anzeigen
NvMemoryInfo memoryInfo = new NvMemoryInfo();
memoryInfo.Version = NVAPI.GPU_MEMORY_INFO_VER;
memoryInfo.Values = new uint[NVAPI.MAX_MEMORY_VALUES_PER_GPU];
if (NVAPI.NvAPI_GPU_GetMemoryInfo != null && displayHandle.HasValue &&
NVAPI.NvAPI_GPU_GetMemoryInfo(displayHandle.Value, ref memoryInfo) ==
NvStatus.OK) {
uint totalMemory = memoryInfo.Values[0];
uint freeMemory = memoryInfo.Values[4];
float usedMemory = Math.Max(totalMemory - freeMemory, 0);
memoryLoad.Value = 100f * usedMemory / totalMemory;
ActivateSensor(memoryLoad);
Quelle: http://open-hardware-monitor.googlecode.com/svn/trunk/Hard…ia/NvidiaGPU.cs
Würde mich über Anregungen und Tipps freuen, da ich so langsam mit meinem Latein am Ende bin.
MfG,
be_cracked