[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
02/04: gnu: python: Enable optimizations.
From: |
guix-commits |
Subject: |
02/04: gnu: python: Enable optimizations. |
Date: |
Thu, 10 Jun 2021 21:00:02 -0400 (EDT) |
roptat pushed a commit to branch core-updates
in repository guix.
commit 99d450b085b7bf44d669093f6c9964391ce1b451
Author: Julien Lepiller <julien@lepiller.eu>
AuthorDate: Thu Mar 18 23:41:40 2021 +0100
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.
---
gnu/packages/python.scm | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index 9e29733..ca15147 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -184,7 +184,10 @@
"--with-system-expat" ;for XML support
"--with-system-ffi" ;build ctypes
"--with-ensurepip=install" ;install pip and setuptools
+ "--with-computed-gotos" ;main interpreter loop optimization
+ "--with-lto" ;increase size by 20MB, but 15% speedup
"--enable-unicode=ucs4"
+ "--enable-optimizations"
;; Prevent the installed _sysconfigdata.py from retaining a
reference
;; to coreutils.
@@ -198,8 +201,13 @@
"ac_cv_file__dev_ptmx=no"
"ac_cv_file__dev_ptc=no")
'())
+ ;; -fno-semantic-interposition reinstates some optimizations by
gcc
+ ;; leading to around 15% speedup. This is the default starting
from
+ ;; python 3.10.
+ "CFLAGS=-fno-semantic-interposition"
(string-append "LDFLAGS=-Wl,-rpath="
- (assoc-ref %outputs "out") "/lib"))
+ (assoc-ref %outputs "out") "/lib"
+ " -fno-semantic-interposition"))
;; With no -j argument tests use all available cpus, so provide one.
#:make-flags
(list (string-append