<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
</head>
<body bgcolor="#ffffff" text="#000000">
I think we are on the same page, that if you cannot resolve the
dependencies, things just fall apart. The part I don't get, is why
would you get a deadlock in this situation (which is where this whole
discussion started from), as opposed to an error detecting that the DAG
cannot be constructed? It seems that at the time of DAG construction (I
assume this is the SwiftScript compilation stage), any failure to add
nodes to the DAG due to unresolved dependencies should return an error
and halt, rather than execute until the deadlock happens.<br>
<pre class="moz-signature" cols="72">--
=================================================================
Ioan Raicu, Ph.D.
NSF/CRA Computing Innovation Fellow
=================================================================
Center for Ultra-scale Computing and Information Security (CUCIS)
Department of Electrical Engineering and Computer Science
Northwestern University
2145 Sheridan Rd, Tech M384
Evanston, IL 60208-3118
=================================================================
Cel: 1-847-722-0876
Tel: 1-847-491-8163
Email: <a class="moz-txt-link-abbreviated" href="mailto:iraicu@eecs.northwestern.edu">iraicu@eecs.northwestern.edu</a>
Web: <a class="moz-txt-link-freetext" href="http://www.eecs.northwestern.edu/~iraicu/">http://www.eecs.northwestern.edu/~iraicu/</a>
<a class="moz-txt-link-freetext" href="https://wiki.cucis.eecs.northwestern.edu/">https://wiki.cucis.eecs.northwestern.edu/</a>
=================================================================
=================================================================
</pre>
<br>
<br>
Mihael Hategan wrote:
<blockquote cite="mid:1266601459.22169.294.camel@localhost" type="cite">
<pre wrap="">On Fri, 2010-02-19 at 11:36 -0600, Ioan Raicu wrote:
</pre>
<blockquote type="cite">
<pre wrap="">But doesn't the single assignment criteria prevent loops from
happening in the dependency graph?
</pre>
</blockquote>
<pre wrap=""><!---->
No. What you are probably thinking is that if each node in a graph would
represent an assignment then the loop would only be executed once after
which, due to single assignment, there would be an error.
However the loop is not executed at all, because there is no way to
satisfy the dependencies of both nodes (x depends on y and y depends on
x).
</pre>
</blockquote>
<br>
<pre class="moz-signature" cols="72">--
=================================================================
Ioan Raicu, Ph.D.
NSF/CRA Computing Innovation Fellow
=================================================================
Center for Ultra-scale Computing and Information Security (CUCIS)
Department of Electrical Engineering and Computer Science
Northwestern University
2145 Sheridan Rd, Tech M384
Evanston, IL 60208-3118
=================================================================
Cel: 1-847-722-0876
Tel: 1-847-491-8163
Email: <a class="moz-txt-link-abbreviated" href="mailto:iraicu@eecs.northwestern.edu">iraicu@eecs.northwestern.edu</a>
Web: <a class="moz-txt-link-freetext" href="http://www.eecs.northwestern.edu/~iraicu/">http://www.eecs.northwestern.edu/~iraicu/</a>
<a class="moz-txt-link-freetext" href="https://wiki.cucis.eecs.northwestern.edu/">https://wiki.cucis.eecs.northwestern.edu/</a>
=================================================================
=================================================================
</pre>
</body>
</html>