<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Wed, Jul 13, 2016 at 5:06 PM, Eliot Miranda <span dir="ltr">&lt;<a href="mailto:eliot.miranda@gmail.com" target="_blank">eliot.miranda@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div>Well, I won&#39;t stand in the way of you gaining more performance; quite the opposite; I encourage it.  If you have energy here please apply it.  But it would be nice if you added the speedups to our code base rather than introduced a dependency on GMP.</div></div></div></div></blockquote><div><br></div><div>Yes, it would be awesome to improve large integer performance without introducing a dependency on GMP. I think the smallest thing that would have the biggest impact in performance is implementing highly optimized multiplication (and perhaps division) for x86/x86_64/arm. If it was not because of the license problems, we could just copy a couple of .S files straight from GMP source code...</div><div><br></div><div>Now I&#39;m very much focused on the Smalltalk side of my project. But if no one does it first, I&#39;ll give it a shot.</div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div></div><div>I was going to suggest working with Sista, but that leaves the interpreter VMs out in the cold.</div><div><br></div></div></div></div></blockquote><div><br></div><div>Yeah, I&#39;m looking forward to Sista. I was planning to implement some primitives for what I think are the main bottlenecks (mostly operations with arrays of integers or arrays of integers mod n where n fits in a 32 bits register for example), but I&#39;m kind of (speculatively) hoping that speculative optimizations might achieve similar performance as writing those primitives in C  \o/</div><div><br></div></div></div></div>