C# 获取显卡信息和内存信息

news/2024/10/16 22:53:14/

获取内存信息

public static class PerformanceInfo{[DllImport("psapi.dll", SetLastError = true)][return: MarshalAs(UnmanagedType.Bool)]public static extern bool GetPerformanceInfo([Out] out PerformanceInformation PerformanceInformation, [In] int Size);[StructLayout(LayoutKind.Sequential)]public struct PerformanceInformation{public int Size;public IntPtr CommitTotal;public IntPtr CommitLimit;public IntPtr CommitPeak;public IntPtr PhysicalTotal;public IntPtr PhysicalAvailable;public IntPtr SystemCache;public IntPtr KernelTotal;public IntPtr KernelPaged;public IntPtr KernelNonPaged;public IntPtr PageSize;public int HandlesCount;public int ProcessCount;public int ThreadCount;}public static Int64 GetPhysicalAvailableMemoryInMiB(){PerformanceInformation pi = new PerformanceInformation();if (GetPerformanceInfo(out pi, Marshal.SizeOf(pi))){return Convert.ToInt64((pi.PhysicalAvailable.ToInt64() * pi.PageSize.ToInt64() / 1048576));}else{return -1;}}public static Int64 GetTotalMemoryInMiB(){PerformanceInformation pi = new PerformanceInformation();if (GetPerformanceInfo(out pi, Marshal.SizeOf(pi))){return Convert.ToInt64((pi.PhysicalTotal.ToInt64() * pi.PageSize.ToInt64() / 1048576));}else{return -1;}}}

 获取显卡信息

using Alea;
using NvAPIWrapper.GPU;int driverVersion = Driver.Version;
var device = Device.Default;
var name = device.Name;
var number = device.Arch.Number;
var clockRate = device.Attributes.MemoryClockRate;
var gpu = PhysicalGPU.GetPhysicalGPUs()[0];
var gpuMemSize = gpu.MemoryInformation.DedicatedVideoMemoryInkB / 1024;
var cache = device.Attributes.L2CacheSize;
var coreNum = device.Cores.ToString();
var type = gpu.MemoryInformation.RAMType.ToString();
var maker = gpu.MemoryInformation.RAMMaker.ToString();
var busWidth = gpu.MemoryInformation.RAMBusWidth.ToString();


http://www.ppmy.cn/news/714187.html

相关文章

linux服务器显卡的占用量,命令查看Linux服务器内存、CPU、显卡使用情况

查看内存使用情况 使用命令:free -m 大致结果类似下图: 参数解释: Mem行(单位均为M): * total:内存总数 * used:已使用内存数 * free:空闲内存数 * shared:当前废弃不用 * buffers&a…

关于深度学习神经网络模型训练,参数过大,导致显卡内存溢出问题的总结

实验是利用CIFAR10模型,计算将图片分成10个分类的误差。一开始采用cpu模型来训练,迭代一个epoch需要50分钟,所以换成GPU模型,GPU有4G内存,结果刚加载模型显卡内存就溢出。 报错如下: 先用keras来计算网络的大小,参数的个数。 (50000, 32, 32, 3) (50000,) (10000, 32, …

显卡 内存分配 linux,【原创】Linux环境下的图形系统和AMD R600显卡编程(4)——AMD显卡显存管理机制...

显卡使用的内存分为两部分,一部分是显卡自带的显存称为VRAM内存,另外一部分是系统主存称为GTT内存(graphics translation table和后面的GART含义相同,都是指显卡的页表,GTT 内存可以就理解为需要建立GPU页表的显存)。在嵌入式系统或者集成显卡上,显卡通常是不自带显存的,…

win10弹出计算机的内存不足,win10提示计算机显卡内存不足情况的解决办法介绍...

近日,有网友反映,windows10系统在内存充足的情况下,出现提示计算机的内存不足的对话框现象,那么,提示win10计算机内存不足是什么原因?如何解决?针对此问题,本文就为大家进行解答。有…

计算机运行内存和显卡内存不足,电脑内存不足的解决办法 win10提示计算机显卡内存不足情况的解决办法介绍 我这个...

延伸:win10提示计算机显卡内存不足情况的解决办法介绍 我这个配置玩坦克世界提示内存 描述:近日,有网友反映,windows10系统在内存充足的情况下,出现提示计算机的内存不足的对话框现象,那么,提示win10计算机内存不足是什么原因?如何解决?针对此问题,本文就为大家进行解…

显卡内存一直被占用解决方式

lsof /dev/nvidia* kill相应pid http://stackoverflow.com/questions/4354257/stop-all-cuda-processes-in-linux-without-restarting-the-computer

显卡(N卡)内存被占用如何处理?

输入Nvidia-smi 比如这里面PID:20779占了很大的内存,但程序又没有被停掉,我允许其他程序的时候,就会爆内存(out of memory)。 然后 kill - 9 PID 就可以了,很好用。 参考资料: NVIDIA-SMI详解…

ubuntu gpu显卡内存 一直被占,nvidia-smi 看不到进程

使用 fuser 命令 查看 显卡进程信息,注意调整参数,可能你的显卡 是nvidia1,或nvidia6 fuser -v /dev/nvidia0 如果 fuser 命令 找不到,如图 fuser: command not found 安装fuser shell命令 apt-get install psmisc 查找到 …