2020年2月26日 星期三

Python編譯使用--enable-optimizations

在編譯Python-3.5.6的時候,一開始的configure注意到了有--enable-optimizations。編譯的過程大概就是:
  1. ./configure --enable-optimizations
  2. make -j 16 && make install

打開上述選項在編譯的時候會啟動下面兩項最佳化:
  • Profile guided optimization (PGO):又稱之為profile-directed feedback (PDF)或是feedback-directed optimization (FDO)。像是Windows用的Firefox或是google Chrome在編譯的時候都有加入這個最佳化選項以提高執行時的效能
  • Link Time Optimization (LTO):在將object檔案組合而成程式的時候做得最佳化
看網路上面的說法是Python code可以加快大概10-20%,代價是要花約莫半小時在編譯上。


參考資料

_EOF_

2 則留言: