sablevm-user Mailing List for SableVM
Brought to you by:
egagnon
You can subscribe to this list here.
2000 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(3) |
Jul
(30) |
Aug
(13) |
Sep
|
Oct
|
Nov
(11) |
Dec
|
---|---|---|---|---|---|---|---|---|---|---|---|---|
2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(1) |
Sep
|
Oct
(2) |
Nov
(5) |
Dec
(2) |
2002 |
Jan
(2) |
Feb
|
Mar
(2) |
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
(18) |
Sep
|
Oct
|
Nov
|
Dec
(5) |
2003 |
Jan
(12) |
Feb
(7) |
Mar
(19) |
Apr
(1) |
May
(5) |
Jun
|
Jul
(2) |
Aug
|
Sep
|
Oct
|
Nov
(3) |
Dec
|
2004 |
Jan
|
Feb
|
Mar
(12) |
Apr
(16) |
May
(6) |
Jun
(6) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Tom S. <to...@pl...> - 2004-06-28 21:52:06
|
Hello, I am trying to use JNI_CreateJavaVM() to create a JVM, but I am having what I think are classpath problems. The JVM starts ok, but then fails to find my class. Does anyone have any ideas? Versions: gcc 3.3.4-1 The GNU C compiler jikes 1.21-2 Fast Java compiler adhering to language and jikes-sablevm 1.1.0-5 Wrapper for jikes using classes from SableVM sablevm 1.1.0-5 Free implementation of Java Virtual Machine libsablevm1-de 1.1.0-5 Free implementation of JVM secon edition - d Build commands: gcc -lsablevm main.c -o main jikes-sablevm Foo.java Running: $ ./main error finding 'Foo' class $ Test files: /* Foo.java */ public class Foo { public static void main(String args[]) { System.out.println("Foo::main()"); } } /* main.c */ #include <jni.h> #include <stdio.h> int main(int argc, char *argv[]) { JavaVMOption options[1]; JavaVMInitArgs vm_args; JNIEnv *env = NULL; JavaVM *jvm = NULL; jint jni_error; jclass java_class; jmethodID method_id; /* Setup the options list. */ options[0].optionString = "-Djava.class.path=."; options[0].extraInfo = NULL; /* Setup the vm_args structure. */ memset(&vm_args, 0, sizeof(vm_args)); vm_args.version = JNI_VERSION_1_2; vm_args.options = options; vm_args.nOptions = sizeof(options) / sizeof(options[0]); /* Create the Java Virtual Machine. */ jni_error = JNI_CreateJavaVM(&jvm, (void **) &env, &vm_args); if (jni_error < 0) { printf("ERROR: Unable to create JVM, (%i)\n", (int) jni_error); return(1); } /* Get the "Foo" class. */ java_class = (*env)->FindClass(env, "Foo"); if (java_class == NULL) { printf("error finding 'Foo' class\n"); return(1); } /* Get the "main" method ID. */ method_id = (*env)->GetStaticMethodID( env, java_class, "main", "([Ljava/lang/String;)V" ); if (method_id == NULL) { printf("error finding 'main' method\n"); return(1); } /* Call Foo::main(). */ (*env)->CallStaticVoidMethod( env, java_class, method_id, NULL /* args */ ); /* Destroy the VM. */ (*jvm)->DestroyJavaVM(jvm); /* Exit. */ argc = argc; argv = argv; return(0); } -- Tom Schutter (mailto:to...@pl...) Platte River Associates, Inc. (http://www.platte.com) |
From: Grzegorz B. P. <ga...@de...> - 2004-06-09 19:21:03
|
tag 253481 pending thanks On Wed, 2004-06-09 at 13:56, Kurt Roeckx wrote: > Package: sablevm > Version: 1.1.5-1 > Severity: serious > > It's depending on:"libsablevm1, libsablevm1 (= 1.1.5-1)". > libsamblevm1 in turn depends on: > "libsablevm-classlib1-java (>> 1.1.5), > libsablevm-native1 (>> 1.1.5)". > > Those versions of libsablevm-classlib1-java and > libsablevm-native1 still aren't available. Yes, I know. I have uploaded them along with sablevm packages, but unfortunatelly they got stuck in NEW queue and are awaiting ftpmaster's approval. That was last week, and processing of packages in NEW happens usually once a week, so I hope that the situation will be fixed before the weekend. There's not much I can do to help it, besides providing an unofficial archive that contains the packages that got stuck. Please see http://gadek.debian.net/debs There are packages for i386, ppc and sparc. I am very sorry for the inconvenience, but there's nothing I could do to prevent this situation or to help fixing it. It's all in ftpmaster's hands. Thanks for the report, Grzegorz B. Prokopski -- Grzegorz B. Prokopski <ga...@de...> Debian GNU/Linux http://www.debian.org SableVM - LGPL'ed Java VM http://www.sablevm.org Why SableVM ?!? http://devel.sablevm.org/wiki/Features |
From: Fabien R. <re...@ne...> - 2004-06-07 08:08:08
|
Grzegorz B. Prokopski wrote: >W liście z czw, 03-06-2004, godz. 08:18, Fabien Renaud pisze: > > >>I want to run a little class written with awt. >>I run sablevm with -v option and have this : >> >> > >Hi Fabian, > >Yes, I agree it's strange. Would you be able to show: >1. the complete code of your FirstAWT program >2. the full commandline you use to run it? > >I'd like to try it out and debug it deeper if the problem is >reproducible. > >Thank you for letting us know of your problem, > > Grzegorz B. Prokopski > > > The program works fine on my x86. Actually, that should _not_ work on my arm (I don´t have X11) but I´d like to have another error message. I´ve attached the source of FirstAWT.java Cheers, Fabien |
From: Grzegorz B. P. <ga...@de...> - 2004-06-04 21:48:10
|
W liście z czw, 03-06-2004, godz. 08:18, Fabian Renaud pisze: > I want to run a little class written with awt. > I run sablevm with -v option and have this : Hi Fabian, Yes, I agree it's strange. Would you be able to show: 1. the complete code of your FirstAWT program 2. the full commandline you use to run it? I'd like to try it out and debug it deeper if the problem is reproducible. Thank you for letting us know of your problem, Grzegorz B. Prokopski -- Grzegorz B. Prokopski <ga...@de...> Debian GNU/Linux http://www.debian.org SableVM - LGPLed JVM http://www.sablevm.org Why SableVM ?!? http://devel.sablevm.org/wiki/WhySableVM |
From: Fabian R. <re...@ne...> - 2004-06-03 12:18:26
|
Hello, I want to run a little class written with awt. I run sablevm with -v option and have this : ... ... *[verbose class: loading "FirstAWT"]* [verbose class: loading "java/awt/Frame"] [verbose class: loading "java/lang/ClassNotFoundException"] [verbose class: loading "java/io/File"] [verbose class: loading "gnu/java/io/PlatformHelper"] [verbose class: loading "java/util/Locale"] [verbose class: loading "java/lang/Character"] [verbose class: loading "java/util/zip/ZipFile"] [verbose class: loading "java/util/zip/ZipConstants"] [verbose class: loading "java/net/URL"] [verbose class: loading "java/net/URLStreamHandler"] [verbose class: loading "gnu/java/net/protocol/file/Handler"] [verbose class: loading "sun/net/www/protocol/file/Handler"] [verbose class: loading "java/net/MalformedURLException"] [verbose class: loading "java/io/IOException"] [verbose class: creating "[Ljava/lang/StackTraceElement;"] [verbose class: loading "java/lang/Throwable$StaticData"] [verbose class: loading "java/lang/Integer"] [verbose class: loading "java/lang/Number"] *java.lang.ClassNotFoundException: FirstAWT* How is it possible to do not find the class whereas it´s loaded ? Other classes (without GUI) work. Where can come from the problem ? Cheers, Fabien |
From: Karl T. K. <ka...@ge...> - 2004-06-03 01:08:04
|
Hi gang! I've added the SableVM (http://sablevm.org) to Gentoo as an alternative JVM= =2E=20 For now, I've only tested it on x86, but as it's an interpreter, it should be easily recompiled on our other arches as well (ppc, sparc, amd64, ia64, alpha, ...). Additionally, it may be a very nice jumpstart for getting Java to run on=20 stranger platforms (SuperH, when we get there) that are being worked on. Bugs pertaining to the Gentoo packaging should as usual go to bugs.gentoo.o= rg, assigned to ja...@ge...; I'll try to forward any interesting bugs upstr= eam to the SableVM people. Kind regards, Karl T |
From: Etienne G. <gagnon.etienne_m@UQAM.CA> - 2004-05-31 05:43:11
|
The developers of the SableVM Project are proud to announce the official release of SableVM 1.1.5. SableVM is a liberally licensed Free Java virtual machine. See the "About SableVM" section below for more informations about SableVM. Here is a list of the most important changes and new features. In this version, we: - Synchronized sablevm-classpath with the latest GNU Classpath CVS as of May 29, 2004. - Improved the support for Ant 1.6. - Switched to libtool handling to find the right library suffixes. This helps some platforms like OpenBSD and Cygwin. - Fixed a corner case problem with class loading. - Made some other small bug fixes. === ABOUT SABLEVM === SableVM is a robust, extremely portable, efficient, and specifications-compliant Java Virtual Machine that aims to be easy to maintain and to extend. It features a state-of-the-art and efficient interpreter engine. Its source code is very accessible and easy to understand. It also has many robustness features that have been the object of careful design. SableVM is a clean-room implementation of the publicly available specifications. SableVM is licensed under the terms of the GNU Lesser General Public License (LGPL). It also uses a modified version of GNU Classpath called sablevm-classpath which is licensed under the terms of the GNU General Public License (GPL) with a linking exception. The license of SableVM (LGPL) was specifically chosen as to maximize your ability to legally link and run popular applications, such as Eclipse (http://eclipse.org) and Ant (http://ant.apache.org), which are licensed in ways which might conflict with the terms of the GNU General Public License (GPL). See the the following link for more information: http://devel.sablevm.org/wiki/LicenseFAQ The SableVM web site is located at: http://sablevm.org === INSTALLATION === SableVM is available to download from the following locations: - http://sourceforge.net/project/showfiles.php?group_id=5523 - (alternate) http://devel.sablevm.org/download You must download both: - sablevm-1.1.5.tar.gz - sablevm-classpath-1.1.5.tar.gz. See the INSTALL file included in the sablevm-1.1.5.tar.gz archive for build environment requirements and installation procedures. We make frequent releases, but we also provide daily snapshots of our "staging" development branch at: http://devel.sablevm.org/shot Note that the code of the staging branch is more robust than the code usually found in the CVS trunk of many other free software projects. The staging branch only contains code that has been first tested by developers within their own sandbox. A detailed explanation of the different development branches is available at: http://devel.sablevm.org/wiki/DevelopmentBranches === NOTES === We appreciate your feedback. Please feel invited to contact us. See: http://devel.sablevm.org/wiki/MailingLists You can also join us in real-time on the #sablevm IRC channel on irc.sablevm.org (alias: irc.freenode.net, irc.debian.org). === BINARY PACKAGES === Binary packages of new SableVM versions are usually available in the GNU/Linux Debian "unstable" distribution shortly after the official release. These packages normally migrate to the "testing" distribution a few weeks later. Other GNU/Linux distributions and other operating systems (*BSD, etc.) might also provide binary packages. === DEVELOPMENT OF SABLEVM AND CLASSPATH === We invite you to visit our "Developer Portal" at: http://devel.sablevm.org/ This site contains the very latest news and other informations about SableVM development. For people who want to develop GNU Classpath in a comfortable environment, we provide: * Subversion accounts We provide accounts in our Subversion repository for developers who want to comfortably hack on GNU Classpath. If you want to join, simply send your desired nickname and the *public* part of your SSH2 DSA key from your ~/.ssh/ to sab...@li.... Subversion is an improved CVS than takes approximately 10 minutes to learn for a person familiar with CVS. * Very frequent updates from GNU Classpath CVS The "staging" development branch of sablevm-classpath is synchronized with the GNU Classpath CVS trunk every few days. Note that the code in sablevm-classpath is almost identical to that of the GNU Classpath CVS trunk. The differences are very small, and mostly restricted to a few virtual machine dependent core classes like java.lang.Class. * Private sandbox for each developer Each developer is given full access to his own "sandbox" where he can have several private development branches (as they're nearly 0-cost to create in Subversion). So each developer's development doesn't interfere with other developers. Each developer can also create private "tags" on any code in Subversion. These tags are publicly available via the Web interface at: http://devel.sablevm.org/svn/developers/ * No paperwork required We accept contributions without asking for copyright assignment. In other words, you are not required to go through the Free Software Foundation paperwork and waive your copyright. We leave this decision to your discretion. We do accept that developers assign the copyright on their contributions to the Free Software Foundation, if they are willing to do so. Our contribution policy is available at: http://devel.sablevm.org/svn/repository/sablevm/branches/staging/doc/contribution_policy.txt === Additional Information === You will find a wealth of additional information in SableVM's wiki pages at: http://devel.sablevm.org/wiki/ === CONCLUSION === We wish you great fun using SableVM. Enjoy! The SableVM Project developers |
From: Etienne G. <gag...@uq...> - 2004-05-16 03:36:39
|
The developers of the SableVM Project are proud to announce the official release of SableVM 1.1.4. SableVM is a liberally licensed Free Java Virtual Machine. See the "About SableVM" section below for more informations about SableVM. The most important changes and features of the 1.1.4 version include: - Updated sablevm-classpath is with the recent GNU Classpath 0.09 release with later GNU Classpath CVS changes as of May 4, 2004. - Improved support for AWT and Swing. - Eliminated the dependency lt_dlopen(NULL) which seem broken on some platforms such as Cygwin and some *BSD. - Switched to new, complete implementation of VMProcess/Process from GNU Classpath instead of using our own previous partial implementation. - Added x86_64 (AMD64) support to the already supported 8 other architectures of Debian GNU/Linux (alpha, hppa, i386, ia64, m68k, powerpc, s390, sparc). The support for the remaining mips and mipsel architectures of Debian is apparently implemented but it has not yet been confirmed. - Improved autodetection of build parameters on non-GNU/Linux systems. This includes selection of dynamic libraries, availability of m4 preprocessor and auto-disabling "signals for exceptions" on platforms that don't seem to support signals. - Made sure that the m4 preprocessor will not be needed to build from sablevm-*.tar.gz distribution files. m4 is only required to build directly from a snapshot of the Subversion repository. - Updated and improved manual pages. - Made some other little improvements and applied a few bug fixes. === ABOUT SABLEVM === SableVM is a robust, extremely portable, efficient, and specifications-compliant Java Virtual Machine that aims to be easy to maintain and to extend. It features a state-of-the-art, efficient interpreter engine. Its source code is very accessible and easy to understand, and has many robustness features that have been the object of careful design. SableVM is licensed under the terms of the GNU Lesser General Public License (LGPL). It also uses a modified version of GNU Classpath called sablevm-classpath which is licensed under the terms of the GNU General Public License with a linking exception. See http://www.sablevm.org/ for more details. === INSTALLATION === SableVM is available to download from: http://sourceforge.net/project/showfiles.php?group_id=5523&release_id=238633 You must download both: - sablevm-1.1.4.tar.gz - sablevm-classpath-1.1.4.tar.gz. See the INSTALL file included in the sablevm-1.1.4.tar.gz archive for build environment requirements and installation procedures. We plan to make frequent releases, but please note that we also have daily snapshots of our "staging" development tree readily available at: http://devel.sablevm.org/shot Note that the "staging" code is much more robust than the usual CVS trunk of many other free software projects. The "staging" tree only contains code that has been first tested by developers within their own "sandbox" development tree. See the following for details: http://devel.sablevm.org/wiki/DevelopmentBranches === NOTES === We appreciate your feedback. Please feel invited to mail us. See: http://devel.sablevm.org/wiki/MailingLists You can also join us in real-time on the #sablevm IRC channel on irc.sablevm.org (alias: irc.freenode.net). === BINARY PACKAGES === Binary packages of new SableVM versions are usually available in the GNU/Linux Debian "unstable" distribution shortly after the official release. These packages should migrate to the "testing" distribution in a few weeks. We are looking for people willing to package SableVM for other GNU/Linux distributions (and operating systems). We have a preliminary sablevm.spec (for the RPM package manager). We would really like to get LSB-compatible RPM packages. Such packages could be built on a Debian system (with the help of LSB development packages). If you are interested to get involved, we will be glad to help you. === CONCLUSION === We wish you great fun using SableVM. Enjoy! The SableVM Project developers |
From: <ant...@ya...> - 2004-05-07 10:39:29
|
Hello, > In fact, Melanie Lord got SableVM to work under Cygwin. > > Her "raw" work is in he sandbox: > > svn ls svn://svn.sablevm.org/developers/mlord/sandbox Brilliant. Will give that a try. Thanks. > I have incorporated, latelym the most important part of it into the > > staging branch (i.e. not using lt_dlopen(NULL) for internal VM calls), > > but there were some additional minor changes required to get sablevm > > and sablevm-classpath to work on cygwin. > > The thing is, all is left to do is to integrate these changes > > "cleanly" in sablevm[-classpath], so that we don't break the build on > > other platforms. Thats great news! Antony ____________________________________________________________ Yahoo! Messenger - Communicate instantly..."Ping" your friends today! Download Messenger Now http://uk.messenger.yahoo.com/download/index.html |
From: Etienne G. <gag...@uq...> - 2004-05-06 23:37:57
|
In fact, Melanie Lord got SableVM to work under Cygwin. Her "raw" work is in he sandbox: svn ls svn://svn.sablevm.org/developers/mlord/sandbox I have incorporated, latelym the most important part of it into the staging branch (i.e. not using lt_dlopen(NULL) for internal VM calls), but there were some additional minor changes required to get sablevm and sablevm-classpath to work on cygwin. The thing is, all is left to do is to integrate these changes "cleanly" in sablevm[-classpath], so that we don't break the build on other platforms. Etienne On Wed, May 05, 2004 at 06:24:25PM -0400, David B?langer wrote: > > Hi, > > SableVM 1.1.3 does not have Cygwin support... > > Some code necessary to get it work on Cygwin has been merged in the > development version (called the staging version). I am not sure if the > code is sufficient yet to have SableVM compile out-of-the-box on that > platform but it is one step closer. > > So, I would recommend that you obtain SableVM development tree (staging > branch): > http://devel.sablevm.org/wiki/Getting > Note that this will require to have subversion as well as the > automake/autoconf tools. > You can also get a daily snapshot here: http://devel.sablevm.org/shot/ > > We are working improving the configuration to autodetect if -lrt is > needed. Meanwhile, with a staging version, it can be fixed by removing > -lrt in src/libsablevm/Makefile.am and running ./autogen.sh then > ./configure etc. > > > David > > On Wed, May 05, 2004 at 09:59:16PM +0100, Antony Baxter wrote: > > Hi, > > > > I'm trying to compile SableVM 1.1.3 on Cygwin. I got > > the > > sablevm-classpath-1.1.3 package to compile ok with > > only minimal changes, > > but am having problems compiling sablevm-1.1.3. It > > compiles fine up to: > > > > gcc -g -O2 -Wall -fno-gcse -Wno-unused > > -fno-strict-aliasing -o > > sablevm.exe sablevm.o ../libsablevm/.libs/libsablevm.a > > -lpthread > > /usr/lib/./libffi.a /usr/lib/libltdl.dll.a -lrt > > /usr/lib/libpopt.dll.a > > > > which fails with: > > > > sablevm.o(.text+0x1d97): In function `main': > > /home/jon/src/sable/sablevm-1.1.3/src/sablevm/sablevm.c:1351: > > undefined > > reference to `_JNI_CreateJavaVM' > > Info: resolving _poptHelpOptions by linking to > > __imp__poptHelpOptions > > (auto-import) > > collect2: ld returned 1 exit status > > <thread /usr/lib/./libffi.a /usr/lib/libltdl.dll.a > > -lrt > > /usr/lib/libpopt.dll.a > > /usr/lib/gcc-lib/i686-pc-cygwin/3.3.1/../../../../i686-pc-cygwin/bin/ld: > > > > cannot find -lrt > > collect2: ld returned 1 exit status > > > > I'm using Cygwin 1.5.9-1 & gcc 3.3.1. Anyone got any > > ideas? > > > > Thanks, > > > > Antony > > > > > > > > > > > > > > ____________________________________________________________ > > Yahoo! Messenger - Communicate instantly..."Ping" > > your friends today! Download Messenger Now > > http://uk.messenger.yahoo.com/download/index.html > > > > > > ------------------------------------------------------- > > This SF.Net email is sponsored by Sleepycat Software > > Learn developer strategies Cisco, Motorola, Ericsson & Lucent use to > > deliver higher performing products faster, at low TCO. > > http://www.sleepycat.com/telcomwpreg.php?From=osdnemail3 > > _______________________________________________ > > Sablevm-user mailing list > > Sab...@li... > > https://lists.sourceforge.net/lists/listinfo/sablevm-user > > -- > > --- > > David B?langer > Graduate Student > School of Computer Science > McGill University > Office: MC226 > > Web page: http://www.cs.mcgill.ca/~dbelan2/ > Public key: http://www.cs.mcgill.ca/~dbelan2/public_key.txt > > > > ------------------------------------------------------- > This SF.Net email is sponsored by Sleepycat Software > Learn developer strategies Cisco, Motorola, Ericsson & Lucent use to > deliver higher performing products faster, at low TCO. > http://www.sleepycat.com/telcomwpreg.php?From=osdnemail3 > _______________________________________________ > Sablevm-user mailing list > Sab...@li... > https://lists.sourceforge.net/lists/listinfo/sablevm-user -- Etienne M. Gagnon, Ph.D. http://www.info.uqam.ca/~egagnon/ SableVM: http://www.sablevm.org/ SableCC: http://www.sablecc.org/ |
From: David <db...@cs...> - 2004-05-05 22:24:29
|
Hi, SableVM 1.1.3 does not have Cygwin support... Some code necessary to get it work on Cygwin has been merged in the development version (called the staging version). I am not sure if the code is sufficient yet to have SableVM compile out-of-the-box on that platform but it is one step closer. So, I would recommend that you obtain SableVM development tree (staging branch): http://devel.sablevm.org/wiki/Getting Note that this will require to have subversion as well as the automake/autoconf tools. You can also get a daily snapshot here: http://devel.sablevm.org/shot/ We are working improving the configuration to autodetect if -lrt is needed. Meanwhile, with a staging version, it can be fixed by removing -lrt in src/libsablevm/Makefile.am and running ./autogen.sh then ./configure etc. David On Wed, May 05, 2004 at 09:59:16PM +0100, Antony Baxter wrote: > Hi, >=20 > I'm trying to compile SableVM 1.1.3 on Cygwin. I got > the=20 > sablevm-classpath-1.1.3 package to compile ok with > only minimal changes,=20 > but am having problems compiling sablevm-1.1.3. It > compiles fine up to: >=20 > gcc -g -O2 -Wall -fno-gcse -Wno-unused > -fno-strict-aliasing -o=20 > sablevm.exe sablevm.o ../libsablevm/.libs/libsablevm.a > -lpthread=20 > /usr/lib/./libffi.a /usr/lib/libltdl.dll.a -lrt > /usr/lib/libpopt.dll.a >=20 > which fails with: >=20 > sablevm.o(.text+0x1d97): In function `main': > /home/jon/src/sable/sablevm-1.1.3/src/sablevm/sablevm.c:1351: > undefined=20 > reference to `_JNI_CreateJavaVM' > Info: resolving _poptHelpOptions by linking to > __imp__poptHelpOptions=20 > (auto-import) > collect2: ld returned 1 exit status > <thread /usr/lib/./libffi.a /usr/lib/libltdl.dll.a > -lrt=20 > /usr/lib/libpopt.dll.a > /usr/lib/gcc-lib/i686-pc-cygwin/3.3.1/../../../../i686-pc-cygwin/bin/ld= : >=20 > cannot find -lrt > collect2: ld returned 1 exit status >=20 > I'm using Cygwin 1.5.9-1 & gcc 3.3.1. Anyone got any > ideas? >=20 > Thanks, >=20 > Antony >=20 >=20 >=20 > =09 > =09 > =09 > ____________________________________________________________ > Yahoo! Messenger - Communicate instantly..."Ping"=20 > your friends today! Download Messenger Now=20 > http://uk.messenger.yahoo.com/download/index.html >=20 >=20 > ------------------------------------------------------- > This SF.Net email is sponsored by Sleepycat Software > Learn developer strategies Cisco, Motorola, Ericsson & Lucent use to=20 > deliver higher performing products faster, at low TCO. > http://www.sleepycat.com/telcomwpreg.php?From=3Dosdnemail3 > _______________________________________________ > Sablevm-user mailing list > Sab...@li... > https://lists.sourceforge.net/lists/listinfo/sablevm-user --=20 --- David B=E9langer Graduate Student School of Computer Science McGill University Office: MC226 Web page: http://www.cs.mcgill.ca/~dbelan2/ Public key: http://www.cs.mcgill.ca/~dbelan2/public_key.txt |
From: <ant...@ya...> - 2004-05-05 20:59:23
|
Hi, I'm trying to compile SableVM 1.1.3 on Cygwin. I got the sablevm-classpath-1.1.3 package to compile ok with only minimal changes, but am having problems compiling sablevm-1.1.3. It compiles fine up to: gcc -g -O2 -Wall -fno-gcse -Wno-unused -fno-strict-aliasing -o sablevm.exe sablevm.o ../libsablevm/.libs/libsablevm.a -lpthread /usr/lib/./libffi.a /usr/lib/libltdl.dll.a -lrt /usr/lib/libpopt.dll.a which fails with: sablevm.o(.text+0x1d97): In function `main': /home/jon/src/sable/sablevm-1.1.3/src/sablevm/sablevm.c:1351: undefined reference to `_JNI_CreateJavaVM' Info: resolving _poptHelpOptions by linking to __imp__poptHelpOptions (auto-import) collect2: ld returned 1 exit status <thread /usr/lib/./libffi.a /usr/lib/libltdl.dll.a -lrt /usr/lib/libpopt.dll.a /usr/lib/gcc-lib/i686-pc-cygwin/3.3.1/../../../../i686-pc-cygwin/bin/ld: cannot find -lrt collect2: ld returned 1 exit status I'm using Cygwin 1.5.9-1 & gcc 3.3.1. Anyone got any ideas? Thanks, Antony ____________________________________________________________ Yahoo! Messenger - Communicate instantly..."Ping" your friends today! Download Messenger Now http://uk.messenger.yahoo.com/download/index.html |
From: Grzegorz B. P. <ga...@de...> - 2004-04-22 04:53:18
|
On (20/04/04 15:17), David B?langer wrote: > On Tue, Apr 20, 2004 at 04:20:23PM +0200, Fabien Renaud wrote: > > Hello, > > > > I?d like to know why there is a graphical difference between kaffe and > > sableVM when I run the Calc kaffe example ( with awt ) And why the > > application is so pretty with SableVM whereas it?s so awful with kaffe ( > > big red rectangle) > > > > Hi, > > The prettiness is done by the GNU Classpath (CP) library. true (and by GTK+ ;) > Both SableVM and Kaffe use CP [*] [...] NOT TRUE! And I see this statment much too often. Kaffe's classpath is NOT GNU Classpath. GCJ's classpath is NOT GNU Classpath. Each of these projects has its own classpath containing more or less code from GNU CP. [**] Why is this distinction important? Just to get on one of examples I saw. While running ANT 1.5 it creates .jar file using ZIP classes. Now, last time I tried it - it did work w/ Kaffe (and I can suspect it also worked w/ GCJ) but it did not with SableVM. Was that SableVM's fault? NO! The problem that GNU CP zip compression implementation was getting into an infinite loop! So while I *strongly* do NOT want to point to GNU CP hackers as the guilty ones :) I also just can't bear it when people say that "Kaffe, GCJ and SableVM should be able to run pretty much the same apps because they all use GNU Classpath" Agrh! This is NOT true! (unless you accept half-truths as truths) Thank you for your attention, Grzegorz B. Prokopski [*] From the context I assumed you meant GNU CP. [**] Obviously, we've also modified GNU Classpath to make it work with SableVM. But our modifications are truly minimal, unlike the differences between GNU Classpath and classpaths used by Kaffe and GCJ. This is partially because ex.: - GCJ has a lot of GCJ-specific code, which is not useful to other, normal VMs - Kaffe is in the process of switching to GNU CP, but even if it gets there - I don't think we'll be able to say that it "just uses GNU CP", because Kaffe hackers also mix in their classlib a lot of software from different sources. -- Grzegorz B. Prokopski <ga...@de...> Debian GNU/Linux http://www.debian.org SableVM - LGPLed JVM http://www.sablevm.org Why SableVM ?!? http://devel.sablevm.org/wiki/WhySableVM |
From: Dalibor T. <ro...@ka...> - 2004-04-21 09:42:34
|
Fabien Renaud <renaud <at> nentec.de> writes: > > Hello, > > I´d like to know why there is a graphical difference between kaffe and > sableVM when I run the Calc kaffe example ( with awt ) And why the > application is so pretty with SableVM whereas it´s so awful with kaffe ( > big red rectangle) Salut, Kaffe comes with its own, peerless AWT implementations for Xlib and Qt(2/3/embedded). SableVM comes with the slick, gtk based, peer-ish (whatever the proper adjective is), AWT implementation from GNU Classpath. cheers, dalibor topic |
From: David <db...@cs...> - 2004-04-20 19:17:24
|
On Tue, Apr 20, 2004 at 04:20:23PM +0200, Fabien Renaud wrote: > Hello, >=20 > I=B4d like to know why there is a graphical difference between kaffe an= d=20 > sableVM when I run the Calc kaffe example ( with awt ) And why the=20 > application is so pretty with SableVM whereas it=B4s so awful with kaff= e (=20 > big red rectangle) >=20 Hi, The prettiness is done by the GNU Classpath (CP) library. Both SableVM and Kaffe use CP but SableVM may possibly use a more recent version of CP. It actually depend on which version of Kaffe and SableVM you are using. If you are using SableVM 1.1.3 then it is using a snapshot of CP taken on Monday March 29 that is more recent than the latest CP release (0.08). Kaffe may be using an older version of CP (possibly 0.08), I don't know. In the long term, there will not be much=20 of a difference on the pretty side. It may happens that SableVM just have a set of recent changes that affect the appearence that Kaffe does not yet included. David --- David B=E9langer Graduate Student School of Computer Science McGill University Office: MC226 Web page: http://www.cs.mcgill.ca/~dbelan2/ Public key: http://www.cs.mcgill.ca/~dbelan2/public_key.txt |
From: Fabien R. <re...@ne...> - 2004-04-20 14:20:35
|
Hello, I´d like to know why there is a graphical difference between kaffe and sableVM when I run the Calc kaffe example ( with awt ) And why the application is so pretty with SableVM whereas it´s so awful with kaffe ( big red rectangle) Fabien Renaud |
From: Grzegorz B. P. <ga...@de...> - 2004-04-20 04:41:56
|
On (18/04/04 23:10), Grzegorz B. Prokopski wrote: > In comparision with JITs SableVM's interpreter achieved ex. from 0.17 to > 0.88 performance of JikesRVM (for biger, real-life applications like Soot > and SableCC SableVM achieved 0.88 and 0.75 performance of JikesRVM!). I've unconsciously overlooked an important thing: this was comparison with JikesRVM *baseline* compiler, not the optimizing one! :) Sorry for confusion. But still, this is comparison betwen an interpreter and a JIT! (though a simple one) GBP -- Grzegorz B. Prokopski <ga...@de...> Debian GNU/Linux http://www.debian.org SableVM - LGPLed JVM http://www.sablevm.org Why SableVM ?!? http://devel.sablevm.org/wiki/WhySableVM |
From: Dalibor T. <ro...@ka...> - 2004-04-19 08:31:10
|
Grzegorz B. Prokopski <gadek <at> debian.org> writes: > They show, that that Kaffe's interpreter is 3.5 to 7 times slower than > SableVM. At the same time SableVM's performance was very near Sun's JDK > interpteter, which (as informed sources say) is partially written in > assembly (SableVM is pure C). That's the 'normal', naive intepreter in kaffe, as far as I can tell from the paper. There is a threaded-interpreter patch for kaffe here: http://www.complang.tuwien.ac.at/java/kaffe-threaded/ but it hasn't been merged in into the kaffe sources yet, and the internal APIs have changed since the version the patch is against, so it probably won't apply cleanly. Jim Huang is looking into merging it in into kaffe's CVS, but it's not there yet. The web site mentions an up to 3 fold increase in performance over the naive interpreter using a possibly patent encumbered technique. I've got no idea whether the mentioned patent really holds water or not, I assume Etienne might know more about it. In any case, since Etienne's benchmarks show up to 7 times better results for SableVM's interpreter, chances are that even with the threaded interpreter patch SableVM's implementation would outperform Kaffe's interpreter. cheers, dalibor topic |
From: Grzegorz B. P. <ga...@de...> - 2004-04-19 04:52:11
|
On (18/04/04 11:33), Alan Littleford wrote: > 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) ? It will surely be much faster. On the 118th page of http://www.sable.mcgill.ca/publications/thesis/phd-gagnon/sable-thesis-2002-phd-gagnon.pdf you'll find results for a number of benchmarks and applications. They show, that that Kaffe's interpreter is 3.5 to 7 times slower than SableVM. At the same time SableVM's performance was very near Sun's JDK interpteter, which (as informed sources say) is partially written in assembly (SableVM is pure C). In comparision with JITs SableVM's interpreter achieved ex. from 0.17 to 0.88 performance of JikesRVM (for biger, real-life applications like Soot and SableCC SableVM achieved 0.88 and 0.75 performance of JikesRVM!). We all know that there are lies, big lies and benchmarks, but this should give you some picture of what to expect. HTH Grzegorz B. Prokopski PS: All these results were for "inlined" engine, which is the fastest one. On embedded systems, with RAM memory constraints, you might want to use "direct" instead, so the performance can be slightly degraded. See page 40 of the above PDF for details. -- Grzegorz B. Prokopski <ga...@de...> Debian GNU/Linux http://www.debian.org SableVM - LGPLed JVM http://www.sablevm.org Why SableVM ?!? http://devel.sablevm.org/wiki/WhySableVM |
From: Etienne G. <gag...@uq...> - 2004-04-18 22:01:17
|
There's a pre-compiled Debian package. Running it as: $ sablevm --property=sablevm.heap.size.min=1024 --property=sablevm.heap.size.increment=1024 --property=sablevm.classloader.heap.size.min=1024 --property=sablevm.classloader.heap.size.increment=1024 --property=sablevm.stack.size.min=1024 --property=sablevm.stack.size.increment=1024 -Y HelloWorld then ^z (quickly!!!) to send to sleep then ps to retrieve process id then cat /proc/16729/status gives: State: T (stopped) Tgid: 16729 Pid: 16729 PPid: 16711 TracerPid: 0 Uid: 1000 1000 1000 1000 <egagnon> Gid: 1000 1000 1000 1000 <egagnon> FDSize: 256 <egagnon> Groups: 1000 6 24 25 29 40 44 60 100 101 1002 1011 1016 1019 1021 <egagnon> VmSize: 3836 kB <egagnon> VmLck: 0 kB <egagnon> VmRSS: 2100 kB <egagnon> VmData: 1600 kB <egagnon> VmStk: 20 kB <egagnon> VmExe: 12 kB <egagnon> VmLib: 2120 kB <egagnon> SigPnd: 0000000000000000 <egagnon> SigBlk: 0000000080000000 <egagnon> SigIgn: 0000000000000000 <egagnon> SigCgt: 0000000380000684 <egagnon> CapInh: 0000000000000000 <egagnon> CapPrm: 0000000000000000 <egagnon> CapEff: 0000000000000000 So, it uses 1.6M of non-shared memory. Now, this is a stock -O2 compiled sablevm, with an inlined interpreter engine (the biggest one in size). So, you might want to further investigate. :-) Etienne. Alan Littleford wrote: > Etienne, > > I'd be more than happy to do that, but if you had some basic ideas as to size it would be really useful in helping me decide whether it is worth it or not (sorry to sound lazy but I have a full plate here). > > Kaffe (or rather Kangaroo - a CLDC'ised version) seems to need at footprint of 2 megs to get anything done. Do you think Sable could come in under that ?? > > Tnx > Alan > > > -----Original Message----- > From: Etienne Gagnon [mailto:gag...@uq...] > Sent: Sunday, April 18, 2004 12:23 PM > To: Alan Littleford > Cc: sab...@li... > Subject: Re: [Sablevm-user] hello > > > 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/ |
From: Alan L. <al...@in...> - 2004-04-18 20:07:38
|
Etienne, I'd be more than happy to do that, but if you had some basic ideas as = to size it would be really useful in helping me decide whether it is = worth it or not (sorry to sound lazy but I have a full plate here). Kaffe (or rather Kangaroo - a CLDC'ised version) seems to need at = footprint of 2 megs to get anything done. Do you think Sable could come = in under that ?? Tnx Alan -----Original Message----- From: Etienne Gagnon [mailto:gag...@uq...]=20 Sent: Sunday, April 18, 2004 12:23 PM To: Alan Littleford Cc: sab...@li... Subject: Re: [Sablevm-user] hello 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=3Dsablevm.heap.size.min=3D1024 = --property=3Dsablevm.heap.size.increment=3D1024 ... 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/libs= ablevm/vm_args.m4.c Looking forward to see your results! Etienne Alan Littleford wrote: > Etienne, >=20 > would you have any hard numbers for a 'reasonable' system? >=20 > We are looking for an embeddable JVM ourselves. Kaffe requires a heap=20 > size of > 1 meg just to do a 'hello world'. How would Sable compare = against that? (Better I hope!). >=20 > Do you happen to know if anyone has tried to 'cldc-ise' Sable and what = > kind of footprint that might result in ?? >=20 > Performance-wise do you have a feel for how Sable might compare=20 > against the threaded-int version of Kaffe (which I guess just about=20 > sets our minimum acceptable level of performance) ? >=20 > Thanks >=20 > Alan >=20 >=20 >=20 >=20 > -----Original Message----- > From: sab...@li...=20 > [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 >=20 >=20 > Vladimir Levin wrote: >=20 >>I am looking at using Java for embedded development. I am wondering if = >>SableVM is suitable for embedded development? How does it compare to=20 >>GCJ? >=20 >=20 > SableVM's runtime memory footprint can be pretty low, I guess. You=20 > can setup the initial heap size to 0 byte, and the increment to 1=20 > byte, so that SableVM will tend to have as small a heap as possible=20 > (somewhat). >=20 > Also, you can compile it with -Os, to optimize size. [Many of the m4=20 > macros in place to add robustness can be easily modified to expand to=20 > even smaller code.] >=20 > 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). >=20 > SableVM is a "traditional" kind of JVM; it does no ahead of time=20 > compiling, not runtime compilation. It can result in smaller code. =20 > But, it will not compete in speed with highly optimized code, or=20 > adaptive optimization systems such as JikesRVM. >=20 > Etienne >=20 --=20 Etienne M. Gagnon, Ph.D. http://www.info.uqam.ca/~egagnon/ SableVM: http://www.sablevm.org/ SableCC: http://www.sablecc.org/ --- Incoming mail is certified Virus Free. Checked by AVG anti-virus system (http://www.grisoft.com). Version: 6.0.659 / Virus Database: 423 - Release Date: 4/15/2004 =20 --- Outgoing mail is certified Virus Free. Checked by AVG anti-virus system (http://www.grisoft.com). Version: 6.0.659 / Virus Database: 423 - Release Date: 4/15/2004 =20 |
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/ |
From: Alan L. <al...@in...> - 2004-04-18 18:33:16
|
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!).=20 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 --=20 Etienne M. Gagnon, Ph.D. http://www.info.uqam.ca/~egagnon/ SableVM: http://www.sablevm.org/ SableCC: http://www.sablecc.org/ ------------------------------------------------------- This SF.Net email is sponsored by: IBM Linux Tutorials Free Linux tutorial presented by Daniel Robbins, President and CEO of = GenToo technologies. Learn everything from fundamentals to system = administration.http://ads.osdn.com/?ad_id=3D1470&alloc_id=3D3638&op=3Dcli= ck _______________________________________________ Sablevm-user mailing list Sab...@li... https://lists.sourceforge.net/lists/listinfo/sablevm-user --- Incoming mail is certified Virus Free. Checked by AVG anti-virus system (http://www.grisoft.com). Version: 6.0.659 / Virus Database: 423 - Release Date: 4/15/2004 =20 --- Outgoing mail is certified Virus Free. Checked by AVG anti-virus system (http://www.grisoft.com). Version: 6.0.659 / Virus Database: 423 - Release Date: 4/15/2004 =20 |
From: Etienne G. <gag...@uq...> - 2004-04-18 17:37:07
|
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/ |
From: Vladimir L. <vla...@wr...> - 2004-04-15 23:05:17
|
Hi, 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? Thanks in advance, Vlad |