www.gpgpu.org Forum Index www.gpgpu.org
General Purpose Computation on GPUs
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

2 Ideas for improving windows usability with GPU resources

 
Post new topic   Reply to topic    www.gpgpu.org Forum Index -> General GPGPU Discussion
View previous topic :: View next topic  
Author Message
Lope
.


Joined: 10 Feb 2007
Posts: 2

PostPosted: Sat Feb 10, 2007 7:29 pm    Post subject: 2 Ideas for improving windows usability with GPU resources Reply with quote

The main idea is to be able to use the GPU's memory as windows memory, the easiest way I can think of achieving this is to write a little Ramdisk driver like the QSoft one that u can get for windows2k/XP (I use it) then tell windows to use it as "virtual memory".
I'm no expert in these things.

The other idea is obvious, and forgive me if its been suggested before... It would rock if someone wrote an x86 emulator which runs on a GPU and shows up as another CPU core in windows.
Obviously emulation is slow, but it would mean any software could run on an otherwise idling processor Smile

Its probably too hardcore tricking windows into using a virtual processor though.
Back to top
View user's profile Send private message
NickK
GP


Joined: 15 Nov 2006
Posts: 189
Location: UK

PostPosted: Sat Feb 10, 2007 8:44 pm    Post subject: Re: 2 Ideas for improving windows usability with GPU resourc Reply with quote

Lope wrote:
The main idea is to be able to use the GPU's memory as windows memory, the easiest way I can think of achieving this is to write a little Ramdisk driver like the QSoft one that u can get for windows2k/XP (I use it) then tell windows to use it as "virtual memory".
I'm no expert in these things.


This depends on the graphic memory controller and if the CPU can issue operations to load or store. It would be possible using something like CTM however the mechanism would be rather convoluted and so the overall performance gains as virtual memory may not be that good. Not to mention the nasty memory translations that would need to be done with paging and 32 bit windows..
Then there's the question - what happens when a game needs to load textures? The gpu ram disk would have to page out all it's information to disk.

Probably quicker and less costly in the long run to get 4GB or more and use a 64 bit OS.

Quote:
The other idea is obvious, and forgive me if its been suggested before... It would rock if someone wrote an x86 emulator which runs on a GPU and shows up as another CPU core in windows.
Obviously emulation is slow, but it would mean any software could run on an otherwise idling processor Smile

Its probably too hardcore tricking windows into using a virtual processor though.


In order to execute x86 code, a gpu would have to simulate the operations unfortunately the gpu is so specific on it's operations it's not really going to be worth it. In addition, the software written for x86 execution such as games isn't really written with parallel execution without concurrency in mind.

Unified pixel shaders may make things more "general purpose" however they're still not designed to run in the same way as a Pentium/Xenon or an Athlon/Opteron. Hence emulation would be very costly.

I think if time and effort was to be ploughed into a project - a new form of compiler would be better. One that could take C/C++/Fortran etc, take the components (cpus, gpus etc) available and then output code that will run tasks on each component.
_________________
using kubuntu amd64, X1950XTX.
Back to top
View user's profile Send private message
Lope
.


Joined: 10 Feb 2007
Posts: 2

PostPosted: Sun Feb 11, 2007 9:08 pm    Post subject: Reply with quote

I agree about the compiler. That would rock, and be practical.

About the CPU emulation, I didnt have games in mind because games would need to use the GPU.

It would be interesting to find out whether windows has the ability to run efficiently on multiple processors of different speeds. If it assumes all the CPUs are the same, things wouldnt run smoothly at all Smile

Theres a program called Dosbox which emulates a Dos PC for playing old DOS games on windows. It runs really slow for "intensive games" but they have done an amazing job of it. Its unfortunately written in java or something. If you run the engine in the turbo mode, it takes the entire EXE of x86 dos code, interprets it and stores that in memory.

Perhaps the same concept could be applied with running an app on a GPU. Unfortunately the only way would be to run the exe inside the emulator. This method would solve the issue of trying to get windows to use it. It could be added to the right click menu. "Run this program on my GPU" haha.

Its too specific. I probably wouldn't use it.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    www.gpgpu.org Forum Index -> General GPGPU Discussion All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group