#5219: Build ATLAS in dist mode with SSE2 only
--------------------------+-------------------------------------------------
Reporter: mabshoff | Owner: mabshoff
Type: defect | Status: assigned
Priority: critical | Milestone: sage-3.4
Component: distribution | Keywords:
--------------------------+-------------------------------------------------
Comment(by mabshoff):
Ok, no need to do something stupid with the probes. Clint come to the
rescue:
{{{
> * The other issue concerns selecting a maximum SSE level. Right now I
>can pick some Arch, but the SSE level up to SSE3 (==PNI) is determined
>by the probes. So even if I pick a PIII for example I end up with SSE3
>>support if the CPU supplies it. So far the trick I am using is to have
>the SSE probe unconditionally return "FAILURE", so that for example I
>get a SSE2 only ATLAS on a CPU with SSE3 or more. Obviously
>performance will suck, but in case of Sage it is between "illegal
>instructions" and working binaries, so performance is something I can
>sacrifice for that.
>
>Is there a plan to make the SSE level selectable as a config option?
Not only is there a plan, but it's been available since 3.8.0! It's not
the easiest thing to grok, because one machine obviously can support many
vector extensions. Here is the line from 'configure --help':
-V # # = ((1<<vecISA1) | (1<<vecISA2) | ... | (1<<vecISAN))
Now, since xprint_enums for some reason doens't print these values out,
I can oh so conveniently scope ATLAS/CONFIG/include/atlconf.h for:
enum ISAEXT {ISA_None=0, ISA_AV, ISA_SSE3, ISA_SSE2, ISA_SSE1,
ISA_3DNow};
Therefore, if I want no vector code at all, I throw '-V -0'; if I want
SSE2 & 1 but not 3, I throw (1<<3)+(1<<4) = 8+16=24, so '-V 24', and
bingo: no SSE3 even on a machine that does SSE3!
Cheers,
Clint
}}}
Cheers,
Michael
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/5219#comment:4>
Sage <http://sagemath.org/>
Sage - Open Source Mathematical Software: Building the Car Instead of
Reinventing the Wheel
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/sage-trac?hl=en
-~----------~----~----~----~------~----~------~--~---