![]() |
|
|
#1 |
|
Benevolent Dictator
Join Date: May 2004
Location: Stuttgart, Germany
Posts: 13,769 (4.18/day)
Thanks: 184
Thanked 10,216 Times in 3,160 Posts
|
GPU-Z Shared Memory Layout
Code:
#define SHMEM_NAME _T("GPUZShMem")
#define MAX_RECORDS 128
#pragma pack(push, 1)
struct GPUZ_RECORD
{
WCHAR key[256];
WCHAR value[256];
};
struct GPUZ_SENSOR_RECORD
{
WCHAR name[256];
WCHAR unit[8];
UINT32 digits;
double value;
};
struct GPUZ_SH_MEM
{
UINT32 version; // Version number, 1 for the struct here
volatile LONG busy; // Is data being accessed?
UINT32 lastUpdate; // GetTickCount() of last update
GPUZ_RECORD data[MAX_RECORDS];
GPUZ_SENSOR_RECORD sensors[MAX_RECORDS];
};
#pragma pack(pop)
|
|
|
|
| The Following 6 Users Say Thank You to W1zzard For This Useful Post: |
|
|
#2 |
![]() Join Date: Jun 2008
Location: Rellingen, Germany
Posts: 6 (0.00/day)
Thanks: 0
Thanked 1 Time in 1 Post
|
STLCD fully supports your Sharedmemory interface
![]() Greets, OlafSt |
|
|
|
|
|
#3 |
|
Banned
Join Date: Dec 2007
Posts: 17 (0.01/day)
Thanks: 2
Thanked 0 Times in 0 Posts
|
hi!
thx for the shared memory support! it works really fine (i use it in C# via a C++ wrapper class) but unfortunately i found no way to access the temperatures and load of both GPUs at the same time (i have a HD3870 X2). ![]() hmm, is there any way? it's really disappointing that NO tool has this feature..
|
|
|
|
|
|
#4 |
![]() Join Date: Feb 2005
Location: Minneapolis, Mn
Posts: 1,425 (0.47/day)
Thanks: 127
Thanked 142 Times in 125 Posts
|
I really dont mean to sound stupid here, but is this code I can integrate into a C++ program to utalise memory locations on the videocard instead of standered memory locations?
|
|
|
|
|
|
#5 |
|
Join Date: Jul 2008
Posts: 3 (0.00/day)
Thanks: 0
Thanked 0 Times in 0 Posts
|
PS3Divx,
Would you be willing to post that wrapper class you created? If not, would it be feasible to access this shared memory from managed code? I am primarily a .NET developer and this isnt somthing I have done before. Thanks, Brian P. Hamachek |
|
|
|
|
|
#6 |
|
Banned
Join Date: Dec 2007
Posts: 17 (0.01/day)
Thanks: 2
Thanked 0 Times in 0 Posts
|
hmmm i don't know if i get you right, but i think the answer is "no". this "code" is for guys who want to access the data read by GPUZ in their own programs. so for example i want to use the temperature and core load of both of my GPUs in my own C# application. to get these values i access GPUZ's shared memory, where the data is stored. hope i could help you a bit.
![]() E: @brianhama: hi, yeah i'm also quite a C++ newbie, but i managed to create something that works for me.. if you like i can give you the files, it aren't much lines. however i can't guarantee that it's really good and clean code if you know what i mean..^^ |
|
|
|
|
|
#7 |
|
Join Date: Jul 2008
Posts: 3 (0.00/day)
Thanks: 0
Thanked 0 Times in 0 Posts
|
I understand that. I am asking if you could post some code on how to access shared memory.
|
|
|
|
|
|
#8 |
|
Banned
Join Date: Dec 2007
Posts: 17 (0.01/day)
Thanks: 2
Thanked 0 Times in 0 Posts
|
allright, i will post the documented code, files and visual studio project soon (next 1-3 days), for anyone who needs it..
|
|
|
|
|
|
#9 |
|
Benevolent Dictator
Join Date: May 2004
Location: Stuttgart, Germany
Posts: 13,769 (4.18/day)
Thanks: 184
Thanked 10,216 Times in 3,160 Posts
|
at this time it is only possible to get the readings for the currently selected video card (in gpuz)
|
|
|
|
|
|
#10 |
|
Banned
Join Date: Dec 2007
Posts: 17 (0.01/day)
Thanks: 2
Thanked 0 Times in 0 Posts
|
hmm i see.. is it possible to extend it to all cores in the next version? that would really help me out. however, i think the whole application is designed to show only one core at a time so it might be a bit complicated to get all data at the same time.. so if that's absolutely not possible could you at least add some kind of command line argument that defines which of the cores is selected at startup?
because then i could start gpuz twice (one instance per core) and the data of both cores is written into (the same) shared memory. i could read the data each 500ms in my app so i get both values.. a bit complicated and dirty but it would serve my needs, if the shared memory for all cores is to complex. ![]() PS: at the moment i'm pimping my neat-o wrapper class for you guys.. just love it.
|
|
|
|
|
|
#11 |
|
Join Date: Jul 2008
Posts: 3 (0.00/day)
Thanks: 0
Thanked 0 Times in 0 Posts
|
Thanks PS3Divx; I look forward to your post.
Brian P. Hamachek |
|
|
|
|
|
#12 |
![]() Join Date: Jun 2008
Location: Rellingen, Germany
Posts: 6 (0.00/day)
Thanks: 0
Thanked 1 Time in 1 Post
|
Maybe it is a nice idea to have a "GPU Count" value in the shared memory block. Then, for any further GPU, just create another shared-mem-block called "GPUZShMem_2", "GPUZShMem_3" and so on. I think this is the easiest way to accomplish this, as nobody knows how much GPU's we sometime will have on a Graphics card...
BTW, for next release a "minimize to tray"-Feature would be nice ![]() Greets, Olaf |
|
|
|
|
|
#13 |
|
Banned
Join Date: Dec 2007
Posts: 17 (0.01/day)
Thanks: 2
Thanked 0 Times in 0 Posts
|
|
|
|
|
|
|
#14 |
![]() Join Date: Jul 2008
Posts: 7 (0.00/day)
Thanks: 0
Thanked 4 Times in 4 Posts
|
Allright, here we go with the C# wrapper class for GPUZ!
(as i said: it's the "later" night.. )With it you can access the shared memory of GPUZ in your C# applications quite convenient. For example the following lines will print the Temperature and the Core Load on the console: Code:
Gpuz.Wrapper.Open() Console.WriteLine(Gpuz.Wrapper.SensorValue(2)); //temp Console.WriteLine(Gpuz.Wrapper.SensorValue(4)); //load Gpuz.Wrapper.Close(); http://www.file-upload.net/download-...apper.rar.html It includes: - 2 DLLs to include and use in your C# application - the visual studio (2005) project to modify and compile the DLLs on your own - a visual studio (2005) project which shows the proper usage of the wrapper class - a small readme file which lists the steps to take if you want to use the wrapper class in your C# application. Well, i think it's pretty handy and some guys might have a use of this! ![]() Oh, and of course the whole code is absolutely open source and free to modify and use. ![]() Enjoy! ![]() PS: Feel free to ask if something is unclear.
|
|
|
|
|
|
#15 |
![]() Join Date: Aug 2005
Location: Denmark WTF xD
Posts: 2,065 (0.73/day)
Thanks: 238
Thanked 455 Times in 321 Posts
|
i just tested out GPU-Z 0.2.6 at my server it got a NVIDIA GeForce 6150SE and the "Graphics Card" fan can't show memory clock but the "Senors" fan can
![]() ![]() ![]() Validator Link: http://www.techpowerup.com/gpuz/kn7yh/ Motherboard is a Asus M2N-XE: http://uk.asus.com/products.aspx?l1=...76&modelmenu=1
__________________
|
|
|
|
|
|
#16 |
![]() Join Date: Sep 2007
Posts: 6 (0.00/day)
Thanks: 0
Thanked 0 Times in 0 Posts
|
I have same problem with the G45 (Intel DG45FG) !!
The memory isn't detected with the Gpuz 0.27
|
|
|
|
|
|
#17 |
![]() |
W1zzard, is it possible to get the GPU count and if sli/crossfire is enabled? What properties should I look at? Sorry, no sli/crossfire to test.
BTW, I'll use GPU-Z in Framebuffer Crysis Warhead Benchmark Tool. Last edited by Mr.John; Oct 9, 2008 at 05:24 PM. |
|
|
|
|
|
#18 |
![]() Join Date: Apr 2008
Posts: 49 (0.03/day)
Thanks: 0
Thanked 0 Times in 0 Posts
|
i need vb code of gpuz ...where can i get it...
|
|
|
|
|
|
#19 |
|
Join Date: Jan 2009
Posts: 4 (0.00/day)
Thanks: 0
Thanked 0 Times in 0 Posts
|
@JohnnyUT
Hast du auch eine x64 GpuzShMem.dll? grüße toolmaster |
|
|
|
|
|
#20 | |
![]() Join Date: Aug 2008
Posts: 9 (0.01/day)
Thanks: 0
Thanked 0 Times in 0 Posts
|
Quote:
Ouppps ! I never see this. i am sorry. I use this the share memory in plugin of samurize, here http://www.samurize.com/modules/mydo...wcat.php?cid=6 "A plugin for GPU Z" This shared memory is a very good feature, a great idee, and very usefull. Thanks. |
|
|
|
|
|
|
#22 |
|
Join Date: Mar 2010
Posts: 1 (0.00/day)
Thanks: 0
Thanked 0 Times in 0 Posts
|
Thanks for this interface. Now I have a monitor plugin of rivatuner, making use of the GPU load and other information reported by GPU-Z. It works very well.
I have described some detail in my blog but I'm sorry it was in Chinese. |
|
|
|
|
|
#23 |
|
Join Date: May 2010
Posts: 1 (0.00/day)
Thanks: 0
Thanked 0 Times in 0 Posts
|
can someone please convert shared memory to delphi?
|
|
|
|
|
|
#24 |
|
Join Date: Jul 2010
Posts: 3 (0.00/day)
Thanks: 0
Thanked 1 Time in 1 Post
|
LCDSirReal, or SirReal's multipurpose G15 plugin, is a plugin for the Logitech G13/G15 gaming keyboards. It will also work on the G19, in black and white. It provides more features than all of the Logitech bundled plugins together, while using much less CPU and memory. Written entirely in C++, it's very stable and efficient. Among the more notable features are support for applications (WinAMP, iTunes, SpeedFan, FRAPS, TeamSpeak...) and system real time monitoring of networking, CPU and memory usage and more. And of course it shows the basic stuff as time, date and waiting mail as well.
![]() Changes in 2.8.3:
http://www.linkdata.se/ |
|
|
|
|
|
#25 |
|
- what happens if 2 or more GPUs are present, the structure posted on the OP provide all the info ?
- the OP is rather old, does the OP structure is still up to date ? |
|
|
|
|
![]() |
| Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
| Thread Tools | |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| ATI Radeon HD 2900 XT | W1zzard | Reviews | 174 | Jun 3, 2007 08:54 AM |
| Mushkin XP2-8500 4 GB | W1zzard | Reviews | 11 | May 24, 2007 02:23 AM |
| G.SKILL F2-6400CL6D-4GBMQ 4 GB Kit | W1zzard | Reviews | 4 | Jan 1, 2007 03:43 AM |
| abit AW9D-MAX | W1zzard | Reviews | 4 | Nov 6, 2006 11:25 AM |
| Abit AT8 | W1zzard | Reviews | 36 | Apr 12, 2006 11:59 AM |