On 5/5/2011 1:28 AM, Walter Bright wrote:
On 5/4/2011 9:24 PM, David Simcha wrote:
On 5/4/2011 11:59 PM, Walter Bright wrote:
It's past time.
_______________________________________________
phobos mailing list
[email protected]
http://lists.puremagic.com/mailman/listinfo/phobos
I'd really like to get that #$(&@$ parallelism bug solved.
I don't know what to do about it because it seems to
only occur under a ridiculously narrow set of circumstances but
until I figure out for sure what's going on I won't be fully
confident that it's not some horrible concurrency bug. OTOH, I
have no estimate right now of how much longer that's going to
take. My latest thing to note is that sometimes the stack
pointer, of all things, is somehow getting overwritten with the
value of TaskStatus.done. I have absolutely no clue how. I'm
starting to feel the same way about this bug that I usually feel
about the biology problems I try to solve for my thesis
research: The harder I look, the more confused I get.
I feel your pain on that, I've been through that mill many times.
Sometimes it helps to set it down for a moment. Worst case, we
release with a buggy std.parallelism. It's not breaking existing
code because it's new.
I've found the extremely subtle race condition that was destroying
stack-allocated tasks in amap and parallel foreach while they were
still referenced and causing scope closures to be deallocated
prematurely in a few ridiculously rare cases. This is obviously
capable of causing stack corruption. I'm going to try to fix it
tonight, but I'm not guaranteeing anything.
|
_______________________________________________
phobos mailing list
[email protected]
http://lists.puremagic.com/mailman/listinfo/phobos