summaryrefslogtreecommitdiff
path: root/README.rst
diff options
context:
space:
mode:
authorMiss Islington (bot) <31488909+miss-islington@users.noreply.github.com>2018-05-16 09:34:57 -0700
committerGitHub <noreply@github.com>2018-05-16 09:34:57 -0700
commit447fdd178f1007294db38bf0392a0cf74a49d460 (patch)
tree07d3e788ddd8317559f9077da068562c32cd4247 /README.rst
parent6409e759df0654f4a081eb4a50aadde995382043 (diff)
downloadcpython-git-447fdd178f1007294db38bf0392a0cf74a49d460.tar.gz
bpo-24318: Rewrite the README PGO section. (GH-6863)
* bpo-24318: Rewrite the README PGO section. Merged from a phone on an airplane. :) (cherry picked from commit 93f9a8a5afb58b1d2e4f27bb46d3d4e0fa8c08f0) Co-authored-by: Gregory P. Smith <greg@krypto.org>
Diffstat (limited to 'README.rst')
-rw-r--r--README.rst39
1 files changed, 20 insertions, 19 deletions
diff --git a/README.rst b/README.rst
index ffa9631b02..2341b53c71 100644
--- a/README.rst
+++ b/README.rst
@@ -93,25 +93,26 @@ Profile Guided Optimization
^^^^^^^^^^^^^^^^^^^^^^^^^^^
PGO takes advantage of recent versions of the GCC or Clang compilers. If used,
-either via ``configure --enable-optimizations`` above or by manually running
-``make profile-opt`` regardless of configure flags it will do several steps.
-
-First, the entire Python directory is cleaned of temporary files that may have
-resulted in a previous compilation.
-
-Then, an instrumented version of the interpreter is built, using suitable
-compiler flags for each flavour. Note that this is just an intermediary step.
-The binary resulting from this step is not good for real life workloads as
-it has profiling instructions embedded inside.
-
-After this instrumented version of the interpreter is built, the Makefile will
-automatically run a training workload. This is necessary in order to profile
-the interpreter execution. Note also that any output, both stdout and stderr,
-that may appear at this step is suppressed.
-
-Finally, the last step is to rebuild the interpreter, using the information
-collected in the previous one. The end result will be a Python binary that is
-optimized and suitable for distribution or production installation.
+either via ``configure --enable-optimizations`` or by manually running
+``make profile-opt`` regardless of configure flags, the optimized build
+process will perform the following steps:
+
+The entire Python directory is cleaned of temporary files that may have
+resulted from a previous compilation.
+
+An instrumented version of the interpreter is built, using suitable compiler
+flags for each flavour. Note that this is just an intermediary step. The
+binary resulting from this step is not good for real life workloads as it has
+profiling instructions embedded inside.
+
+After the instrumented interpreter is built, the Makefile will run a training
+workload. This is necessary in order to profile the interpreter execution.
+Note also that any output, both stdout and stderr, that may appear at this step
+is suppressed.
+
+The final step is to build the actual interpreter, using the information
+collected from the instrumented one. The end result will be a Python binary
+that is optimized; suitable for distribution or production installation.
Link Time Optimization