Opened 10 months ago
Closed 5 months ago
#33316 closed enhancement (fixed)
Drop support for GCC < 6.3 in Sage 9.7
Reported by:  Matthias Köppe  Owned by:  

Priority:  major  Milestone:  sage9.7 
Component:  build: configure  Keywords:  
Cc:  Dima Pasechnik, ghkliem  Merged in:  
Authors:  Matthias Koeppe  Reviewers:  Jonathan Kliem 
Report Upstream:  N/A  Work issues:  
Branch:  7c0072e (Commits, GitHub, GitLab)  Commit:  7c0072ee09ae13eb519c42fbe1728bcee7ae6cd7 
Dependencies:  Stopgaps: 
Description
(see Metaticket #32074: Remove support for outdated distros)
This ticket can be used as a dependency for upgrade tickets that impose stricter compiler requirements.
Change History (36)
comment:1 Changed 10 months ago by
Dependencies:  → #33187 

comment:2 Changed 10 months ago by
Branch:  → u/mkoeppe/drop_support_for_gcc___6_3_in_sage_9_7 

comment:3 Changed 10 months ago by
Commit:  → bf96a8acb434f4fbd7ac5b007bea832e58f7f66f 

comment:4 Changed 10 months ago by
Authors:  → Matthias Koeppe 

comment:5 Changed 10 months ago by
Work issues:  → Update platforms tested on GH Actions, best on top of #33062 

comment:6 Changed 7 months ago by
Commit:  bf96a8acb434f4fbd7ac5b007bea832e58f7f66f → 4e8b2c2771c933f7e2fac7c16fb99cc4e240238f 

comment:7 Changed 7 months ago by
Commit:  4e8b2c2771c933f7e2fac7c16fb99cc4e240238f → 9b388ea6e2ab3f2690e61753182acecceef33464 

Branch pushed to git repo; I updated commit sha1. New commits:
9b388ea  .github/workflows/tox*.yml: Update platforms for drop of GCC < 6.3

comment:8 Changed 7 months ago by
Work issues:  Update platforms tested on GH Actions, best on top of #33062 

comment:9 Changed 7 months ago by
Dependencies:  #33187 

comment:10 Changed 7 months ago by
Commit:  9b388ea6e2ab3f2690e61753182acecceef33464 → e7ff2a83a3718923588f56a06c073721b2d18d8b 

Branch pushed to git repo; I updated commit sha1. New commits:
e7ff2a8  build/pkgs/gcc/spkgconfigure.m4: Fixup

comment:11 Changed 7 months ago by
Commit:  e7ff2a83a3718923588f56a06c073721b2d18d8b → 0713f534c47ec586e485bd2e688fdf7fe4a80f53 

Branch pushed to git repo; I updated commit sha1. New commits:
0713f53  .github/workflows/tox*.yml: Replace ubuntuxenial by ubuntuxenialtoolchaingcc_9

comment:12 Changed 7 months ago by
Reviewers:  → https://github.com/mkoeppe/sage/actions/runs/2242737566, https://github.com/mkoeppe/sage/actions/runs/2242737575 

Status:  new → needs_review 
comment:13 Changed 7 months ago by
Cc:  ghkliem added 

On ubuntutrustytoolchaingcc_9minimal
(https://github.com/mkoeppe/sage/runs/6221011844) and standard
, nauty
, ecm
, ntl
fail with
Error: operand size mismatch for
vmovdqa64' or
Error: operand size mismatch for vmovdqu64'
; and fflas_ffpack
fails with many different operand size mismatch
errors.
comment:14 Changed 7 months ago by
I'm guessing the problem is in https://github.com/linboxteam/fflasffpack/blob/b51626baf2715c8b8bcb0c334856b204f9a4a901/fflasffpack/fflas/fflas_simd/simd512_double.inl
They are calling _mm512_and_pd
with const __mm512d
instead of just __m512d
. The problem should mostly go away, because stuff is inlined, but it might fail with g++ 9.
It seems to work with g++ 11.3.0 for me. At least I cannot reproduce the bug, even though I have available the avx512...
instructions. But then again, it works for the other workflows, so this doesn't seem to be a problem in other cases. Just in the toolchaingcc_9minimal
workflow.
Can we configure fflas_ffpack
with disableavx512dq
in this case?
comment:15 followup: 18 Changed 7 months ago by
I'll try first if installing binutils2.26
(and setting PATH="/usr/lib/binutils2.26/bin:$PATH"
) helps.
comment:16 Changed 7 months ago by
Commit:  0713f534c47ec586e485bd2e688fdf7fe4a80f53 → dae2d08286e06f7a5a4c7e5e8931670ecfbda64a 

comment:17 Changed 7 months ago by
Reviewers:  https://github.com/mkoeppe/sage/actions/runs/2242737566, https://github.com/mkoeppe/sage/actions/runs/2242737575 → https://github.com/mkoeppe/sage/actions/runs/2260846479 

comment:18 Changed 7 months ago by
Replying to mkoeppe:
I'll try first if installing
binutils2.26
(and settingPATH="/usr/lib/binutils2.26/bin:$PATH"
) helps.
It seems to work. Ready for review
comment:19 Changed 7 months ago by
Commit:  dae2d08286e06f7a5a4c7e5e8931670ecfbda64a → 33ca13187c3f29b009e5e93f01d0e42fde64a713 

Branch pushed to git repo; I updated commit sha1. New commits:
33ca131  tox.ini, .github/workflows/tox*.yml: Add ubuntukinetic, linuxmint21, fedora37

comment:20 Changed 7 months ago by
Reviewers:  https://github.com/mkoeppe/sage/actions/runs/2260846479 → Jonathan Kliem 

Status:  needs_review → positive_review 
LGTM.
comment:22 followup: 23 Changed 6 months ago by
Status:  positive_review → needs_work 

If configure doesn't find a supported version we should just install it instead of giving users instructions for other configure flags:
configure: error: Given withsystemgcc=force, but no system package could be used. That's an error. Please install the indicated package to continue. (To override this error, use ./configure withoutsystemgcc)
comment:23 Changed 6 months ago by
Status:  needs_work → positive_review 

Replying to vbraun:
If configure doesn't find a supported version we should just install it instead of giving users instructions for other configure flags:
configure: error: Given withsystemgcc=force, but no system package could be used. That's an error. Please install the indicated package to continue. (To override this error, use ./configure withoutsystemgcc)
Volker, it is not a bug, it is how =force
option is meant to be.
comment:25 Changed 6 months ago by
Status:  positive_review → needs_work 

Breaks the Debian 9 buildbot, we can merge this after I get around to update the buildbot config
comment:26 followup: 28 Changed 6 months ago by
Status:  needs_work → positive_review 

See #32074  we're dropping support for Debian 9.
comment:28 Changed 6 months ago by
comment:29 Changed 6 months ago by
Status:  positive_review → needs_work 

so needs_work but not on the ticket
comment:30 Changed 6 months ago by
Replying to vbraun:
Debian 9 is still LTS
but only till 01.07.2022, so we should be dropping it in 9.7, I guess.
comment:31 Changed 6 months ago by
Dependencies:  → #33888 

Status:  needs_work → positive_review 
comment:32 Changed 6 months ago by
Dependencies:  #33888 

comment:33 Changed 6 months ago by
Status:  positive_review → needs_work 

Merge failure on top of:
08609a40ad Trac #33829: sage.graphs: Do not use SAGE_TMP in doctests
eca52b24ab Trac #33922: Add missing title to conf.py
e9bfcd2dd8 Trac #33980: codespell in graphs: fix a few typos
28f70e0932 Trac #31153: Fix latex of elements of multivariate polynomial quotient ring
b36c11c5d7 Trac #33983: sage_setup: Add missing dependency
6edac51d8b Trac #33970: Remove a period sneaked in the documentation website
6d60bf357f Trac #33977: fix pycodestyle E306 in geometry and schemes
edd7a74ed3 Trac #33976: some pycodestyle fixes in pxd and pxi files
b0973afaa7 Trac #33975: get rid of commented oldstyle prints
b3d6a0b8ff Trac #33956: some better .join with iterator inside
a33f2df893 Trac #33949: get rid of have_ring option in singular interface
ad1c3ac34f Trac #33946: fix pycodestyle E306 in rings and algebras
4942ca958b Trac #33945: fix pycodestyle E306 outside of algebras,rings,graphs,schemes,categories
8dad9ce80f Trac #30683: Nu Tamari
346b3b04a5 Trac #33968: Replace $...$ in docstrings by ...
f793558dd1 Trac #33967: sage t: Print git commit hash and SAGE_LOCAL, SAGE_VENV
0e48fececd Trac #33963: wrong sign for symbolic Legendre polynomial at 0
34d562ee2b Trac #33962: wrong sign for value of Legendre polynomial at 0
bd33f87651 Trac #33961: compute square roots modulo powers of two in polynomial time
16af958d67 Trac #33940: enhance maple interface
8d921a4996 Trac #33872: Upgrade memory allocator to 0.1.3
29499f89e2 Trac #33871: Don't run singular in spkgconfigure.m4 when cross compiling
4cc978b96c Trac #33823: sage t optional='sage,!FEATURE'
6b6f0cf0f4 Trac #33776: move method distance_graph to graph.py
65e866a5b1 Trac #23443: More Schubert polynomial shenanigans
a6e696e91d Updated SageMath version to 9.7.beta2
merge was not clean: conflicts in .github/workflows/tox.yml
comment:34 Changed 6 months ago by
Commit:  33ca13187c3f29b009e5e93f01d0e42fde64a713 → 7c0072ee09ae13eb519c42fbe1728bcee7ae6cd7 

Branch pushed to git repo; I updated commit sha1. New commits:
7c0072e  Merge tag '9.7.beta2' into t/33316/drop_support_for_gcc___6_3_in_sage_9_7

comment:35 Changed 6 months ago by
Status:  needs_work → positive_review 

comment:36 Changed 5 months ago by
Branch:  u/mkoeppe/drop_support_for_gcc___6_3_in_sage_9_7 → 7c0072ee09ae13eb519c42fbe1728bcee7ae6cd7 

Resolution:  → fixed 
Status:  positive_review → closed 
Branch pushed to git repo; I updated commit sha1. New commits:
README.md, src/doc/en/installation/source.rst: Update info on GCC versions