How to execute large bodies of codes atomically (no pre-emption needed)? RRS feed

  • Question

  • Hi,

    I'm doing a CHESS for my reasearch simulator, which has several thread execute concurrently. I understand that n threads that execute k steps will make the interleaving grows up exponentially. Actually in my simulator, each thread has large body of codes (steps) to execute, but these steps should be executed atomically (they don't need the pre-emptions). Is it possible to force these codes execute atomically? I have read some CHESS articles and see there's indeed this techinque. Thanks very much for your help in advance.



    Thursday, June 17, 2010 11:35 PM


  • If you are working on academic research, you can download the source code of CHESS at http://chesstool.codeplex.com (MSR-LA license). That code base has the "dontpremptmethod" option that gives you the feature you want. 

    -- Tom Ball 

    Wednesday, July 14, 2010 4:53 AM