编译优化
在推理业务场景下,使用毕昇编译器编译安装的Python,能有效提升推理性能。
当前主要使用了毕昇编译器的链接时优化(LTO)和PGO(Profile-Guided Optimization)编译优化能力,了解更多原理请参考《毕昇编译器优化与编程指导》。
编译安装Python
- 安装编译Python所需依赖。Debian系列:
1
sudo apt-get install -y make cmake libsqlite3-dev zlib1g-dev libssl-dev libffi-dev
openEuler系列:1
sudo yum install -y make cmake sqlite-devel zlib-devel openssl-devel libffi-devel
- 执行以下命令配置环境变量,指定毕昇编译器进行编译。
1 2 3
export CC=clang export CXX=clang++ export C=clang
- 执行以下命令,使用wget下载python源码包,当前以Python 3.9.9为例,下载到安装环境的任意目录。
1
wget https://www.python.org/ftp/python/3.9.9/Python-3.9.9.tgz
- 执行以下命令解压源码包。
1
tar -zxvf Python-3.9.9.tgz
- 使用BiShengCompiler编译Python。进入解压后的文件夹,执行配置、编译和安装命令。
1 2 3
cd Python-3.9.9 ./configure --prefix=/usr/local/python3.9.9_bisheng --enable-loadable-sqlite-extensions --enable-shared --with-lto --enable-optimizations make -j32 && make install
- 配置Python环境变量,以安装路径/usr/local/python3.9.9_bisheng为例,请替换为Python实际安装路径。
1 2
export LD_LIBRARY_PATH=/usr/local/python3.9.9_bisheng/lib:$LD_LIBRARY_PATH export PATH=/usr/local/python3.9.9_bisheng/bin:$PATH
父主题: 高性能配置