summaryrefslogtreecommitdiffstats
path: root/configure
diff options
context:
space:
mode:
authorNeil Schemenauer <nas-github@arctrix.com>2019-07-22 19:54:25 (GMT)
committerGitHub <noreply@github.com>2019-07-22 19:54:25 (GMT)
commit4e16a4a3112161a5c6981c0588142d4a4673a934 (patch)
treee693b2a20690397eca949976e1848ad94bd995bc /configure
parentd309352c6fd93a51f2b3011ca8c2125d3a5d394b (diff)
downloadcpython-4e16a4a3112161a5c6981c0588142d4a4673a934.zip
cpython-4e16a4a3112161a5c6981c0588142d4a4673a934.tar.gz
cpython-4e16a4a3112161a5c6981c0588142d4a4673a934.tar.bz2
bpo-36044: Reduce number of unit tests run for PGO build (GH-14702)
Reduce the number of unit tests run for the PGO generation task. This speeds up the task by a factor of about 15x. Running the full unit test suite is slow. This change may result in a slightly less optimized build since not as many code branches will be executed. If you are willing to wait for the much slower build, the old behavior can be restored using './configure [..] PROFILE_TASK="-m test --pgo-extended"'. We make no guarantees as to which PGO task set produces a faster build. Users who care should run their own relevant benchmarks as results can depend on the environment, workload, and compiler tool chain.
Diffstat (limited to 'configure')
-rwxr-xr-xconfigure14
1 files changed, 14 insertions, 0 deletions
diff --git a/configure b/configure
index 2c49d85..4cea98e 100755
--- a/configure
+++ b/configure
@@ -686,6 +686,7 @@ target_vendor
target_cpu
target
LLVM_AR
+PROFILE_TASK
DEF_MAKE_RULE
DEF_MAKE_ALL_RULE
ABIFLAGS
@@ -856,6 +857,7 @@ LDFLAGS
LIBS
CPPFLAGS
CPP
+PROFILE_TASK
PKG_CONFIG
PKG_CONFIG_PATH
PKG_CONFIG_LIBDIR'
@@ -1559,6 +1561,8 @@ Some influential environment variables:
CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if
you have headers in a nonstandard directory <include dir>
CPP C preprocessor
+ PROFILE_TASK
+ Python args for PGO generation task
PKG_CONFIG path to pkg-config utility
PKG_CONFIG_PATH
directories to add to pkg-config's search path
@@ -6426,6 +6430,16 @@ else
DEF_MAKE_RULE="all"
fi
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking PROFILE_TASK" >&5
+$as_echo_n "checking PROFILE_TASK... " >&6; }
+if test -z "$PROFILE_TASK"
+then
+ PROFILE_TASK='-m test --pgo'
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $PROFILE_TASK" >&5
+$as_echo "$PROFILE_TASK" >&6; }
+
# Make llvm-relatec checks work on systems where llvm tools are not installed with their
# normal names in the default $PATH (ie: Ubuntu). They exist under the
# non-suffixed name in their versioned llvm directory.