harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Nathan Beyer" <nbe...@kc.rr.com>
Subject RE: [drlvm] what's next?
Date Wed, 21 Jun 2006 01:59:05 GMT
As mentioned in the "[general] milestones and roadmap" thread, work on
integrating the concurrency APIs will require VM support and it seems like
DRLVM is close to having some of it complete, so I would lobby for that.

The VM APIs need are atomic CAS, parking and possibly methods for set/get of
array elements as though they were volatile.

DRLVM has a class stubbed for CAS [1] and lock support [2], the later of
which I'd probably suggest moving to a VMI package. The piece about the
set/get of array elements in a volatile fashion can be seen in the
AtomicIntegerArray [3] class; look for putIntVolatile. I'm not completely
clear on the details, but it seems to be necessary as array elements of an
array aren't normally guaranteed to be treated like volatile fields and this
method guarantees that. (I'm still trying to dig my way through the Java
Memory Model stuff, so bear with me.)

Do the current DRLVM build scripts build these utility classes [1][2] and
their native counterparts? I was having trouble running the build scripts
the other day (the Eclipse download killed me) and haven't had much time to
experiment.

The other piece that might need to be considered is how to handle AtomicLong
on platforms that can't do 64-bit CAS natively. I was hoping this would be
handled by the VM, but Doug's code [4] seems to handle it in the class
itself.

-Nathan

[1]
http://svn.apache.org/viewvc/incubator/harmony/enhanced/drlvm/trunk/vm/vmcor
e/src/kernel_classes/javasrc/org/apache/harmony/util/concurrent/Atomics.java
?view=markup
[2]
http://svn.apache.org/viewvc/incubator/harmony/enhanced/drlvm/trunk/vm/vmcor
e/src/kernel_classes/javasrc/java/util/concurrent/locks/LockSupport.java?vie
w=markup
[3]
http://gee.cs.oswego.edu/cgi-bin/viewcvs.cgi/jsr166/src/main/java/util/concu
rrent/atomic/AtomicIntegerArray.java?rev=1.25&content-type=text/vnd.viewcvs-
markup
[4]
http://gee.cs.oswego.edu/cgi-bin/viewcvs.cgi/jsr166/src/main/java/util/concu
rrent/atomic/AtomicLongFieldUpdater.java?rev=1.23&content-type=text/vnd.view
cvs-markup

> -----Original Message-----
> From: Geir Magnusson Jr [mailto:geir@pobox.com]
> 
> Build and dependency issues aside, what are the next functional
> enhancements / features for DRLVM?
> 
> I think #1 is to get it to function with Java 5 classfiles, so we can
> make the switch throughout the project.
> 
> Thoughts? What else?
> 
> geir


---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
For additional commands, e-mail: harmony-dev-help@incubator.apache.org


Mime
View raw message