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