소스 검색

Merge pull request #2579 from hauntsaninja/faster-cpython

Mention how to build for maximum performance
pull/2583/head
Anton Petrov 3 년 전
committed by GitHub
부모
커밋
894bcd8717
No known key found for this signature in database GPG 키 ID: 4AEE18F83AFDEB23
2개의 변경된 파일18개의 추가작업 그리고 0개의 파일을 삭제
  1. +3
    -0
      README.md
  2. +15
    -0
      plugins/python-build/README.md

+ 3
- 0
README.md 파일 보기

@ -396,6 +396,9 @@ You can pass options to Python's `configure` and compiler flags to customize the
see [_Special environment variables_ in Python-Build's README](plugins/python-build/README.md#special-environment-variables)
for details.
**NOTE:** If you'd like a faster interpreter at the cost of longer build times,
see [_Building for maximum performance_ in Python-Build's README](plugins/python-build/README.md#building-for-maximum-performance).
**NOTE:** If you want to use proxy for download, please set the `http_proxy` and `https_proxy`
environment variables.

+ 15
- 0
plugins/python-build/README.md 파일 보기

@ -164,6 +164,21 @@ the version(s) installed with `--enable-shared`.
$ env PYTHON_CONFIGURE_OPTS="--enable-shared" pyenv install 2.7.9
```
### Building for maximum performance
Building CPython with `--enable-optimizations` will result in a faster
interpreter at the cost of significantly longer build times. Most notably, this
enables PGO (profile guided optimization). While your mileage may vary, it is
common for performance improvement from this to be in the ballpark of 30%.
```sh
env PYTHON_CONFIGURE_OPTS='--enable-optimizations --with-lto' PYTHON_CFLAGS='-march=native -mtune=native' pyenv install 3.6.0
```
You can also customize the task used for profile guided optimization by setting
the `PROFILE_TASK` environment variable, for instance, `PROFILE_TASK='-m
test.regrtest --pgo -j0'` will run much faster than the default task.
### Checksum verification
If you have the `shasum`, `openssl`, or `sha256sum` tool installed, python-build will

불러오는 중...
취소
저장