[RC5] cores for GPUs ?

Elektron elektron_rc5 at yahoo.ca
Sun Aug 15 08:11:08 EDT 2004


> I've read that and I'd say that most point are void at least in 
> DirectX +
> .NET Framework case under Windows.

The question is how easy it is to implement that into a core. You'd 
have to get something to load DLLs and everything like that.

> 3) The program is compiled for installed video card, programmer 
> doesn't need
> to know video card's internals. Obviously different video cards may be
> better in different things, but there are only two main types: ATI & 
> nVidia.
> Writing two cores don't look like too much.

The amount of optimisation possible in a JIT compiler is questionable.

> 5) As far as I know current video cards have more power than SIMD 
> extensions
> of any available PC processor. I was able to write a core for SSE2 
> that is
> about 60% as fast as my classic Pentium 4 core (cannot work at the same
> time). Working with video card should be possible in the same time that
> working in CPU(s) and should be even faster. As far as I know video 
> cards
> doesn't support SIMD bit shifts that would use different shift count 
> for
> different data sets, but that's just the same as in SSE2.

Be careful when you say 'PC'. x86 is better. And what do we do about 
linux boxes?

Do video cards support integer instructions? I thought it was all 
floating point (I recall the GeForce 3 being quoted at 11 gigaflops or 
so).

> Those are problem that I see at the moment:
> 1) This looks like something Windows specific. It might be possible to 
> port
> to Unix/Linux world as soon as MONO project would support video 
> acceleration
> (probably not in the near future).

I think all you need is a kernel module to interface with the video 
card. It wouldn't be userland either, since the prospect of someone in 
the background controlling the video card is questionable.

> 2) This would need .NET Framework installed. .NET Framework shows that 
> it's
> installed in User Agent string. Just check in your web server's logs 
> how
> many people has this installed (I'd expect about 10-20%)

# user at Na > cat access_log{,.*} | grep -e "MSIE" | wc
   59333 1320028 16628967

# user at Na > cat access_log{,.*} | grep -e ".NET" | wc
   14403  355611 4248068

That's about 24%.

362 from Macs (that's 0.6%, possibly suggesting that Mac people don't 
visit silly sites), 248 from Safari (69% of macs), 12 from OmniWeb, 4 
from AOL, 98 from Netscape 7. Oddly, all of them are running "Mac OS 
X".

> 2) As far as I know there are no priorities supported for video card
> programs. It may be problem or not (pausing if *any* other DirectX 
> program
> is running would be probably fine, and it should be possible to detect
> that).

I think you mean 3. =P I'm not sure if other Direct3D programs will run 
if one of them already has taken the video card (Ah, Windows, where 
playing MP3s can interfere with sound from other apps, and a game 
crashing can mess up DirectX until you reboot). When it runs, it'll 
probably say "Direct3D in use" or so, and then dnetc will probably be 
running again before you get to relaunching it.

- Purr



More information about the rc5 mailing list