Re: [drlvm][design] class unloading: Secondary root set

2006-11-15 Thread Robin Garner
, served through vtable marks). Robin Garner wrote: My proposal doesn't require steps (2) although VM-ClassLaoder references are weak, and (5), because the trace from the vtable roots is no different fromthe standard GC trace. Okay, It looks like you found a way to avoid repetitive retracing from

[drlvm] Re: [design] Class unloading: false sharing of vtable marks

2006-11-14 Thread Robin Garner
proposals at http://wiki.apache.org/harmony/ClassUnloading I am starting new discussion because mailing list is a better means for discussion than Wiki. After we come to conclusion, I will log it to the wiki page. *) -- Robin Garner Dept. of Computer Science Australian National University http

Re: [design] class unloading: Secondary root set

2006-11-14 Thread Robin Garner
- if you agree with my refinements, feel free to merge them. -- Robin Garner Dept. of Computer Science Australian National University http://cs.anu.edu.au/people/Robin.Garner/

Re: [drlvm][classlib] DaCapo benchmark regressions

2006-11-09 Thread Robin Garner
Evgueni Brevnov wrote: On 11/9/06, Alexey Petrenko [EMAIL PROTECTED] wrote: The logs for some benchmarks does not have error messages. Is this possible to fix? SY, Alexey 2006/11/9, Robin Garner [EMAIL PROTECTED]: I've just finished adding drlvm to the nightly DaCapo benchmark regression

Re: [drlvm][classlib] DaCapo benchmark regressions

2006-11-09 Thread Robin Garner
Evgueni Brevnov wrote: On 11/9/06, Alexey Petrenko [EMAIL PROTECTED] wrote: The logs for some benchmarks does not have error messages. Is this possible to fix? SY, Alexey 2006/11/9, Robin Garner [EMAIL PROTECTED]: I've just finished adding drlvm to the nightly DaCapo benchmark regression

Re: [drlvm][classlib] DaCapo benchmark regressions

2006-11-09 Thread Robin Garner
, but I'm working on graphs of performance over time, for the non-commercial VMs at least. This is a temporary home, so don't link to it too permanently :) cheers Robin Garner wrote: Weldon Washburn wrote: Fantastic! By the way, the http:// link below did not work for me. Doh! http

Re: [drlvm][sablevm] Desing of Class Unloading Support

2006-11-09 Thread Robin Garner
detail of something that is important, namely the class unloading? geir While it did come up as an issue in the class-unloading talks I think most of us believe it to be orthogonal. cheers -- Robin Garner Dept. of Computer Science Australian National University

Re: [drlvm] Class unloading support - tested one approach

2006-11-09 Thread Robin Garner
the vtable of objects that survive collection and pretenured objects. And this is a persuasive argument. But I can probably find time to measure it tomorrow if you aren't convinced. -- Robin Garner Dept. of Computer Science Australian National University

Re: [drlvm][classlib] DaCapo benchmark regressions

2006-11-09 Thread Robin Garner
. It's a known problem. You need to specify -XcleanupOnExit as well :-) I'm working in it currently will provide a fix soon... Thanks Evgueni On 11/9/06, Robin Garner [EMAIL PROTECTED] wrote: Evgueni Brevnov wrote: On 11/9/06, Alexey Petrenko [EMAIL PROTECTED] wrote: The logs for some

Re: [drlvm] Class unloading support - tested one approach

2006-11-09 Thread Robin Garner
Alexey Varlamov wrote: 2006/11/9, Robin Garner [EMAIL PROTECTED]: Etienne Gagnon wrote: Alexey Varlamov wrote: Sorry if it was already discussed, but I believe this approach also requires marking vtable bit/byte on each object allocation, unitl the unloading GC pass is strictly stop

Re: [drlvm] Class unloading support - tested one approach

2006-11-09 Thread Robin Garner
to a mature-space object under suitably bizarre circumstances. I guess you could have a write barrier on the class metadata space ... ... an XOR barrier could actually be an interesting solution ... but I'm sure it won't be necessary. -- Robin Garner Dept. of Computer Science Australian

Re: [drlvm] vote on class unloading design (was Class unloading support - tested one approach)

2006-11-09 Thread Robin Garner
that maybe the mailing list isn't the most ideal place to keep draft design documents ? Isn't there a wiki or some other web page where it could be kept and referred to ? -- Robin Garner Dept. of Computer Science Australian National University http://cs.anu.edu.au/people/Robin.Garner/

Re: [crypto] SHA-1 not implemented?

