WOOOHHOOOOO!!!! Amazing what you discover by accident......
While running a profiler over the code to see where our memory was going to with the IFS, we noticed an awful lot of memory was going to a couple of really low-level classes like int[]. Doing some back tracing we decided to change one line of code: protected VRMLFieldParser fieldParser to protected static VRMLFieldParser fieldParser Low and behold, our test file that was taking 30+ seconds to load now takes about 4. In addtion, our memory usage which was 110MB is now 28MB. Basically, we started sharing instances of the low-level field parsing code, which is generated by JavaCC. There's a lot of extra stuff floating around and the way we use the instance means that it will never suffer re-entrancy problems. This code is only in CVS currently, but we're considering making an early M5 release because we have that, a bunch of reorganisation internally and all of the much requested capability bits handling to put out for public consumption. -- Justin Couch http://www.vlc.com.au/~justin/ Java Architect & Bit Twiddler http://www.yumetech.com/ Author, Java 3D FAQ Maintainer http://www.j3d.org/ ------------------------------------------------------------------- "Humanism is dead. Animals think, feel; so do machines now. Neither man nor woman is the measure of all things. Every organism processes data according to its domain, its environment; you, with all your brains, would be useless in a mouse's universe..." - Greg Bear, Slant ------------------------------------------------------------------- =========================================================================== To unsubscribe, send email to [EMAIL PROTECTED] and include in the body of the message "signoff JAVA3D-INTEREST". For general help, send email to [EMAIL PROTECTED] and include in the body of the message "help".