Hi.<br>I am from EPFL where we are trying to implement GMP-ECM on the PS3. There is already a version of Linux which has been installed. Our idea was to run one curve per processor. I would be interested in looking at the some code that has already been adapted to Cell processor or the PowerPC architecture which uses the GMP library.
<br>Thanks.<br><br><div><span class="gmail_quote">On 18/04/07, <b class="gmail_sendername"><a href="mailto:gmp-discuss-request@swox.com">gmp-discuss-request@swox.com</a></b> &lt;<a href="mailto:gmp-discuss-request@swox.com">
gmp-discuss-request@swox.com</a>&gt; wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Send gmp-discuss mailing list submissions to
<span class="sl" id="sp_0"><img class="clk" id="ldp" src="images/opentriangle.gif" onmouseover="top.js._SC_LangMenuHover(window,event)" onmouseout="top.js._SC_LangMenuOut(window,event)" onmousedown="top.js._SC_LangMenuHit(window,event,&#39;0&#39;)">
</span><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="mailto:gmp-discuss@swox.com">gmp-discuss@swox.com</a><br><br>To subscribe or unsubscribe via the World Wide Web, visit<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="https://gmplib.org/mailman/listinfo/gmp-discuss">https://gmplib.org/mailman/listinfo/gmp-discuss
</a><br>or, via email, send a message with subject or body &#39;help&#39; to<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="mailto:gmp-discuss-request@swox.com">gmp-discuss-request@swox.com</a><br><br>You can reach the person managing the list at<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="mailto:gmp-discuss-owner@swox.com">gmp-discuss-owner@swox.com</a><br><br>When replying, please edit your Subject line so it is more specific<br>than &quot;Re: Contents of gmp-discuss digest...&quot;<br><br>
<br>Today&#39;s Topics:<br><br>&nbsp;&nbsp; 1. GMP on the Cell processor (Torbjorn Granlund)<br>&nbsp;&nbsp; 2. Re: GMP on the Cell processor (Michael Abshoff)<br>&nbsp;&nbsp; 3. Re: GMP on the Cell processor (Paul Leyland)<br><br><br>----------------------------------------------------------------------
<br><br>Message: 1<br>Date: 17 Apr 2007 21:15:26 +0200<br>From: Torbjorn Granlund &lt;<a href="mailto:tg@swox.com">tg@swox.com</a>&gt;<br>Subject: GMP on the Cell processor<br>To: <a href="mailto:gmp-discuss@swox.com">gmp-discuss@swox.com
</a><br>Message-ID: &lt;<a href="mailto:86bqhm6cdt.fsf@king.swox.se">86bqhm6cdt.fsf@king.swox.se</a>&gt;<br>Content-Type: text/plain; charset=iso-8859-1<br><br>&nbsp;&nbsp;Has anyone on this list thought of porting GMP to the Cell processor?
<br>&nbsp;&nbsp;Would anyone be interested in using GMP if it was on the Cell?<br><br>I think it would be tricky to make a port that would do justice to the<br>Cell.&nbsp;&nbsp;The parallelism in GMP is fine-grained, at least as long as the<br>
operands are not really huge.<br><br>If you want to work on a GMP Cell port, please start by studying how<br>to write a plain basecase multiplication (mpn_mul_basecase) for the<br>processor.&nbsp;&nbsp;The divide-and-conquer structure of most algorithms in GMP
<br>will make use of of mpn_mul_basecase.<br><br>&nbsp;&nbsp;On a similar note, is there a version of GMP for the Altivec<br>&nbsp;&nbsp;which is this vector extension for some (but not all) PowerPC<br>&nbsp;&nbsp;CPU&#39;s ?<br><br>GMP 4.2 makes use of Altivec when it is available.&nbsp;&nbsp;(There are some
<br>flaws in configure that made the altivec recognition unreliable,<br>though.)<br><br>--<br>Torbj?rn<br><br><br>------------------------------<br><br>Message: 2<br>Date: Tue, 17 Apr 2007 22:16:07 +0200 (CEST)<br>From: &quot;Michael Abshoff&quot;
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;<a href="mailto:Michael.Abshoff@fsmath.mathematik.uni-dortmund.de">Michael.Abshoff@fsmath.mathematik.uni-dortmund.de</a>&gt;<br>Subject: Re: GMP on the Cell processor<br>To: <a href="mailto:gmp-discuss@swox.com">
gmp-discuss@swox.com</a><br>Message-ID:<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;<a href="mailto:63903.80.144.208.181.1176840967.squirrel@fsmath.mathematik.uni-dortmund.de">63903.80.144.208.181.1176840967.squirrel@fsmath.mathematik.uni-dortmund.de
</a>&gt;<br><br>Content-Type: text/plain;charset=iso-8859-1<br><br>Torbjorn Granlund wrote:<br>&gt;&nbsp;&nbsp; On a similar note, is there a version of GMP for the Altivec<br>&gt;&nbsp;&nbsp; which is this vector extension for some (but not all) PowerPC
<br>&gt;&nbsp;&nbsp; CPU&#39;s ?<br>&gt;<br>&gt; GMP 4.2 makes use of Altivec when it is available.&nbsp;&nbsp;(There are some<br>&gt; flaws in configure that made the altivec recognition unreliable,<br>&gt; though.)<br>&gt;<br><br>The Cell is a hyprid of a dual Core PowerCore (in order) and up to 8 SPEs
<br>(also in order). The great performance for numerical applications comes<br>from the fact that you can achieve up to 200 GFlops *single* precision and<br>about 1/14 of that for *double* precision with hand tuned code that uses
<br>all the SPEs in parallel. The Power Core just feeds the SPEs. The SPEs<br>also supposedly provide integer operations and because each SPE has 128<br>128bit registers there is certainly potential. Cell blades are rather
<br>costly (dual Cell from IBM at around ~15K$), but you can get a PCI-Express<br>card with a single Cell for around 4K$. To play around there is also an<br>emulator (free as in beer) and a toolchain based on gcc (free as in
<br>freedom ;) that lets you play around provided you have some decent<br>hardware (1.5GHZ PPC, x86, x86-64, 1+G Ram). The emulator supposedly gives<br>you something that is very close (~2%) to the physical CPU because it also
<br>takes into consideration DMA transfers, cache misses and all the other fun<br>stuff.<br><br>I am currently starting to play around with the emulator for some<br>numerical&nbsp;&nbsp;project group I am working with, but provided somebody does
<br>start to port I would certainly be willing to test &amp; debug and maybe code<br>a little. I will also have (limited) access to some real hardware in the<br>future. Because I also do work on other open source projects I do not have
<br>whole lot of time to do so.<br><br>If you own a PS3 you can install Linux and have access to 6 SPEs because<br>the hypervisor of the PS3 only gives you access to those 6 while the 7th<br>is reserved for hypervisor. But it is a relatively cheap way to get one&#39;s
<br>hands on some real Cell hardware.<br><br>Hope that helps,<br><br>Michael<br><br>&gt; --<br>&gt; Torbj?rn<br>&gt; _______________________________________________<br>&gt; gmp-discuss mailing list<br>&gt; <a href="mailto:gmp-discuss@swox.com">
gmp-discuss@swox.com</a><br>&gt; <a href="https://gmplib.org/mailman/listinfo/gmp-discuss">https://gmplib.org/mailman/listinfo/gmp-discuss</a><br>&gt;<br><br><br><br><br>------------------------------<br><br>Message: 3<br>Date: 17 Apr 2007 21:18:22 +0100
<br>From: Paul Leyland &lt;<a href="mailto:paul@leyland.vispa.com">paul@leyland.vispa.com</a>&gt;<br>Subject: Re: GMP on the Cell processor<br>To: Torbjorn Granlund &lt;<a href="mailto:tg@swox.com">tg@swox.com</a>&gt;<br>
Cc: <a href="mailto:gmp-discuss@swox.com">gmp-discuss@swox.com</a><br>Message-ID: &lt;1176841102.17051.26.camel@athlon&gt;<br>Content-Type: text/plain; charset=&quot;us-ascii&quot;<br><br>On Tue, 2007-04-17 at 20:15, Torbjorn Granlund wrote:
<br>&gt;&nbsp;&nbsp; Has anyone on this list thought of porting GMP to the Cell processor?<br>&gt;&nbsp;&nbsp; Would anyone be interested in using GMP if it was on the Cell?<br>&gt;<br>&gt; I think it would be tricky to make a port that would do justice to the
<br>&gt; Cell.&nbsp;&nbsp;The parallelism in GMP is fine-grained, at least as long as the<br>&gt; operands are not really huge.<br><br>I&#39;ve been giving it some thought recently, but the pressure of Real Life<br>(TM) and, especially, Real Work has been such that the thought hasn&#39;t
<br>got very far yet.<br><br>Your (Torbjorn) analysis is accurate but not the whole story, IMO.<br><br>My interest is primarily in integer factorization, several algorithms<br>for which are trivially parallelizable and computationally demanding (as
<br>opposed to memory-intensive).&nbsp;&nbsp;ECM is probably the best example but<br>there are others, including some which are subroutines for other<br>algorithms such as NFS.&nbsp;&nbsp;Other algorithms are not entirely trivial to<br>parallelize but the Chinese Remainder Theorem provides an obvious entry
<br>point into their parallelization.<br><br>Running 7 copies of stage 1 of ECM suimultaneously, each with the same N<br>but different curves, on the SPUs of a PS3 using their local memory is<br>*very* attractive.&nbsp;&nbsp; Their second stages, which are very memory-hungry,
<br>would then be farmed out either to the main PPC or to other more<br>conventional machines.<br><br>GMP for the SPU, a stripped down version if necessary to get it to fit<br>in the limited memory, would be very welcome indeed.
<br><br><br>Paul<br>-------------- next part --------------<br>A non-text attachment was scrubbed...<br>Name: not available<br>Type: application/pgp-signature<br>Size: 189 bytes<br>Desc: This is a digitally signed message part
<br>Url : <a href="http://gmplib.org/list-archives/gmp-discuss/attachments/20070417/20058b25/attachment-0001.bin">http://gmplib.org/list-archives/gmp-discuss/attachments/20070417/20058b25/attachment-0001.bin</a><br><br>------------------------------
<br><br>_______________________________________________<br>gmp-discuss mailing list<br><a href="mailto:gmp-discuss@swox.com">gmp-discuss@swox.com</a><br><a href="https://gmplib.org/mailman/listinfo/gmp-discuss">https://gmplib.org/mailman/listinfo/gmp-discuss
</a><br><br><br>End of gmp-discuss Digest, Vol 44, Issue 12<br>*******************************************<br></blockquote></div><br>