<div dir="auto">Sounds super cool!<br><br><div data-smartmail="gmail_signature">Best,<br>Chris</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Nov 17, 2017 8:20 AM, "Ariel Rokem" <<a href="mailto:arokem@gmail.com">arokem@gmail.com</a>> wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hi everyone, <div><br></div><div>Not a neuroimaging-specific tool, but might still be of interest to folks on this list: we are happy to announce the first release of <i>Cloudknot</i>, a software library that makes it easy to run your existing Python code at scale using AWS Batch. </div><div><br></div><div><div style="font-size:12.8px"><div style="font-size:12.8px"><div style="font-size:12.8px">Documentation is here: <a href="https://richford.github.io/cloudknot/" target="_blank">https://richford.github.<wbr>io/cloudknot/</a></div></div><div style="font-size:12.8px"><br></div><div style="font-size:12.8px">The source code is available on G<span style="font-size:12.8px">ithub: </span><a href="https://github.com/richford/cloudknot" style="font-size:12.8px" target="_blank">https://github.com/ric<wbr>hford/cloudknot</a></div><div style="font-size:12.8px"><br></div><div style="font-size:12.8px">And there are few example use-cases (including analysis of MRI data!) here: <a href="https://github.com/richford/cloudknot/tree/master/examples" target="_blank">https://github.com/richf<wbr>ord/cloudknot/tree/master/exam<wbr>ples</a></div><div style="font-size:12.8px"><div style="font-size:12.8px"><br></div><div style="font-size:12.8px">To use it install with `pip install cloudknot`. A minimal example looks like this:</div><div style="font-size:12.8px"><br></div><div style="font-size:12.8px">```</div><div style="font-size:12.8px"><div>import cloudknot as ck</div><div><br></div><div>def my_awesome_func(b):</div><div> """Here is a function I want to run on AWS Batch<span style="font-size:12.8px">"""</span></div><div> # Always import dependencies within the function</div><div> import numpy as np</div><div><br></div><div> x = np.random.normal(0, b, 1024)</div><div> A = np.random.normal(0, b, (1024, 1024))</div><div><br></div><div> return np.dot(A, x)</div><div><br></div><div># Create a `Knot`, the primary object in cloudknot (<a href="https://richford.github.io/cloudknot/documentation.html#knot" target="_blank">docs</a>)</div><div>knot = ck.Knot(name='my_awesome_func'<wbr>, func=my_awesome_func)</div><div><br></div><div># Submit 20 jobs (each one will run on AWS batch and then send the results back here)</div><div>result_futures = knot.map(range(1, 20))</div></div><div style="font-size:12.8px">```</div><div style="font-size:12.8px"><br></div><div style="font-size:12.8px">We welcome any feedback you have! </div></div><div style="font-size:12.8px"><br></div><div style="font-size:12.8px">Cheers, </div><div style="font-size:12.8px"><br></div><div style="font-size:12.8px">Ariel </div></div></div></div>
<br>______________________________<wbr>_________________<br>
Neuroimaging mailing list<br>
<a href="mailto:Neuroimaging@python.org">Neuroimaging@python.org</a><br>
<a href="https://mail.python.org/mailman/listinfo/neuroimaging" rel="noreferrer" target="_blank">https://mail.python.org/<wbr>mailman/listinfo/neuroimaging</a><br>
<br></blockquote></div></div>