2006-11-09 Thread Robin Garner
the DaCapo benchmarks rely on SHA-1 for validation. I raised JIRA Harmony-2135 on this issue. Looks like after eclipse has run, drlvm forgets how to access the SHA-1 algorithm :( -- Robin Garner Dept. of Computer Science Australian National University http://cs.anu.edu.au/people/Robin.Garner/

Re: [drlvm][classlib] DaCapo benchmark regressions

2006-11-09 Thread Robin Garner
Geir Magnusson Jr. wrote: Robin Garner wrote: Geir Magnusson Jr. wrote: Nice - we should put this on the website (maybe same place where we point to JAPI results). Are you tracking performance #'s over time? You are just tracking regression in terms of how much runs, rather than how fast

Re: [drlvm] vote on class unloading design (was Class unloading support - tested one approach)

2006-11-09 Thread Robin Garner
merged proposal that comes with various minor variations for different collection needs: simple stop the world (stw), generational stw, concurrent, etc. You could call it the epoch-based vtable marking approach. So, that bring us back to 3. Robin: Do you agree? :-) Etienne I agree. -- Robin

Re: [drlvm] Class unloading support - tested one approach

2006-11-09 Thread Robin Garner
access to anything with more parallelism than a Pentium D, so it's not likely to be conclusive. -- Robin Garner Dept. of Computer Science Australian National University http://cs.anu.edu.au/people/Robin.Garner/

Re: [drlvm] Class unloading support - tested one approach

2006-11-08 Thread Robin Garner
PROTECTED] wrote: On 11/2/06, Xiao-Feng Li [EMAIL PROTECTED] wrote: Robin, thanks for all the clarifications. Now it seems clear to me and I am convinced by this proposal. :-) Yes, this proposal is the simplest and has the least perf impact. Thanks Robin. -- Robin Garner Dept

Re: [drlvm] vote on class unloading design (was Class unloading support - tested one approach)

2006-11-08 Thread Robin Garner
of Etienne's proposal as a full class-unloading scheme. With the best regards, -- Robin Garner Dept. of Computer Science Australian National University

Re: [drlvm] Class unloading support - tested one approach

2006-11-08 Thread Robin Garner
don't purport to have a solution to (1) and (2). Regards, Robin Aleksey. On 11/8/06, Robin Garner [EMAIL PROTECTED] wrote: Pavel Pervov wrote: Robin, The kind of model I had in mind was along the lines of: - VM maintains a linked list (or other collection type) of the currently loaded

Re: [drlvm] Class unloading support - tested one approach

2006-11-08 Thread Robin Garner
Robin Garner wrote: Aleksey Ignatenko wrote: Robin. OK, well how about keeping a weak reference to the j.l.ClassLoader object instead of a strong one. When the reference becomes (strong)ly unreachable, invoke the class-unloading phase. If you have weak reference to j.l.Classloader - GC

Re: [drlvm] Class unloading support - tested one approach

2006-11-08 Thread Robin Garner
of its classes during the epoch. -- Robin Garner Dept. of Computer Science Australian National University

Re: [drlvm] Class unloading support - tested one approach

2006-11-08 Thread Robin Garner
about tracing extra reference per object. The approach you propose is more efficient and quite elegant. -- Ivan Thanks :) On 11/8/06, Robin Garner [EMAIL PROTECTED] wrote: Robin Garner wrote: Aleksey Ignatenko wrote: Robin. OK, well how about keeping a weak reference

[drlvm][classlib] DaCapo benchmark regressions

2006-11-08 Thread Robin Garner
time). I'm currently working on adding performance stats for DRLVM and JikesRVM, so some suggestions about the best command line parameters to use would be appreciated. cheers -- Robin Garner Dept. of Computer Science Australian National University

Re: [drlvm][classlib] DaCapo benchmark regressions

2006-11-08 Thread Robin Garner
Weldon Washburn wrote: Fantastic! By the way, the http:// link below did not work for me. Doh! http://cs.anu.edu.au/people/Robin.Garner/dacapo/regression/ On 11/8/06, Robin Garner [EMAIL PROTECTED] wrote: I've just finished adding drlvm to the nightly DaCapo benchmark regression

Re: [drlvm][classlib] DaCapo benchmark regressions

2006-11-08 Thread Robin Garner
: http://cs/people/Robin.Garner/dacapo/regression/ It looks like my notebook does not know where to find host named cs :( See other e-mail :-/ -- Robin Garner Dept. of Computer Science Australian National University

[classlib] DaCapo chart benchmark

2006-11-08 Thread Robin Garner
a display. Not what I'd call a problem, but someone might like to add it to their list. cheers -- Robin Garner Dept. of Computer Science Australian National University

Re: [drlvm][sablevm] Desing of Class Unloading Support

2006-11-07 Thread Robin Garner
a business workload that Harmony needs to run within the next 12 months. The cost of moving vtables would be huge. It would have to be a very hefty optimization :) -- Robin Garner Dept. of Computer Science Australian National University

