@@ -112,7 +112,7 @@ jobs:
112112 shell : cmd
113113 run : |
114114 cd cpython
115- PCbuild\build.bat %BUILD_FLAGS% ${{ (inputs.pgo == true) && '--pgo' || '' }} ${{ inputs.jit == true && '--experimental-jit' || '' }} ${{ inputs.tier2 == true && '--experimental-jit-interpreter' || '' }} ${{ inputs.nogil == true && '--disable-gil' || '' }} -c Release ${{ inputs.clang == true && '"/p:PlatformToolset=clangcl"' || '' }} ${{ inputs.clang == true && '"/p:LLVMInstallDir=C:\Program Files\LLVM"' || '' }} ${{ inputs.clang == true && '"/p:LLVMToolsVersion=19.1.6"' || '' }} ${{ inputs.clang == true && '--tail-call-interp ' || '' }}
115+ PCbuild\build.bat %BUILD_FLAGS% ${{ (inputs.pgo == true) && '--pgo' || '' }} ${{ inputs.clang == true && '--tail-call-interp' || '' }} ${{ inputs. jit == true && '--experimental-jit' || '' }} ${{ inputs.tier2 == true && '--experimental-jit-interpreter' || '' }} ${{ inputs.nogil == true && '--disable-gil' || '' }} -c Release ${{ inputs.clang == true && '"/p:PlatformToolset=clangcl"' || '' }} ${{ inputs.clang == true && '"/p:LLVMInstallDir=C:\Program Files\LLVM"' || '' }} ${{ inputs.clang == true && '"/p:LLVMToolsVersion=19.1.6"' || '' }}
116116 - name : Copy Python to different location
117117 if : ${{ steps.should_run.outputs.should_run != 'false' }}
118118 run : |
@@ -161,11 +161,6 @@ jobs:
161161 run : |
162162 git gc
163163 - uses : fregante/setup-git-user@v2
164- - name : Setup system Python
165- if : ${{ runner.arch == 'X64' }}
166- uses : actions/setup-python@v5
167- with :
168- python-version : " 3.11"
169164 - name : Checkout CPython
170165 uses : actions/checkout@v4
171166 with :
@@ -211,7 +206,7 @@ jobs:
211206 if : ${{ steps.should_run.outputs.should_run != 'false' }}
212207 run : |
213208 cd cpython
214- ./configure ${{ inputs.pgo == true && '--enable-optimizations --with-lto=full' || '' }} ${{ inputs.tier2 == true && '--enable-experimental-jit=interpreter' || '' }} ${{ inputs.jit == true && '--enable-experimental-jit=yes' || '' }} ${{ inputs.nogil == true && '--disable-gil' || '' }} ${{ inputs.clang == true && '--with-tail-call-interp' || '' }}
209+ ./configure --enable-option-checking=fatal ${{ inputs.pgo == true && '--enable-optimizations --with-lto=full' || '' }} ${{ inputs.tier2 == true && '--enable-experimental-jit=interpreter' || '' }} ${{ inputs.jit == true && '--enable-experimental-jit=yes' || '' }} ${{ inputs.nogil == true && '--disable-gil' || '' }} ${{ inputs.clang == true && '--with-tail-call-interp' || '' }} ${PYTHON_CONFIGURE_FLAGS:- }
215210 make ${{ runner.arch == 'ARM64' && '-j' || '-j4' }}
216211 ./python -VV
217212 - name : Install pyperformance
@@ -221,7 +216,7 @@ jobs:
221216 - name : Tune system
222217 if : ${{ steps.should_run.outputs.should_run != 'false' }}
223218 run : |
224- sudo LD_LIBRARY_PATH=$LD_LIBRARY_PATH venv/bin/python -m pyperf system ${{ inputs.perf && 'reset' || 'tune' }}
219+ sudo LD_LIBRARY_PATH=$LD_LIBRARY_PATH venv/bin/python -m pyperf system ${{ inputs.perf && 'reset' || 'tune ${CPU_AFFINITY:+--affinity="$CPU_AFFINITY"} ' }}
225220 - name : Tune for (Linux) perf
226221 if : ${{ steps.should_run.outputs.should_run != 'false' && inputs.perf }}
227222 run : |
@@ -232,6 +227,10 @@ jobs:
232227 run : |
233228 rm -rf ~/.debug/*
234229 venv/bin/python -m bench_runner run_benchmarks ${{ inputs.perf && 'perf' || 'benchmark' }} cpython/python ${{ inputs.fork }} ${{ inputs.ref }} ${{ inputs.benchmarks || 'all' }} ${{ env.flags }} --run_id ${{ github.run_id }}
230+ - name : Untune system
231+ if : ${{ steps.should_run.outputs.should_run != 'false' }}
232+ run : |
233+ sudo LD_LIBRARY_PATH=$LD_LIBRARY_PATH venv/bin/python -m pyperf system reset
235234 # Pull again, since another job may have committed results in the meantime
236235 - name : Pull benchmarking
237236 if : ${{ steps.should_run.outputs.should_run != 'false' && !inputs.perf }}
@@ -321,11 +320,9 @@ jobs:
321320 if : ${{ steps.should_run.outputs.should_run != 'false' }}
322321 run : |
323322 cd cpython
324- ./configure ${{ inputs.pgo == true && '--enable-optimizations --with-lto=full' || '' }} ${{ inputs.tier2 == true && '--enable-experimental-jit=interpreter' || '' }} ${{ inputs.jit == true && '--enable-experimental-jit=yes' || '' }} ${{ inputs.nogil == true && '--disable-gil' || '' }} ${{ inputs.clang == true && '--with-tail-call-interp' || '' }}
323+ ./configure --enable-option-checking=fatal ${{ inputs.pgo == true && '--enable-optimizations --with-lto=full' || '' }} ${{ inputs.tier2 == true && '--enable-experimental-jit=interpreter' || '' }} ${{ inputs.jit == true && '--enable-experimental-jit=yes' || '' }} ${{ inputs.nogil == true && '--disable-gil' || '' }} ${{ inputs.clang == true && '--with-tail-call-interp' || '' }} ${PYTHON_CONFIGURE_FLAGS:- }
325324 make -j4
326325 ./python.exe -VV
327- # On macos ARM64, actions/setup-python isn't available, so we rely on a
328- # pre-installed homebrew one, used through a venv
329326 - name : Install pyperformance
330327 if : ${{ steps.should_run.outputs.should_run != 'false' }}
331328 run : |
0 commit comments