1@echo off 2rem A batch program to build PGO (Profile guided optimization) by first 3rem building instrumented binaries, then running the testsuite, and 4rem finally building the optimized code. 5rem Note, after the first instrumented run, one can just keep on 6rem building the PGUpdate configuration while developing. 7 8setlocal 9set platf=Win32 10 11rem use the performance testsuite. This is quick and simple 12set job1=..\..\tools\pybench\pybench.py -n 1 -C 1 --with-gc 13set path1=..\..\tools\pybench 14 15rem or the whole testsuite for more thorough testing 16set job2=..\..\lib\test\regrtest.py 17set path2=..\..\lib 18 19set job=%job1% 20set clrpath=%path1% 21 22:CheckOpts 23if "%1"=="-p" (set platf=%2) & shift & shift & goto CheckOpts 24if "%1"=="-2" (set job=%job2%) & (set clrpath=%path2%) & shift & goto CheckOpts 25 26set PGI=%platf%-pgi 27set PGO=%platf%-pgo 28 29@echo on 30rem build the instrumented version 31call build -p %platf% -c PGInstrument 32 33rem remove .pyc files, .pgc files and execute the job 34%PGI%\python.exe rmpyc.py %clrpath% 35del %PGI%\*.pgc 36%PGI%\python.exe %job% 37 38rem finally build the optimized version 39if exist %PGO% del /s /q %PGO% 40call build -p %platf% -c PGUpdate 41 42