I used JProfiler.
http://www.filehosting.org/file/details/410917/All_Objects.html
http://www.filehosting.org/file/details/410918/Thread_History.html
Sample from All Objects file:
All Objects
Session: Local attach
Time of export: Saturday, January 12, 2013 7:01:06 PM CET
JVM time: 10:28
Sorted by: Instance count
Aggregation level: Classes
Name Instance count Size
java.util.HashMap$Entry 342Â 236 8Â 213 kB
java.util.HashMap$Entry[ ] 176Â 826 15Â 321 kB
java.util.HashMap 175Â 614 8Â 429 kB
java.util.jar.Attributes 135Â 505 2Â 168 kB
sun.reflect.GeneratedConstructorAccessor9 109Â 830 8Â 749 kB
java.lang.String 109Â 537 2Â 628 kB
sun.reflect.GeneratedConstructorAccessor42 41Â 925 2Â 109 kB
sun.reflect.GeneratedConstructorAccessor19 38Â 846 25Â 518 kB
java.util.Hashtable$Entry 33Â 014 792 kB
ur 27Â 876 892 kB
java.util.ArrayList 27Â 702 664 kB
java.util.LinkedList 24Â 974 599 kB
bq 22Â 643 362 kB
buildcraft.core.blueprints.BptSlot 21Â 836 1Â 048 kB
java.lang.Integer 19Â 782 316 kB
java.util.HashMap$KeySet 18Â 366 293 kB
java.util.LinkedList$Node 17Â 624 422 kB
sun.reflect.GeneratedConstructorAccessor6 15Â 634 863 kB
sun.reflect.GeneratedConstructorAccessor18 15Â 006 7Â 827 kB
java.lang.Class 9Â 531 4Â 504 kB
java.util.ArrayList$Itr 8Â 107 194 kB
yv 7Â 430 178 kB
java.util.HashMap$Values 7Â 403 118 kB
Is that in any way help full?
Edit: I should have added that. There was really no issue at the beginning. But now our world is over 600MB large. Average tick jumps from 20 to 50ms with no one logged and 400 chunks loaded. No artificially loaded chunks. Is it possible for just size of world to affect tick?