Re: [drlvm] vote on class unloading design (was Class unloading support - tested one approach)

2006-11-07 Thread Robin Garner
: http://www.sablecc.org/ -- Robin Garner Dept. of Computer Science Australian National University

Re: [drlvm] building jitrino in release mode

2006-11-05 Thread Robin Garner
I've been having some problems getting some test cases to exhibit misbehavior for DRLVM, and it turns out that jitrino is built in release mode no matter what BUILD_CFG is set to. Putting this inconsistency aside for a moment, how do I get jitrino to build in debug? I tried changing the

[drlvm] Development plan (was: Re: [drlvm] dynamic object layout)

2006-11-04 Thread Robin Garner
We have a really difficult job to do in the next 7.5 months - to get to a compatible 1.0* - so I'd like to encourage people to remain as focused as we can to get to that point. That doesn't mean this isn't fun, but the way I see it, we have a few focused months of efforts before we begin TCK

Re: [drlvm] Class unloading support - tested one approach

2006-11-01 Thread Robin Garner
- I would do it in the VM, using a hook from the GC's tracing. On 10/31/06, Robin Garner [EMAIL PROTECTED] wrote: Actually, just thinking about how I would implement this in JikesRVM, I would use the reachability based algorithm, but piggyback on the existing GC mechanisms: - Allocate a byte

Re: [drlvm] Class unloading support - tested one approach

2006-11-01 Thread Robin Garner
. The point is an unconditional store to a structure you are already accessing is very cheap, whereas register spills, loads and synchronized updates are expensive. cheers On 10/31/06, Robin Garner [EMAIL PROTECTED] wrote: Actually, just thinking about how I would implement

Re: [drlvm] Class unloading support - tested one approach

2006-11-01 Thread Robin Garner
Weldon Washburn wrote: Its probably in the noise but it might be possible to even reduce the overhead of clearing the vtable mark by using a epoch number instead of a boolean. The idea is that after every major GC, increment the value used for the mark. When sweeping the

Re: [drlvm][sablevm] Desing of Class Unloading Support

2006-11-01 Thread Robin Garner
Xiao-Feng Li wrote: On 11/1/06, Mikhail Fursov [EMAIL PROTECTED] wrote: On 01 Nov 2006 16:05:41 +0600, Egor Pasko [EMAIL PROTECTED] wrote: On the 0x214 day of Apache Harmony Mikhail Fursov wrote: On 01 Nov 2006 15:56:28 +0600, Egor Pasko [EMAIL PROTECTED] wrote: agreed. not patching

Re: [drlvm] Class unloading support

2006-10-31 Thread Robin Garner
Ivan Volosyuk wrote: Robin, thank you for this information. I want to ask a few questions to check that I understand you correctly. On 10/31/06, Robin Garner [EMAIL PROTECTED] wrote: MMTk implements several algorithms for retaining the reachable objects in a graph and recycling space used

Re: [drlvm] Class unloading support

2006-10-31 Thread Robin Garner
Weldon Washburn wrote: On 10/30/06, Robin Garner [EMAIL PROTECTED] wrote: Weldon Washburn wrote: On 10/27/06, Geir Magnusson Jr. [EMAIL PROTECTED] wrote: Weldon Washburn wrote: Steve Blackburn was in Portland Oregon today. I mentioned the idea of adding a reference pointer from

Re: [drlvm] Class unloading support - tested one approach

2006-10-31 Thread Robin Garner
Actually, just thinking about how I would implement this in JikesRVM, I would use the reachability based algorithm, but piggyback on the existing GC mechanisms: - Allocate a byte (or word) in each vtable for the purpose of tracking class reachability. - Periodically, at a time when no GC is

Re: [drlvm] Class unloading support

2006-10-30 Thread Robin Garner
Weldon Washburn wrote: On 10/27/06, Geir Magnusson Jr. [EMAIL PROTECTED] wrote: Weldon Washburn wrote: Steve Blackburn was in Portland Oregon today. I mentioned the idea of adding a reference pointer from object to its j.l.Class instance. MMTk was not designed with this idea in

Re: [drlvm] Calling native methods from Java code: implementation details

2006-10-29 Thread Robin Garner
I thought moxie already had an implementation of fast native calls ? Perhaps you could look at that ? cheers, Robin Mikhail Fursov wrote: On 10/23/06, Pavel Afremov [EMAIL PROTECTED] wrote: Mikhail could you summarize all issues which should be clarified and possible solutions for these

Re: [DRLVM][MMTk] current status and plan

