Community Packages

Please read this before reporting a bug:

Do NOT report bugs when a package is just outdated, or it is in Unsupported. Use the 'flag out of date' link on the package page, or the Mailing List.

REPEAT: Do NOT report bugs for outdated packages!

FS#30632 - [sage-mathematics] version 5.0.1 and 5.1 require CPU with sse2

Attached to Project: Community Packages
Opened by Andrzej Giniewicz (Giniu) - Wednesday, 11 July 2012, 08:02 GMT
Last edited by Daniel Wallace (gtmanfred) - Monday, 23 July 2012, 15:07 GMT
Task Type Bug Report
Category Packages
Status Closed
Assigned To Daniel Wallace (gtmanfred)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 0%
Votes 1
Private No


Since version 5.0.1 sage says it was compiled with sse2. If run on machine without sse2 it isn't working - removing the lock makes 5.0.1 run, but for 5.1 the bug  FS#21592  (segfault during plot) comes back.

It was resolved earlier in community repo (before sage was moved to AUR), but I don't remember how, probably with some compilation flags (fat binary? it seems to be in place - maybe SAGE_ATLAS_ARCH? see tickets linked from - it might help).

It might also be case, that upstream (re)introduced packages that does not respect some flags - but it should be verified before reporting there.
This task depends upon

Closed by  Daniel Wallace (gtmanfred)
Monday, 23 July 2012, 15:07 GMT
Reason for closing:  Upstream
Comment by Daniel Wallace (gtmanfred) - Tuesday, 17 July 2012, 03:14 GMT
try 5.1-2, I added ATLAS_ARCH=base which should cover most everything, and anyone that wants it faster can compile it themselves
Comment by Andrzej Giniewicz (Giniu) - Tuesday, 17 July 2012, 10:43 GMT
nope, still segfaults because of sse2 as listed in file /opt/sage/local/lib/sage-flags.txt - I looked into build script and from:

233 def configure_opt_base():
234 if conf['Intel?']:
235 print 'Base configuration on Intel compatible CPUs.'
236 arch = 'P4'
237 isa_ext = ('SSE2', 'SSE1')

it seems that "base" is SSE1+SSE2. Also, SAGE_ATLAS_ARCH is ignored if building FAT binary:

255 if os.environ.get('SAGE_FAT_BINARY', 'no') == 'yes' and conf['Intel?']:
256 print 'Sage "fat" binary mode set: Building SSE2 only Hammer binary'
257 print 'NOTE: This can result in a Sage that is significantly slower at certain numerical'
258 print 'linear algebra since full FAT binary support has not been implemented yet.'
259 arch = 'HAMMER'
260 isa_ext = ('SSE2', 'SSE1')
261 elif os.environ.has_key('SAGE_ATLAS_ARCH'):

It means, that without patching the line 260 of Atlas SPKG and removing 'SSE2' from it, there is currently no way to build without SSE2. Such patching is I believe outside of scope of package I believe, so on that machine I will just build from source.

Would it be "won't fix: upstream"?