[Swift-devel] [Bug 72] Campaign for scaling wf up to 244 molecules
Mike Wilde
wilde at mcs.anl.gov
Thu Jun 28 17:42:55 CDT 2007
STOP. DO NOT reply to this email.
reply instead via a comment in bugzilla.
(do I sound like Ben yet? ;)
Ioan,
My understanding is that Mihael pointed out 2 clear unsynchronized race
conditions from his review of the Falkon provider code.
Do you agree or disagree? If you agree, have you fixed the race? If not, do we
need to discuss it further among more experts to get to an decision we believe
is correct?
I dont want to sermonize, but will do so anyways:
<soapbox>
- mutex/synchronization problems are devilishly subtle
- to make mutex code work right, you need *both* code review, extensive testing,
and ideally a lot of code asserts to make sure you are (locked) where you think
you are.
- if we are arguing about the obvious its probably not obvious to everyone
(so f2f tabletop code review is helpful here, for both education and verification)
- to get mutex code right you need to make sure you have the tasks and shared
data structures (and hence access patterns) clearly identified
- then you need tons of testing. not just live tests, but carefully contrived
artificial tests to stress test various mutex situations and potential race and
deadlock conditions.
</soapbox>
I dont think we should stop testing to do a code review, but we certainly will
need to do one before we can expect very high reliability.
I'd like to ask you, Ioan that since it its your code and project, that you work
out a schedule that works for everyone, and organize a review. I understand
that the core Falkpon code needs some simple cosmetic cleanup (mainly removing
fossil code) and then posting in SVN.
:) Mike
Mihael Hategan wrote, On 6/28/2007 4:41 PM:
> On Thu, 2007-06-28 at 16:36 -0500, Ioan Raicu wrote:
>> There is an option to have a pool of threads work on these data
>> structures, but the pool size is set to 1.
>
> Right, but the submit() method was called from different threads. Can we
> stop arguing about the obvious?
>
>> Point is well taken, we have fixed this, but I am not convinced this
>> is where the problem was. We'll see after we do another run with all
>> the extra logging.
>
> Can you commit the updates to svn?
>
>> Ioan
>>
>> Mihael Hategan wrote:
>>>>> - did Mihael discover an error in Falkon mutex code?
>>>>>
>>>>>
>>>>>
>>>> We are not sure, but we are adding extra synchronization in several
>>>> parts of the Falkon provider. The reason we are saying that we are not
>>>> sure is that we stress tested (pushing 50~100 tasks/sec) both the Falkon
>>>> provider and Falkon itself over and over again, and we never encountered
>>>> this. Now, we have a workflow that has an average of 1 task/sec, I find
>>>> it hard to beleive that a synchronization issue that never surfaced
>>>> before under stress testing is surfacing now under such a light load.
>>>>
>>> ?!?
>>> You are mutating maps and list from concurrent threads without
>>> synchronization. That is a problem regardless of any other
>>> considerations.
>>>
>>> Mihael
>>>
>>>
>>>
>>>
>>>
>> --
>> ============================================
>> Ioan Raicu
>> Ph.D. Student
>> ============================================
>> Distributed Systems Laboratory
>> Computer Science Department
>> University of Chicago
>> 1100 E. 58th Street, Ryerson Hall
>> Chicago, IL 60637
>> ============================================
>> Email: iraicu at cs.uchicago.edu
>> Web: http://www.cs.uchicago.edu/~iraicu
>> http://dsl.cs.uchicago.edu/
>> ============================================
>> ============================================
>
> _______________________________________________
> Swift-devel mailing list
> Swift-devel at ci.uchicago.edu
> http://mail.ci.uchicago.edu/mailman/listinfo/swift-devel
>
>
--
Mike Wilde
Computation Institute, University of Chicago
Math & Computer Science Division
Argonne National Laboratory
Argonne, IL 60439 USA
tel 630-252-7497 fax 630-252-1997
More information about the Swift-devel
mailing list