2006-10-29 Thread Robin Garner
Weldon Washburn wrote: On 10/25/06, Robin Garner [EMAIL PROTECTED] wrote: follows. Comments, suggestions are welcome. It would be much appreciated if Steve Blackburn and Robin Garner would reply to the questions below directed to the MMTk guys. Interleaved below

Re: [drlvm][build] Where to put mmtk.jar?

2006-10-26 Thread Robin Garner
that for everything else, where we can. I agree with Geir. Its best to try to stay out of the business of warehousing 3rd party stuff. Let's download MMTk.jar from a web page during build fetch-depends. We can change this if it causes problems. Robin Garner, can you help us with this? What

Re: [DRLVM][MMTk] current status and plan

2006-10-25 Thread Robin Garner
follows. Comments, suggestions are welcome. It would be much appreciated if Steve Blackburn and Robin Garner would reply to the questions below directed to the MMTk guys. Interleaved below. - The next step is to integrate MMTk in the early DRLVM boot process

Re: [drlvm] The first GC helper with fast-path implemented in Java: gc_alloc

2006-10-19 Thread Robin Garner
, shouldn't raise exceptions, cause gc etc. Our java layer in the infrastructure is somewhat localized. Thanks, Rana On 10/15/06, Robin Garner [EMAIL PROTECTED] wrote: Weldon Washburn wrote: Robin, I really like your thinking! I would like to see Harmony drlvm support MMTk fully

Re: [Fwd: Re: [DRLVM][JET] write barrier for Java (mmtk)]

2006-10-13 Thread Robin Garner
Weldon Washburn wrote: Robin, I did a diff of the mmtk/vm directory. It looks like nothing really changed in the vm interface code which is good. Am I understanding this right?? That sounds about right. And (famous last words) I think the interface will probably remain stable for a

Re: [drlvm] The first GC helper with fast-path implemented in Java: gc_alloc

2006-10-13 Thread Robin Garner
Mikhail Fursov wrote: On 10/13/06, Rana Dasgupta [EMAIL PROTECTED] wrote: Why is this a problem, am I misunderstanding? Even with conventional helpers, the jit needs to know the helper method signatures. We don't need to worry about universality of GC's. Any compatible GC will need to

Re: [Fwd: Re: [DRLVM][JET] write barrier for Java (mmtk)]

2006-10-13 Thread Robin Garner
Urgh. In that case the array base offset should be specified in the constructor of an MMType - JikesRVM doesn't have this problem, because the object pointer always points to element 0 of an array irrespective of header sizes and alignment issues (and hence the align and offset parameters to

Re: [DRLVM][JET] write barrier for Java (mmtk)

2006-10-11 Thread Robin Garner
I think you must be looking at a fairly old version of MMTk. writeBarrier is an instance method of a MutatorContext (in org.mmtk.plan). MutatorContext exists to hold unsynchronized thread-local data structures. Particularly relevant to the write barrier, each mutator context has its own

[Fwd: Re: [DRLVM][JET] write barrier for Java (mmtk)]

2006-10-11 Thread Robin Garner
Original Message Subject: Re: [DRLVM][JET] write barrier for Java (mmtk) Date: Thu, 12 Oct 2006 11:18:20 +1000 From: Robin Garner [EMAIL PROTECTED] To: harmony-dev@incubator.apache.org References: [EMAIL PROTECTED] [EMAIL PROTECTED] [EMAIL PROTECTED] [EMAIL PROTECTED

[Fwd: Re: [DRLVM][JET] write barrier for Java (mmtk)]

2006-10-11 Thread Robin Garner
Original Message Subject: Re: [DRLVM][JET] write barrier for Java (mmtk) Date: Thu, 12 Oct 2006 11:36:33 +1000 From: Robin Garner [EMAIL PROTECTED] To: harmony-dev@incubator.apache.org References: [EMAIL PROTECTED] [EMAIL PROTECTED] [EMAIL PROTECTED] [EMAIL PROTECTED

Re: [DRLVM] Build problems - Stl.h

2006-09-22 Thread Robin Garner
Egor Pasko wrote: On the 0x1EC day of Apache Harmony Robin Garner wrote: Thanks to everyone who assisted before ... the build is progressing, but now fails with [cc] /usr/lib/gcc/i486-linux-gnu/4.0.3/../../../../include/c++/4.0.3/bits/stl_tree.h:36 7: error: no matching function

Re: [doc] new Getting Started guides

2006-09-22 Thread Robin Garner
Vladimir Gorr wrote: On 9/22/06, Alexey Petrenko [EMAIL PROTECTED] wrote: Since Harmony is an open source project probably we should change the link from commercial WinZip to open source 7-Zip[1] :) It has *GNU LGPL. *IIRC we can't use this, can it? Thanks, Vladimir. Isn't info-zip the

Re: [doc] new Getting Started guides

2006-09-22 Thread Robin Garner
Robin Garner wrote: Vladimir Gorr wrote: On 9/22/06, Alexey Petrenko [EMAIL PROTECTED] wrote: Since Harmony is an open source project probably we should change the link from commercial WinZip to open source 7-Zip[1] :) It has *GNU LGPL. *IIRC we can't use this, can it? Thanks, Vladimir

