Re: Re: Re: Re: Kaffe GC performance, Boehm GC issues
Dalibor Topic <[email protected]>
| Newsgroups | gmane.comp.java.vm.kaffe.general |
|---|---|
| Message-ID | <[email protected]> |
Kiyo Inaba wrote: > Hi, > >> After submitting several archived tests, I found snap 060803 >> (whose ChangeLog head is "2006-07-27 Guilhem Lavaux <[email protected]>") >> works fine with Boehm GC on i386/linux. I will try to use this to test >> whether arm version of Boehm GC works fine. > > I found it can be extended until major classpath resync on Jan of > 2007 if I revert the mod for 'kaffe/kaffevm/baseClasses.c'. The change > made in 'baseClasses.c' (v 1.76) is reorder the invocation of > initialization (initializeSecurity and initThreads). I have no clear > idea whether this reorder is really needed or not, but I guess this > modification should be reverted. It was needed to make Classpath's java.util.zip implementation work. The commit was 2006-08-09 Dalibor Topic <[email protected]> Added --disable-native-zip option, which allows to use GNU Classpath's zip instead of Kaffe's and fixes #11. In addition, fixed #53 along the way. [snip] * kaffe/kaffevm/baseClasses.c (initialiseKaffe) Initialise threads before initialising security. Security code can end up calling arbitrary java code that tries to access thread local variables, for example. [snip] Basically, during the initialization of security code, the Classpath zip implementation ends up triggering use of thread local variables, and that requires that the threading system is already initialized for it to work. > On the other hand, snap 060803 can not be compiled on arm/linux because > of 'pthread_support.o' does not contain any external symbols and linking > reports several 'undefined symbol' errors. I guess this is because of > some (tricky) 'ifdef' in boehm gc package, but I did not found a way > to fix. Others tackling this is very welcome. My current results with boehm-gc are a bit across the map (i386-linux, boehm-gc 6.8, different compilers, CVS head). grep tests build-kaffe-*/check.log | grep 149 | grep boehm build-kaffe-gcc-3.3-intrp-unix-pthreads-boehm-gc/check.log:1 of 149 tests failed build-kaffe-gcc-3.3-jit3-unix-pthreads-boehm-gc/check.log:1 of 149 tests failed build-kaffe-gcc-3.3-jit-unix-pthreads-boehm-gc/check.log:2 of 149 tests failed build-kaffe-gcc-3.4-intrp-unix-pthreads-boehm-gc/check.log:3 of 149 tests failed build-kaffe-gcc-3.4-jit3-unix-pthreads-boehm-gc/check.log:All 149 tests behaved as expected (2 expected failures) build-kaffe-gcc-3.4-jit-unix-pthreads-boehm-gc/check.log:1 of 149 tests failed build-kaffe-gcc-4.1-intrp-unix-pthreads-boehm-gc/check.log:1 of 149 tests failed build-kaffe-gcc-4.1-jit3-unix-pthreads-boehm-gc/check.log:1 of 149 tests failed build-kaffe-gcc-4.1-jit-unix-pthreads-boehm-gc/check.log:2 of 149 tests failed build-kaffe-gcc-4.2-intrp-unix-pthreads-boehm-gc/check.log:1 of 149 tests failed build-kaffe-gcc-4.2-jit3-unix-pthreads-boehm-gc/check.log:1 of 149 tests failed build-kaffe-gcc-4.2-jit-unix-pthreads-boehm-gc/check.log:2 of 149 tests failed cheers, dalibor topic