<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css" style="display:none;"><!-- P {margin-top:0;margin-bottom:0;} --></style>
</head>
<body dir="ltr">
<div id="divtagdefaultwrapper" style="font-size:12pt;color:#000000;font-family:Calibri,Helvetica,sans-serif;" dir="ltr">
<p style="margin-top:0;margin-bottom:0">Dear Clemens,</p>
<p style="margin-top:0;margin-bottom:0"><br>
</p>
<p style="margin-top:0;margin-bottom:0">I have declared my function as "inline" and SaC now says about the inner "with loop" : "<span style="font-size: 12pt;">Inner With-loop => no
</span>cudarization<span style="font-size: 12pt;">!".</span></p>
<p style="margin-top:0;margin-bottom:0"><span style="font-size: 12pt;">I suppose it means what it means, that the inner loop in a nested with loop setting can never be "cudarized" ? </span></p>
<p style="margin-top:0;margin-bottom:0"><span style="font-size: 12pt;"><br>
However, even the top level "with loop" cannot be "cudarized", still "B</span>ody<span style="font-size: 12pt;"> of With-Loop to complex => no
</span>cudarization<span style="font-size: 12pt;">!"</span></p>
<p style="margin-top:0;margin-bottom:0"><br>
</p>
<p style="margin-top:0;margin-bottom:0">Also, the inner loop calls a function too, which I've tried to inline, with no effect.</p>
<p style="margin-top:0;margin-bottom:0"><br>
</p>
<p style="margin-top:0;margin-bottom:0">Hopefully, since I've quite slowed down by this issue, the source code is very simple (attached).</p>
<p style="margin-top:0;margin-bottom:0"><br>
</p>
<p style="margin-top:0;margin-bottom:0"><br>
</p>
<p style="margin-top:0;margin-bottom:0"></p>
<p style="font-family: Calibri, Helvetica, sans-serif, EmojiFont, "Apple Color Emoji", "Segoe UI Emoji", NotoColorEmoji, "Segoe UI Symbol", "Android Emoji", EmojiSymbols; font-size: 16px;">
Thank you for your assistance :-)</p>
<p></p>
<p style="margin-top:0;margin-bottom:0"><br>
</p>
<p style="margin-top:0;margin-bottom:0">Best regards,</p>
<p style="margin-top:0;margin-bottom:0">Jonathan</p>
<p style="margin-top:0;margin-bottom:0"><span style="font-size: 12pt;"></p>
<div><br>
</div>
</span>
<p></p>
</div>
<hr style="display:inline-block;width:98%" tabindex="-1">
<div id="divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" style="font-size:11pt" color="#000000"><b>De :</b> Clemens Grelck <clemens.grelck@googlemail.com> de la part de Clemens Grelck <c.grelck@uva.nl><br>
<b>Envoyé :</b> dimanche 18 mars 2018 22:30:07<br>
<b>À :</b> Meyer, Jonathan C; sac-user@sac-home.org<br>
<b>Objet :</b> Re: [sac-user] SaC + cuda</font>
<div> </div>
</div>
<div style="background-color:#FFFFFF">
<div class="x_moz-cite-prefix">Dear Jonathan,<br>
<br>
Welcome to the world of SAC.<br>
<br>
Have you declared your functions euler and relprime as "inline"?<br>
We don't have an inline heuristics, and the cuda backend does not<br>
like function calls in with-loop bodies.<br>
<br>
This goes as follows:<br>
  inline int foo( int a) { return a;}<br>
<br>
Apart from that it might indeed be useful to see your complete <br>
source code, assuming it's not exactly gigantic. ;-)<br>
<br>
Cheers,<br>
  Clemens<br>
<br>
<br>
On 3/18/18 12:21 AM, Meyer, Jonathan C wrote:<br>
</div>
<blockquote type="cite"><style type="text/css" style="display:none">
<!--
p
        {margin-top:0;
        margin-bottom:0}