Re: [drlvm][jit] MMTk-style magics implementation in Jitrino.OPT compiler

2006-09-21 Thread Robin Garner
On 9/21/06, Mikhail Fursov [EMAIL PROTECTED] wrote: Weldon, Robin thank you for the comments. There are just a few steps left to do before Jitrino.OPT will have usable unboxed package implementation. Right now I'm working on atomic operations (prepare/attempt pair), and I do not

Re: [DRLVM] Build problems - missing bfd.h

2006-09-21 Thread Robin Garner
Geir Magnusson Jr. wrote: On Sep 21, 2006, at 1:09 AM, Robin Garner wrote: Trying to build the latest trunk (r448461) on Ubuntu (6.06). That's my main build platform. No need to hack anything. Had to hack build.sh because the ant executable isn't in ANT_HOME, That's weird. You

[DRLVM] Build problems - Stl.h

2006-09-21 Thread Robin Garner
Thanks to everyone who assisted before ... the build is progressing, but now fails with [cc] /usr/lib/gcc/i486-linux-gnu/4.0.3/../../../../include/c++/4.0.3/bits/stl_tree.h:36 7: error: no matching function for call to ‘Jitrino::StlMMAllocatorJitrino::Opnd*::construct

Re: [DRLVM] Build problems - missing bfd.h

2006-09-21 Thread Robin Garner
Geir Magnusson Jr. wrote: On Sep 21, 2006, at 9:18 PM, Robin Garner wrote: Geir Magnusson Jr. wrote: On Sep 21, 2006, at 1:09 AM, Robin Garner wrote: Trying to build the latest trunk (r448461) on Ubuntu (6.06). That's my main build platform. No need to hack anything. Had to hack

Re: [drlvm][jit] MMTk-style magics implementation in Jitrino.OPT compiler

2006-09-20 Thread Robin Garner
Weldon Washburn wrote: On 9/20/06, Mikhail Fursov [EMAIL PROTECTED] wrote: I put the update into JIRA. This update still has a lot of bugs, but is significantly more stable then the initial one. My plan is to work on lock prefix support in Jitrino.OPT CG tomorrow, so if somebody is interested

[DRLVM] Build problems - missing bfd.h

2006-09-20 Thread Robin Garner
Trying to build the latest trunk (r448461) on Ubuntu (6.06). Had to hack build.sh because the ant executable isn't in ANT_HOME, and add a URL to download xalan, but now the build fails with a missing bfd.h (full error message below). Any pointers ? cheers, Robin --

Re: [General VM] GC strategy:how to garbage collect short-lived objects quickly.

2006-09-19 Thread Robin Garner
Egor Pasko wrote: On the 0x1E4 day of Apache Harmony Alexey Varlamov wrote: Just a wild idea: a smart JIT could hint a GC during allocation if an object is expected to be short-lived so the GC could allocate it in a special space, if a JIT can prove that the object is local, it can allocate

Re: [General VM] GC strategy:how to garbage collect short-lived objects quickly.

2006-09-19 Thread Robin Garner
What about the VMs here, drlvm or J9? In a DRLVM JIT (Jitrino.OPT) there is an escape analysis prototype. It detects objects that can be allocated on stack (and, hence, on registers). Currently, it is switched off by default, and, when enabled, it just marks the objects that are not escaped.

Re: [General VM] GC strategy:how to garbage collect short-lived objects quickly.

2006-09-19 Thread Robin Garner
Egor Pasko wrote: On the 0x1E4 day of Apache Harmony Oliver Deakin wrote: Forcing gc by hand does work, but it is difficult for code to know when to call gc.So I think it is better if VM can give some support since it knows the global situation.:) ..and of course a manual gc() call does not

Re: [General VM] GC strategy:how to garbage collect short-lived objects quickly.

2006-09-19 Thread Robin Garner
Weldon Washburn wrote: Its not a simple wrapper that is missing. MMTk is written in Java. This Java code needs to be intergrated into the bootstrap process of DRLVM. For example, initial bootstrap java code needs to run on a bootstrap java heap until all of MMTk itself has been compiled

Re: [DRLVM][JIT] can Jitrino.JET call MMTk alloc() instead of C helper?

