Multithread/Multicore Software Rendering?

Started by kevglass, September 22, 2009, 11:13:12 AM

Previous topic - Next topic

JavaMan

#15
Woah, some that is awesome, and it should only get better as Intel and AMD make more core processors!

kevglass

I've cross posted this onto JGO to try and get more performance figures:

http://www.javagaming.org/index.php/topic,21275

Kev

EgonOlsen

#17
Great. I'm very interested in those numbers myself. I have (Core2 Quad @ 3.2Ghz) 160fps in low and 95fps in high quality mode with an average load of around 60% (around 70% in high quality mode). I tried to improve some things, reduced the threading framework's overhead and added an option to blit the rendered image to screen in multiple threads, but both changes don't really cut it, which is why i haven't updated the uploaded version right now.

EgonOlsen

#18
Ok, i've uploaded another beta here: http://www.jpct.net/download/beta/jpctapi_119pre2_5.zip
It uses less worker threads spawned by the threading framework to do the same amount of work, i.e. it creates a little less overhead and it has an option to do multi threaded blitting, which i thought that it was a good idea, but it doesn't seem to cut it. Enable it with Config.useMultiThreadedBlitting=true;
In addition, it adds multi threading to the per-pixel fog processing of the software renderer.

kevglass

Not much change here. However, I did get 10fps or so from  using indoor mode and no zbuffer clearing (since my game fills the screen with polys).

Kev

kevglass

Made a update to the "game" today to add more tracks/cars etc. It's just getting out of hand:

http://www.cokeandcode.com/applets/jpct/

Kev

EgonOlsen

Nice! It takes some time to get used to the limited view. But after a couple of rounds, it plays pretty well.

JavaMan

Cool dude! I really like how the car slows down when I release the gas. Maybe your previous version was like that, but I really noticed it this time.
Amazing this is in software.  ;D And, great startup time. You could teach Sun a thing or two on the Java user experience.  ;), since they still haven't got it down yet: http://javafx.com/samples/