Re: [Sablevm-user] hello
Brought to you by:
egagnon
From: Etienne G. <gag...@uq...> - 2004-04-18 19:42:08
|
Hi Alan, You could grab SableVM's source code and do test it for yourself and hopefully report back the results here. You can set SableVM's memory consupmtion properties using: sablevm.heap.size.min sablevm.heap.size.max // 0 means no max. sablevm.heap.size.increment // 0 means fixed-size heap e.g. $ sablevm --property=sablevm.heap.size.min=1024 --property=sablevm.heap.size.increment=1024 ... This would start with a 1K heap and increase it by 1K increments, when needed. You can also customize other memory consuption things like stack size/growth, and class-loading related memory. All these properties are defined in src/libsablevm/vm_args.m4.c http://devel.sablevm.org/svn/repository/sablevm/branches/staging/src/libsablevm/vm_args.m4.c Looking forward to see your results! Etienne Alan Littleford wrote: > Etienne, > > would you have any hard numbers for a 'reasonable' system? > > We are looking for an embeddable JVM ourselves. Kaffe requires a heap size of > 1 meg just to do a 'hello world'. How would Sable compare against that? (Better I hope!). > > Do you happen to know if anyone has tried to 'cldc-ise' Sable and what kind of footprint that might result in ?? > > Performance-wise do you have a feel for how Sable might compare against the threaded-int version of Kaffe (which I guess just about sets our minimum acceptable level of performance) ? > > Thanks > > Alan > > > > > -----Original Message----- > From: sab...@li... [mailto:sab...@li...] On Behalf Of Etienne Gagnon > Sent: Sunday, April 18, 2004 10:10 AM > To: Vladimir Levin > Cc: sab...@li... > Subject: Re: [Sablevm-user] hello > > > Vladimir Levin wrote: > >>I am looking at using Java for embedded development. I am wondering if >>SableVM is suitable for embedded development? How does it compare to GCJ? > > > SableVM's runtime memory footprint can be pretty low, I guess. You can setup the initial heap size to 0 byte, and the increment to 1 byte, so that SableVM will tend to have as small a heap as possible (somewhat). > > Also, you can compile it with -Os, to optimize size. [Many of the m4 macros in place to add robustness can be easily modified to expand to even smaller code.] > > At runtime, the bytecode gets very little expansion (for preparation), compared to compiled code (gross figure; some times it's the other way around for specific bytecode sequences). > > SableVM is a "traditional" kind of JVM; it does no ahead of time compiling, not runtime compilation. It can result in smaller code. But, it will not compete in speed with highly optimized code, or adaptive optimization systems such as JikesRVM. > > Etienne > -- Etienne M. Gagnon, Ph.D. http://www.info.uqam.ca/~egagnon/ SableVM: http://www.sablevm.org/ SableCC: http://www.sablecc.org/ |