-->
</style>
<div id="x_divtagdefaultwrapper" dir="ltr" style="">
<p style="margin-top:0; margin-bottom:0">Dear all,</p>
<p style="margin-top:0; margin-bottom:0"><br>
</p>
<p style="margin-top:0; margin-bottom:0">First, I am a total beginner to SaC and functional programming in general.</p>
<p style="margin-top:0; margin-bottom:0"><span style="font-size:12pt">I would therefore greatly appreciate any help :)</span><br>
</p>
<p style="margin-top:0; margin-bottom:0"><br>
</p>
<p style="margin-top:0; margin-bottom:0">I have managed to write some code that works fine using target "mt_pth", with working parallelization.</p>
<p style="margin-top:0; margin-bottom:0">However, despite my desperate tries, SaC can't make it work on GPUs -> "<span style="font-size:12pt">Body of With-Loop to complex => no
</span>cudarization<span style="font-size:12pt">!".</span></p>
<p style="margin-top:0; margin-bottom:0"><span style="font-size:12pt"><br>
</span></p>
<p style="margin-top:0; margin-bottom:0"><span style="font-size:12pt">The loops are : </span></p>
<blockquote style="margin:0 0 0 40px; border:none; padding:0px">
<p style="margin-top:0; margin-bottom:0"><span style="font-size:12pt"></span></p>
<div>- [In main()]</div>
<div>a = with{</div>
<div>                ([0,0] <= [i,j] < [15,1000]) : euler(i*1000+j+1);</div>
<div>}:fold(+, 0);</div>
<div><br>
</div>
<div><br>
</div>
<div>- [In euler()]</div>
<div>
<div style="">a = with {</div>
<div style="">                ([1] <= [i] <= [n]) : relprime(n,i);</div>
</div>
</blockquote>
<blockquote style="margin:0 0 0 40px; border:none; padding:0px">
<p style="margin-top:0; margin-bottom:0"><span style="font-size:12pt"></span></p>
<div>
<div style=""> }:fold(+, 0);</div>
</div>
<div style="">
<p style=""><span style="font-size:12pt"> </span></p>
</div>
</blockquote>
For reference, the goal is to compute the sum of totient in a given range of integers.
<div>If needed, I attached my source code.</div>
<div><br>
</div>
<div>Thank you for your help !</div>
<div><br>
</div>
<div>Best regards,</div>
<div>Jonathan</div>
</div>
<style type="text/css">
<!--
.x_fsize
        {font-family:Arial,Helvetica Neue,Helvetica,sans-serif;
        font-size:10px}
-->
</style>
<div align="center">
<hr align="center" size="2" width="100%">
</div>
<p class="x_fsize"><b><i>Heriot-Watt University is The Times & The Sunday Times International University of the Year 2018</i></b><br>
</p>
<p class="x_fsize">Founded in 1821, Heriot-Watt is a leader in ideas and solutions. With campuses and students across the entire globe we span the world, delivering innovation and educational excellence in business, engineering, design and the physical, social
 and life sciences. <br>
</p>
<p class="x_fsize">This email is generated from the Heriot-Watt University Group, which includes:<br>
</p>
<ol>
<li class="x_fsize">Heriot-Watt University, a Scottish charity registered under number SC000278
</li><li class="x_fsize">Edinburgh Business School a Charity Registered in Scotland, SC026900. Edinburgh Business School is a company limited by guarantee, registered in Scotland with registered number SC173556 and registered office at Heriot-Watt University Finance
 Office, Riccarton, Currie, Midlothian, EH14 4AS </li><li class="x_fsize">Heriot- Watt Services Limited (Oriam), Scotland's national performance centre for sport. Heriot-Watt Services Limited is a private limited company registered is Scotland with registered number SC271030 and registered office at Research &
 Enterprise Services Heriot-Watt University, Riccarton, Edinburgh, EH14 4AS. </li></ol>
<p class="x_fsize">The contents (including any attachments) are confidential. If you are not the intended recipient of this e-mail, any disclosure, copying, distribution or use of its contents is strictly prohibited, and you should please notify the sender
 immediately and then delete it (including any attachments) from your system.</p>
<br>
<fieldset class="x_mimeAttachmentHeader"></fieldset> <br>
<pre>_______________________________________________
sac-user mailing list
<a class="x_moz-txt-link-abbreviated" href="mailto:sac-user@sac-home.org">sac-user@sac-home.org</a>
<a class="x_moz-txt-link-freetext" href="http://lists.sac-home.org/mailman/listinfo/sac-user">http://lists.sac-home.org/mailman/listinfo/sac-user</a>
</pre>
</blockquote>
<br>
<br>
<pre class="x_moz-signature" cols="72">-- 
----------------------------------------------------------------------
Dr Clemens Grelck                                     Science Park 904
University Lecturer                                   1098XH Amsterdam
Programme Director Software Engineering                    Netherlands

University of Amsterdam
Institute for Informatics                        T +31 (0) 20 525 8683
System and Network Engineering Lab               F +31 (0) 20 525 7490

Office C3.109                             staff.fnwi.uva.nl/c.u.grelck
----------------------------------------------------------------------
</pre>
</div>
</body>
</html>