Update V49 now up! [MONKEY NEWS]

Monkey Forums/Monkey Programming/Update V49 now up! [MONKEY NEWS]

marksibly(Posted 2011) [#1]
Hi,

Update V49 is now available!

There are a few bug fixes in there, but the main feature is the addition of an (experimental) incremental garbage collector for the c++ glfw and ios targets. Note that you'll need to enable it via the config.h file in you project's .build dir.

The incremental GC should reduce GC overhead considerably for most apps, however it also means memory takes longer to be reclaimed so your app's memory footprint will probably be slightly larger when using it. How much larger will depend on the actual app.


Modules:

dom - added skidracer's stylesheet stuff.

flash mojo - fixed alpha bug introduced by fix for dark rendering.

monkey.lang, c++ mojos - added tweaks for incremental GC.


Trans (1.26)

Fixed generic class downcast parsing bug.

Added check for naughty assignments to indexed string chars.

Cpp translator now emits incremental gc friendly code - must be enabled via appropriate target config.h file.




hardcoal(Posted 2011) [#2]
tnx mark


Xaron(Posted 2011) [#3]
Great! Is my Android Bitmap suggestion in there already?


siread(Posted 2011) [#4]
Oh man, the new GC increases the performance of my game by 2-3 times on my iPhone. The frame rate fluctuates a lot on the menu screens but it consistently stays above 30fps and the gameplay is now a solid 60fps. Thanks Mark, I can now look forward to submitting my app! :)


benmc(Posted 2011) [#5]
For some reason Monk won't start on my Mac in this new version. The Monkey head shows up in the toolbar at the bottom, but the app never starts.


dawlane(Posted 2011) [#6]
For some reason Monk won't start on my Mac in this new version. The Monkey head shows up in the toolbar at the bottom, but the app never starts.
I've only had that type of problem when starting monk by selecting and opening a file. It did this in the last few version of monk.


benmc(Posted 2011) [#7]
I'm just starting Monk fresh from the new v47 folder, it shouldn't be trying to open any new files. Not sure why it's just stalling.

EDIT: I found that unzipping the package fresh, then manually making edits to Targets worked. I originally unzipped, edited files on the PC, then copied the targets folder over and it wouldn't open. Not sure what went on there.


ziggy(Posted 2011) [#8]
Nice! It seems a bit faster


marksibly(Posted 2011) [#9]
Hi,

> Great! Is my Android Bitmap suggestion in there already?

Oops, no sorry - next time!


Samah(Posted 2011) [#10]
Mark, can you also add the reflection caching optimisations I suggested a while ago? It removes all the object creation from onTouchEvent.



Basically:
* Cache the Method objects so that you're not doing four extra reflection calls on every touch event, and only check for them once per application run.
* Cache the intClass array since it will never change.
* Cache the args1 array.
* Use Integer.valueOf instead of new Integer, so that it uses the internal Integer pool.


marksibly(Posted 2011) [#11]
Hi,

> Mark, can you also add the reflection caching optimisations I suggested a while ago?

Will do.