2006-09-19 Thread Robin Garner
Weldon Washburn wrote: On 9/8/06, Mikhail Fursov [EMAIL PROTECTED] wrote: Weldon, I added 'alloc' support to JIRA 816 (magic2.zip file) Now it supports objects allocation only, not arrays. MMTk allocation works only for class named 'test' and methods with prefix 'testAlloc'. To turn it on

Re: [General VM] GC strategy:how to garbage collect short-lived objects quickly.

2006-09-19 Thread Robin Garner
I don't understand. How can weak references help short-lived objects reclaim? Really what I'm saying is that this is the closest thing we have to a hint to GC that objects can be collected soon - but it is not anything like a proper free() call. There is no immediate reclaim of memory, just

Re: [General VM] GC strategy:how to garbage collect short-lived objects quickly.

2006-09-15 Thread Robin Garner
Designing a garbage collector with low pause times and high throughput (ie low overhead) is to an extent the 'holy grail' of memory management research. The worst case pause times are in full heap collectors, where the pause time is proportional to the total number of live objects in the heap.

Re: [DRLVM] GC heap verification infrastructure

2006-09-05 Thread Robin Garner
Weldon Washburn wrote: On 7/18/06, Volynets, Vera [EMAIL PROTECTED] wrote: Hi, I didn't find any bugs in gc_v4 at the moment, Vera, its good to know the verifier found zero bugs in GCV4! but this feature is really very useful especially if you modify gc_v4 or design a new gc. Of course, it

Re: [DRLVM][VM] -- which header bits are available for GC mark and GC forwarding use?

2006-09-01 Thread Robin Garner
Weldon Washburn wrote: Robin, Good points. Given that Object.hashCode() implementation sortof, kindof depends on a copying mature space, does it make sense for the GC to own the Object.hashCode() implementation? That way, we eliminate the vm-wide debate about giving object hash one or two or

Re: [DRLVM][VM] -- which header bits are available for GC mark and GC forwarding use?

2006-08-28 Thread Robin Garner
From talking to the MMTk guys (Steve Blackburn) it seems MMTk wants to have one byte of object header for private use. Its unclear to me if this will be a performance problem for a product JVM. Yep. We found a nice mark-sweep

Re: [drlvm][vm, mmtk] adding thread-local storage functionality to vmmagic

2006-08-20 Thread Robin Garner
Egor Pasko wrote: On the 0x1C9 day of Apache Harmony Mikhail Fursov wrote: Would id be possible to add the Java TLS API into VMThreadManager like: long tlsAlloc(); // returns a key for new local storage entry tlsSet(long key, long dataAddr); // stores a pointer to memory addr for the

Re: [drlvm][vm, mmtk] adding thread-local storage functionality to vmmagic

2006-08-18 Thread Robin Garner
Egor Pasko wrote: On the 0x1C8 day of Apache Harmony Mikhail Fursov wrote: Egor, Why do you think we need to support platform specific issues in helpers? Is there any example that shows that we can't write a helper without reference platform details? It depends on how much of a

Re: [drlvm][vm, mmtk] adding thread-local storage functionality to vmmagic

2006-08-18 Thread Robin Garner
On 8/18/06, Robin Garner [EMAIL PROTECTED] wrote: Object org.vmmagic.utility.accessVmStructure(identifier) This is a good idea to keep in mind. We can introduce it when needed. At the moment for service fast-path inlining, I guess specific JIT intrisics are enough. It strikes me

Re: [DRLVM][GC] Goals for 2006/2007

2006-08-15 Thread Robin Garner
Weldon Washburn wrote: All, There is rough consensus that the immediate goal for Harmony JVM is to reliably run simple commercial workloads with acceptable performance. In regards to a garbage collector for a Harmony JVM in 2006 there are some data points worth noting. 1) A quick survey shows

Re: performance of drlvm

2006-07-27 Thread Robin Garner
There was a paper last year at OOPSLA about similar things, Adam Welc was one of the authors. Sounds like this may be the same work that Stefano is talking about. cheers zouqiong wrote: Hi, Stefano I think your idea about to keep a profile for the next run of the same software is a

Re: [DRLVM] GC/VM interface discussion

2006-07-12 Thread Robin Garner
Weldon Washburn wrote: On 7/11/06, Robin Garner [EMAIL PROTECTED] wrote: Salikh Zakirov wrote: Ivan Volosyuk wrote: My idea here, is if the function is required by VM, it can be emulated on VM side via alloc + pin. Of cause, it is not the same as gc_pinned_alloc. The behaviour of GC

Re: [drlvm/mmtk] jitrino.jet write barrier design questions

2006-07-12 Thread Robin Garner
Weldon Washburn wrote: Alex, Sorry for taking so long to answer your questions below. Please see the response inline. Weldon On 6/27/06, Alex Astapchuk [EMAIL PROTECTED] wrote: AFAIR from the recent thread, to implement WB for MMTk support, I have to emit calls of

