On 18 Feb, 13:05, Bill Hart <[email protected]> wrote: > There are some problems with this. Compiling MPIR using generic C > code, for example, will yield a *massive* slowdown of *everything*.
It would in general not be necessary to use C, but assembly code for a low-end processor such as an early Pentium should be ok. With that, the slowdown should not be so excessive. > Linbox and ATLAS are also somewhat problematic in this regard. Yes, I can see this. IT's the reason I built the recent Sage binary on an old machine - knowing no instructions would be used which would not work on a more modern machine. Of course that slows the build time. > The solution is to use fat binaries for MPIR on x86 and x86_64 and a > minimum architecture for each other supported architecture. You can > force MPIR to build using whatever architecture you like. However this > should only be done for binaries, not when building from source, where > MPIR will in general be able to do much better. Yes, obviously. I don't know how practical it would be to create a Sage installer which copied appropiate binaries depending on the CPU.; From comments I've seen here before, it appeas that recompiling 2 or 3 pacakages (probably mpir being one of them), that the problem could be cicumvented. > I'll let the Linbox and ATLAS people comment on their packages. > However, I know that ATLAS, when it builds, tries multiple different > assembly strategies until it finds an optimal one. It is possible to > get within 30% of the assembly speed using generic C on some > architectures, but I'm unsure if that can be done with ATLAS itself or > not. The ratio might be somewhat greater, if it even provides a > generic C implementation. > > Bill. I suspect C would be much slower, but if these programs have assembly code for a first generation pentimum, then using that should be ok. Otherwise, just detecting the problem and refusing to install would be better than the current situation where people install software only to find they get misterious crashes -- To post to this group, send an email to [email protected] To unsubscribe from this group, send an email to [email protected] For more options, visit this group at http://groups.google.com/group/sage-devel URL: http://www.sagemath.org
