Cobra91151
Cobra91151

Reputation: 650

Issue with WMI data

I want to get Video memory from GPU. I use WMI - Win32_VideoController class, property AdapterRAM. It returns value in bytes, so I convert it to MB:

int gpuRAM_MB = (gpuAdapterRAM.uintVal) / (1024) / (1024);

When I tried convert value to GB it returns as 3 GB (In other softwares such as AIDA64 it returns 4 GB):

int gpuRAM_GB = (gpuAdapterRAM.uintVal) / (1024) / (1024) / (1024);

My app: enter image description here

AIDA64:

enter image description here

The issue is how to convert it to GB? Thanks in advance.

Upvotes: 0

Views: 146

Answers (1)

pSoLT
pSoLT

Reputation: 1052

Use floating point division and ceil() function.

int gpuRAM_MB = ceil((gpuAdapterRAM.uintVal) / (1024.0) / (1024.0));

Upvotes: 1

Related Questions