Unbelievable! GC statistics

8-O Look at this, straight from the new particle system V2!



This is only a small portion, ive done the maths, and the GC becomes full every 0.2289675 seconds! 8-O



[Full GC 2377K->1839K(2960K), 0.0913309 secs]

[GC 2351K->1955K(3644K), 0.0026042 secs]

[GC 2467K->2049K(3644K), 0.0021989 secs]

[GC 2561K->2143K(3644K), 0.0026889 secs]

[GC 2655K->2239K(3644K), 0.0021933 secs]

[GC 2751K->2335K(3644K), 0.0035071 secs]

[GC 2847K->2429K(3644K), 0.0026987 secs]

[GC 2941K->2522K(3644K), 0.0022277 secs]

[GC 3034K->2615K(3644K), 0.0030141 secs]

[GC 3127K->2706K(3644K), 0.0027758 secs]

[GC 3218K->2799K(3644K), 0.0022500 secs]

[GC 3311K->2893K(3644K), 0.0022587 secs]

[GC 3404K->2986K(3644K), 0.0023349 secs]

[GC 3498K->3080K(3644K), 0.0023154 secs]

[GC 3592K->3174K(3772K), 0.0196254 secs]

[Full GC 3174K->1755K(3772K), 0.0849435 secs]

Yeeouch, that’s not good. I’m working on a solution right now. With luck it will improve things.



I’m adding:



vec.mult(vec2, product)

matrix.mult(matrix2, product)



so you can place the result into a already created object. I’ll keep you posted on if this helps or not.



Keep playing with the GC flags and see if you can get it working a little better. I’ll work from the code side.

im downloading JET! thats how low im going, i tried increasing the Heapsize, made it worst!



i tried changing the GC type, more minor collections, bigger footprint. and the footprint was LARGE! It had so much deletion of memory that the program kept running (frozen i might add) for a further 30 seconds before exiting!



I can’t believe this, 100 particles, and these results…

Well, right now it’s not so much the 100 particles, but 100 scene nodes. :stuck_out_tongue: This is the first stress test of the scene graph (not even that stressful), so there are bound to be some issues. I’m not too worried, as there has been zero optimization up to this point. The fact that it runs fairly decent at all is a good sign to me.

i just tested it with 1000 particles, and honestly speaking, there is little difference between 100 and 1000. This suggests to me that we need optimisation in the basics

thats one kewl program, very useful!



its good to know how optimised one’s programming is! :smiley:

THANK GOD! Made MAJOR improvements. I’m talking substantial. No pauses anymore, increased FPS at least 2 times. I’m cleaning things up and will get the changes into CVS. Also need to run each test to make sure I didn’t break anything.

P.S. In the particle system test, the mouse look is still not super smooth. So there is still a little bit of an issue. But it’s still so much better. There are still a few places that I can improve upon it, so I’m not done. Optimize It is the greatest tool in the world.



Now, as long as I don’t get fired for working on this here, I’ll be good to go. :slight_smile:

Ok, all the tests work. I did have to undo an “improvement” to Bounding Spheres that caused them not to work at all :slight_smile: So there are still a lot more spheres being created than I’d like. But we still have lots of room to optimize and things are running well now. The issue with mouse look on the particle system was due to the System.out of the frame rate.



I’ll be checking in soon.

Check in. Let me know if there is a CVS error. I had to pick and choose what to check in, because I’m still working on some items.

thats a brilliant improvement, what did you do?

Added addition mult methods that allowed the user to supply a product to place the answer in. Then used that for things that called mult a bunch.



Fixed geometry to not generate a new direct byte buffer every time data was changed. For example, when you changed the colors of the particle, it was building all new buffers to put the values in. That pretty much fixed the stutter. There are still a lot to optimize, but things are usable now.

i just compiled the particle system test with JET, and believe it or not, im getting a 10 FPS DROP! 8-O



I think we’re on the right track!

Yeah, I’ve definately heard mixed results from Jet. Most people who I have talked to says the only improvements they get are start time. Did you notice it come up quicker?

it did startup faster…but not at the cost of 10FPS!