summaryrefslogtreecommitdiff
path: root/configure
diff options
context:
space:
mode:
authorNeil Schemenauer <nas-github@arctrix.com>2019-07-22 12:54:25 -0700
committerGitHub <noreply@github.com>2019-07-22 12:54:25 -0700
commit4e16a4a3112161a5c6981c0588142d4a4673a934 (patch)
treee693b2a20690397eca949976e1848ad94bd995bc /configure
parentd309352c6fd93a51f2b3011ca8c2125d3a5d394b (diff)
downloadcpython-git-4e16a4a3112161a5c6981c0588142d4a4673a934.tar.gz
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 2c49d853a3..4cea98e365 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.