Re: [drlvm/mmtk] jitrino.jet write barrier initial implementaion

2006-07-11 Thread Robin Garner
Weldon Washburn wrote: On 7/10/06, Ivan Volosyuk [EMAIL PROTECTED] wrote: On 7/10/06, Weldon Washburn [EMAIL PROTECTED] wrote: On 7/10/06, Ivan Volosyuk [EMAIL PROTECTED] wrote: One question, why do we need write barriers for 'putstatic' bytecode? This fields appear in root set and does

Re: [drlvm/mmtk] jitrino.jet write barrier initial implementaion

2006-07-11 Thread Robin Garner
Weldon Washburn wrote: On 7/10/06, Alex Astapchuk [EMAIL PROTECTED] wrote: Weldon, I just commited http://issues.apache.org/jira/browse/HARMONY-816 into JIRA. Thanks. I will look at it today. It contains the changes for Jitrino.JET: - magics support for MMTk - write barriers for Java

Re: [DRLVM] GC/VM interface discussion

2006-07-11 Thread Robin Garner
Salikh Zakirov wrote: Ivan Volosyuk wrote: My idea here, is if the function is required by VM, it can be emulated on VM side via alloc + pin. Of cause, it is not the same as gc_pinned_alloc. The behaviour of GC will be suboptimal in that case. In fact, gc_alloc_pinned() is not

Re: [DRLVM] GC/VM interface discussion

2006-07-11 Thread Robin Garner
Xiao-Feng Li wrote: On 7/11/06, Ivan Volosyuk [EMAIL PROTECTED] wrote: GCExport void gc_write_barrier(Managed_Object_Handle p_base_of_obj_with_slot); This is a difficult API. For starts, it only applies to write barriers written in C/asm. Its not usable by MMTk. C Write

Re: [DRLVM] MMTk vmmagic classes, can someone w/ compiler experience help me?

2006-06-15 Thread Robin Garner
Weldon Washburn wrote: All, I am hoping someone who has worked on compilers can actually do the JIT modifications. I don't have much experience in compilers. I am trying to get MMTk write barriers integrated into Harmony DRLVM. I came up with the following scheme. I don't know if it is

Re: [DRLVM] MMTk vmmagic classes, can someone w/ compiler experience help me?

2006-06-15 Thread Robin Garner
Robin Garner wrote: Weldon Washburn wrote: All, I am hoping someone who has worked on compilers can actually do the JIT modifications. I don't have much experience in compilers. I am trying to get MMTk write barriers integrated into Harmony DRLVM. I came up with the following scheme. I

Re: [DRLVM] MMTK porting issues, take one

2006-06-15 Thread Robin Garner
Rodrigo Kumpera wrote: On 6/2/06, Weldon Washburn [EMAIL PROTECTED] wrote: All, Perhaps the following is already covered in documentation. If this is the case, please tell me where to find it. Below are some initial questions regarding porting MMTK to DRLVM. A question about

Re: Fwd: [DRLVM] proposal to port MMTK to drlvm

2006-06-14 Thread Robin Garner
Weldon Washburn wrote: oops, I forgot to cc: -- Forwarded message -- From: Weldon Washburn [EMAIL PROTECTED] Date: May 24, 2006 11:23 AM Subject: Re: [DRLVM] proposal to port MMTK to drlvm To: [EMAIL PROTECTED] On 5/24/06, Daniel Feinberg [EMAIL PROTECTED] wrote: that is

Re: [DRLVM] proposal to port MMTK to drlvm

2006-05-28 Thread Robin Garner
Weldon Washburn wrote: Good point. Which MMTK code base should we work with? Where is it located? I know one version of MMTK is bundled with the Jikes source code. I do not know if it is the best version to start this project. There is a Jikes download link on the page:

Split the list ?

2006-04-24 Thread Robin Garner
Has anyone else considered the possibility of splitting the harmony-dev list ? As a memory manager/VM hacker, I'm interested to keep up with the high level happenings in the harmony world, but not necessarily with the low-level details of bugs in the class library (and so forth). What do

Re: Summer Of Code 2006 - Lets get Harmony involved

2006-04-23 Thread Robin Garner
Tim Ellison wrote: Sanket Sharma wrote: Performance analysis sounds interesting... Any links/pointers to get started? I suggest that you look around for some simple well-written performance benchmarks for Java and see if you can get them running on Harmony. Not sure whether they

Re: [classlib] performance tips

2006-03-10 Thread Robin Garner
Mikhail Loenko wrote: Hello May be it is obvious and everybody knows it from babyhood, but anyway... Everybody knows that this two examples of code do the same: class test { public Object field = null; } and class test { public Object field; } But if you disassemble these two

