diff options
| author | Julien Lepiller <julien@lepiller.eu> | 2021-03-18 23:41:40 +0100 |
|---|---|---|
| committer | Julien Lepiller <julien@lepiller.eu> | 2021-06-11 02:39:29 +0200 |
| commit | 99d450b085b7bf44d669093f6c9964391ce1b451 (patch) | |
| tree | ed805603a7a4b85bdcc4ddb9c7d5ceb4ac39500f /gnu/packages/python.scm | |
| parent | 20d52562e5c943b30e48e310b58b94054c3a54e5 (diff) | |
gnu: python: Enable optimizations.
As a result, python execution time of scripts is decreased by 6 to 40%.
gnu/packages/python (python-2.7)[arguments]: Add configure and make flags to
optimize the resulting python.
Diffstat (limited to 'gnu/packages/python.scm')
| -rw-r--r-- | gnu/packages/python.scm | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 9e29733091c..ca15147c56a 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm | |||
| @@ -184,7 +184,10 @@ | |||
| 184 | "--with-system-expat" ;for XML support | 184 | "--with-system-expat" ;for XML support |
| 185 | "--with-system-ffi" ;build ctypes | 185 | "--with-system-ffi" ;build ctypes |
| 186 | "--with-ensurepip=install" ;install pip and setuptools | 186 | "--with-ensurepip=install" ;install pip and setuptools |
| 187 | "--with-computed-gotos" ;main interpreter loop optimization | ||
| 188 | "--with-lto" ;increase size by 20MB, but 15% speedup | ||
| 187 | "--enable-unicode=ucs4" | 189 | "--enable-unicode=ucs4" |
| 190 | "--enable-optimizations" | ||
| 188 | 191 | ||
| 189 | ;; Prevent the installed _sysconfigdata.py from retaining a reference | 192 | ;; Prevent the installed _sysconfigdata.py from retaining a reference |
| 190 | ;; to coreutils. | 193 | ;; to coreutils. |
| @@ -198,8 +201,13 @@ | |||
| 198 | "ac_cv_file__dev_ptmx=no" | 201 | "ac_cv_file__dev_ptmx=no" |
| 199 | "ac_cv_file__dev_ptc=no") | 202 | "ac_cv_file__dev_ptc=no") |
| 200 | '()) | 203 | '()) |
| 204 | ;; -fno-semantic-interposition reinstates some optimizations by gcc | ||
| 205 | ;; leading to around 15% speedup. This is the default starting from | ||
| 206 | ;; python 3.10. | ||
| 207 | "CFLAGS=-fno-semantic-interposition" | ||
| 201 | (string-append "LDFLAGS=-Wl,-rpath=" | 208 | (string-append "LDFLAGS=-Wl,-rpath=" |
| 202 | (assoc-ref %outputs "out") "/lib")) | 209 | (assoc-ref %outputs "out") "/lib" |
| 210 | " -fno-semantic-interposition")) | ||
| 203 | ;; With no -j argument tests use all available cpus, so provide one. | 211 | ;; With no -j argument tests use all available cpus, so provide one. |
| 204 | #:make-flags | 212 | #:make-flags |
| 205 | (list (string-append | 213 | (list (string-append |
