[Soot-list] miss "soot.jimple.toolkits.thread.transaction "

Richard L. Halpert richhal22 at gmail.com
Mon Jul 20 12:23:40 EDT 2009


The synchronization package can perform automatic lock allocation.  This
allows the developer to use a syntax similar to to what you might use on a
transactional memory system (like "atomic{ foo();}").  If a lock allocator
guarantees atomicity, consistency, and isolation (as ours attempts to do),
you have the same semantics as a transactional memory system (but not the
same performance characteristics).  That's why we originally referred to it
as "pessimistic transactions".  However, we didn't pursue the relationship
between transactions and lock allocation (any more than what you've read in
this paragraph), so the package has been renamed to
soot.jimple.toolkits.thread.synchronization, and the entry point of the code
has been renamed from TransactionTransformer.java to LockAllocator.java.  We
do not have an implementation of "optimistic transactions".

-Richard

On Mon, Jul 20, 2009 at 6:35 AM, Eric Bodden <eric.bodden at mail.mcgill.ca>wrote:

> Hi Peng.
>
> I think this was moved (see below). And yes, there is functionality
> for transactional memory in this package. (See Richard Halper's work)
>
> Author: rhalpe
> Date: 2008-05-28 22:47:56 -0400 (Wed, 28 May 2008)
> New Revision: 3239
>
> Log:
> FINALLY renaming the transaction package to synchronization.
> Currently, its classes primarily perform lock allocation.
>
>
> Added:
>  soot/trunk/src/soot/jimple/toolkits/thread/synchronization/
>
>  soot/trunk/src/soot/jimple/toolkits/thread/synchronization/DeadlockAvoidanceEdge.java
>
>  soot/trunk/src/soot/jimple/toolkits/thread/synchronization/DeadlockDetector.java
>  soot/trunk/src/soot/jimple/toolkits/thread/synchronization/LockRegion.java
>
>  soot/trunk/src/soot/jimple/toolkits/thread/synchronization/LocksetAnalysis.java
>
>  soot/trunk/src/soot/jimple/toolkits/thread/synchronization/NewStaticLock.java
>
>  soot/trunk/src/soot/jimple/toolkits/thread/synchronization/Transaction.java
>
>  soot/trunk/src/soot/jimple/toolkits/thread/synchronization/TransactionAnalysis.java
>
>  soot/trunk/src/soot/jimple/toolkits/thread/synchronization/TransactionAwareSideEffectAnalysis.java
>
>  soot/trunk/src/soot/jimple/toolkits/thread/synchronization/TransactionBodyTransformer.java
>
>  soot/trunk/src/soot/jimple/toolkits/thread/synchronization/TransactionDataDependency.java
>
>  soot/trunk/src/soot/jimple/toolkits/thread/synchronization/TransactionExternalRWAnalysis.java
>
>  soot/trunk/src/soot/jimple/toolkits/thread/synchronization/TransactionFlowPair.java
>
>  soot/trunk/src/soot/jimple/toolkits/thread/synchronization/TransactionGroup.java
>
>  soot/trunk/src/soot/jimple/toolkits/thread/synchronization/TransactionInterferenceGraph.java
>
>  soot/trunk/src/soot/jimple/toolkits/thread/synchronization/TransactionTransformer.java
>
>  soot/trunk/src/soot/jimple/toolkits/thread/synchronization/TransactionVisibleEdgesPred.java
>
> Removed:
>
>  soot/trunk/src/soot/jimple/toolkits/thread/synchronization/DeadlockAvoidanceEdge.java
>  soot/trunk/src/soot/jimple/toolkits/thread/synchronization/LockRegion.java
>
>  soot/trunk/src/soot/jimple/toolkits/thread/synchronization/LocksetAnalysis.java
>
>  soot/trunk/src/soot/jimple/toolkits/thread/synchronization/NewStaticLock.java
>
>  soot/trunk/src/soot/jimple/toolkits/thread/synchronization/Transaction.java
>
>  soot/trunk/src/soot/jimple/toolkits/thread/synchronization/TransactionAnalysis.java
>
>  soot/trunk/src/soot/jimple/toolkits/thread/synchronization/TransactionAwareSideEffectAnalysis.java
>
>  soot/trunk/src/soot/jimple/toolkits/thread/synchronization/TransactionBodyTransformer.java
>
>  soot/trunk/src/soot/jimple/toolkits/thread/synchronization/TransactionDataDependency.java
>
>  soot/trunk/src/soot/jimple/toolkits/thread/synchronization/TransactionExternalRWAnalysis.java
>
>  soot/trunk/src/soot/jimple/toolkits/thread/synchronization/TransactionFlowPair.java
>
>  soot/trunk/src/soot/jimple/toolkits/thread/synchronization/TransactionGroup.java
>
>  soot/trunk/src/soot/jimple/toolkits/thread/synchronization/TransactionTransformer.java
>
>  soot/trunk/src/soot/jimple/toolkits/thread/synchronization/TransactionVisibleEdgesPred.java
>  soot/trunk/src/soot/jimple/toolkits/thread/transaction/
>
> Modified:
>  soot/trunk/generated/singletons/soot/Singletons.java
>  soot/trunk/src/soot/PackManager.java
>
> Eric
>
> 2009/7/19 LIU Peng <lpxz at ust.hk>:
> > Hello guys:
> >     I have a quick problem: I found
> > soot.jimple.toolkits.thread.transaction API on the web, but I can not
> > find classes for them in sootclasses.jar, my sootclass.jar is the the
> > latest version :2.3.0, and I also checked the nightly build, without
> > finding them.
> >     Can anybody tell me how to get them?
> >     By the way, from the mail-list, I know this package  is for lock
> > allocation. Does "transaction" here have any relationship with those
> > transactions in the transactional memory? or simply to say, do they
> > have the logical atomicity meaning here in the package?
> >     Thanks
> >     Regards.
> > Peng
> >
> > _______________________________________________
> > Soot-list mailing list
> > Soot-list at sable.mcgill.ca
> > http://mailman.cs.mcgill.ca/mailman/listinfo/soot-list
> >
>
>
>
> --
> Eric Bodden
> Sable Research Group, McGill University
> Montréal, Québec, Canada
> _______________________________________________
> Soot-list mailing list
> Soot-list at sable.mcgill.ca
> http://mailman.cs.mcgill.ca/mailman/listinfo/soot-list
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.cs.mcgill.ca/pipermail/soot-list/attachments/20090720/514a6160/attachment.html 


More information about the Soot-list mailing list