Re: Building choices (was: Re: Code contribution to harmony)

2005-11-23 Thread Robin Garner
Matt Benson wrote: --- Ashish Ranjan [EMAIL PROTECTED] wrote: that is the most convincing argument till now. :-) +1 from an Ant PMC member. That logic is irrefutable. :) -Matt What about cross-compilation/cross-building ? If harmony is to be successful in its goal of wide

Re: half-baked idea? j2me

2005-11-04 Thread Robin Garner
Geir Magnusson Jr. wrote: On Nov 1, 2005, at 9:05 PM, Robin Garner wrote: Actually my colleagues at ANU and I were remarking last week that all the recent discussion on the Harmony list (configure scripts, packed structs etc etc) were close to being proof that Java was the easier way

Re: half-baked idea? j2me

2005-11-01 Thread Robin Garner
On 11/1/05, Robin Garner [EMAIL PROTECTED] wrote: Rodrigo Kumpera wrote: AFAIK IKVM, sablevm and jamvm all run on portable devices. Developing a j2me jvm is not as easier as it seens, first, the footprint and execution performance must be really optimized, so expect a LOT of assembly

Re: half-baked idea? j2me

2005-11-01 Thread Robin Garner
On 11/1/05, Robin Garner [EMAIL PROTECTED] wrote: Rodrigo Kumpera wrote: AFAIK IKVM, sablevm and jamvm all run on portable devices. Developing a j2me jvm is not as easier as it seens, first, the footprint and execution performance must be really optimized, so expect a LOT of assembly

Re: half-baked idea? j2me

2005-11-01 Thread Robin Garner
Rodrigo Kumpera wrote: On 11/1/05, Robin Garner [EMAIL PROTECTED] wrote: On 11/1/05, Robin Garner [EMAIL PROTECTED] wrote: Rodrigo Kumpera wrote: AFAIK IKVM, sablevm and jamvm all run on portable devices. Developing a j2me jvm is not as easier as it seens, first

Re: half-baked idea? j2me

2005-11-01 Thread Robin Garner
Archie Cobbs wrote: Robin Garner wrote: Actually my colleagues at ANU and I were remarking last week that all the recent discussion on the Harmony list (configure scripts, packed structs etc etc) were close to being proof that Java was the easier way to go. Here's some idle speculating

Re: Questions about GC implementations

2005-10-31 Thread Robin Garner
Done. This is issue #11. cheers Geir Magnusson Jr. wrote: Robin - can you post this to a JIRA please? geir On Oct 29, 2005, at 1:57 AM, Robin Garner wrote: In the garbage collectors I've worked with, the essential design is: - 'new' allocates space on the heap. - The header of each

Re: half-baked idea? j2me

2005-10-31 Thread Robin Garner
Rodrigo Kumpera wrote: AFAIK IKVM, sablevm and jamvm all run on portable devices. Developing a j2me jvm is not as easier as it seens, first, the footprint and execution performance must be really optimized, so expect a LOT of assembly coding. Back to the language wars again :) This does

Re: Some questions about the architecture

2005-10-22 Thread Robin Garner
Isn't all that already adressed by the VM/GC and GC/VM interfaces posted by Weldon Washburn [1], [2] some time ago? (I'm not sure if this is helpful, I didn't really read the BootJVM code, so please don't hit me if I'm wrong). If not It might be helpful starting a WIKI - page which describes

Re: Some questions about the architecture

2005-10-22 Thread Robin Garner
Robin Garner wrote: GC is triggered in two cases: 1) the user code calls System.gc(). 2) the heap fills up (for some suitable definition of 'fills up'). There is never any need for the VM code to call the garbage collector. Off tanget, but IMHO this is not strictly true: it depends

Re: Questions about GC implementations

2005-10-21 Thread Robin Garner
Robin, Over the last few days as we have all been discussing heap and GC, I have been growing mroe curious by the hour about what you see as a design critique of the GC hooks I defined. Perhaps I am taking it a bit too simplistically, but all I did was define a GC hook anywhere an object

Re: Some questions about the architecture

2005-10-20 Thread Robin Garner
Robin, Rodrigo, Perhaps the two of you could get your heads together on GC issues? I think both of you have been thinking along related lines on the structure of GC for this JVM. What do you think? I think the current challenge is to get the GC people and the VM people thinking along the

Build problem on Linux

2005-10-20 Thread Robin Garner
I'm having problems building the boot JVM. running jvm/build.sh I get src/timeslice.c:82:71: thread.h: No such file or directory src/timeslice.c: In function `timeslice_tick': src/timeslice.c:221: error: invalid use of undefined type `struct itimerval' src/timeslice.c: In function

  1   2   >