jME and multicore?

I'm wondering, since I started a topic on (, how does jME scale in regard to multicore machines?

As much as you make it. The main render loop is still done in one thread (updating the scene, and then rendering it). Most notably the update routine should be easy to parallelize (without much or any change to jME), noone tried yet though, AFAIK.

There have been some improvements recently to jME that will allow you to do more things in the background, such as loading models, textures, etc. Still in a work in progress though (eg. this week we fixed some math routines to be thread safe).

appel, if you haven't looked at StandardGame yet I would encourage it.  The update method is not split out into another thread, but I don't really believe that's a logical thing to do particularly in the case of StandardGame.  The idea of StandardGame is really to pull nearly everything else out of the update and render methods and put them in their own threads (or at least another thread than the OpenGL one).

There's a wiki tutorial on it.

Yes, no need to rehash the whole multithreading debate… even SMF's not too bright "advanced" search should be able find you some topics on that.

Shortly put though, there are 3 different thing you can do, put from easy to hard:

Move non-"render loop" tasks to another thread, parallelize certain stages of the render loop, and executing different stages of the render loop concurrently.

Sorry…not trying to bring it back up, rather just making sure he knows about it…my assumption is not everyone reads every thread on this forum…I could be wrong though. :wink:

Wasn't meant for you… just a preemptive warning :stuck_out_tongue: