From bfd49858822310d9bcccf3b7308a22181e56b215 Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Tue, 20 Nov 2007 09:34:16 +0000 Subject: [PATCH] Added configurations and files for profile guided optimization (PGO). --- PCbuild9/_bsddb.vcproj | 292 +++++++++++++++++++++++++++ PCbuild9/_ctypes.vcproj | 330 +++++++++++++++++++++++++++++++ PCbuild9/_ctypes_test.vcproj | 276 ++++++++++++++++++++++++++ PCbuild9/_elementtree.vcproj | 292 +++++++++++++++++++++++++++ PCbuild9/_msi.vcproj | 284 ++++++++++++++++++++++++++ PCbuild9/_socket.vcproj | 284 ++++++++++++++++++++++++++ PCbuild9/_sqlite3.vcproj | 304 +++++++++++++++++++++++++++- PCbuild9/_ssl.vcproj | 296 ++++++++++++++++++++++++++- PCbuild9/_testcapi.vcproj | 280 ++++++++++++++++++++++++++ PCbuild9/_tkinter.vcproj | 288 +++++++++++++++++++++++++++ PCbuild9/build.bat | 17 ++ PCbuild9/build_pgo.bat | 40 ++++ PCbuild9/bz2.vcproj | 308 ++++++++++++++++++++++++++++- PCbuild9/make_buildinfo.vcproj | 58 ++++++ PCbuild9/make_versioninfo.vcproj | 2 + PCbuild9/pcbuild.sln | 172 ++++++++++++++++ PCbuild9/pginstrument.vsprops | 17 ++ PCbuild9/pgupdate.vsprops | 12 ++ PCbuild9/pyexpat.vcproj | 284 ++++++++++++++++++++++++++ PCbuild9/python.vcproj | 316 +++++++++++++++++++++++++++++ PCbuild9/pythoncore.vcproj | 320 +++++++++++++++++++++++++++++- PCbuild9/pythonw.vcproj | 310 +++++++++++++++++++++++++++++ PCbuild9/select.vcproj | 288 +++++++++++++++++++++++++++ PCbuild9/unicodedata.vcproj | 280 ++++++++++++++++++++++++++ PCbuild9/w9xpopen.vcproj | 288 +++++++++++++++++++++++++++ PCbuild9/winsound.vcproj | 280 ++++++++++++++++++++++++++ 26 files changed, 5900 insertions(+), 18 deletions(-) create mode 100644 PCbuild9/build.bat create mode 100644 PCbuild9/build_pgo.bat create mode 100644 PCbuild9/pginstrument.vsprops create mode 100644 PCbuild9/pgupdate.vsprops diff --git a/PCbuild9/_bsddb.vcproj b/PCbuild9/_bsddb.vcproj index c2e1ffd609b4..c613fd644c3c 100644 --- a/PCbuild9/_bsddb.vcproj +++ b/PCbuild9/_bsddb.vcproj @@ -297,6 +297,298 @@ Name="VCPostBuildEventTool" /> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PCbuild9/_ctypes.vcproj b/PCbuild9/_ctypes.vcproj index 8eb5d69af7be..a6f0f0bfef18 100644 --- a/PCbuild9/_ctypes.vcproj +++ b/PCbuild9/_ctypes.vcproj @@ -289,6 +289,286 @@ Name="VCPostBuildEventTool" /> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -375,6 +655,22 @@ Name="VCCLCompilerTool" /> + + + + + + + + + + + + + + + + + + diff --git a/PCbuild9/_ctypes_test.vcproj b/PCbuild9/_ctypes_test.vcproj index b9cdfb0f42c7..0805ebdac9df 100644 --- a/PCbuild9/_ctypes_test.vcproj +++ b/PCbuild9/_ctypes_test.vcproj @@ -281,6 +281,282 @@ Name="VCPostBuildEventTool" /> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PCbuild9/_elementtree.vcproj b/PCbuild9/_elementtree.vcproj index b7841ba29149..563554aa6a13 100644 --- a/PCbuild9/_elementtree.vcproj +++ b/PCbuild9/_elementtree.vcproj @@ -297,6 +297,298 @@ Name="VCPostBuildEventTool" /> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PCbuild9/_msi.vcproj b/PCbuild9/_msi.vcproj index 61267c4949e4..bc2f68d88099 100644 --- a/PCbuild9/_msi.vcproj +++ b/PCbuild9/_msi.vcproj @@ -289,6 +289,290 @@ Name="VCPostBuildEventTool" /> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PCbuild9/_socket.vcproj b/PCbuild9/_socket.vcproj index 41f4499b352a..afdc1a1f5b83 100644 --- a/PCbuild9/_socket.vcproj +++ b/PCbuild9/_socket.vcproj @@ -289,6 +289,290 @@ Name="VCPostBuildEventTool" /> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PCbuild9/_sqlite3.vcproj b/PCbuild9/_sqlite3.vcproj index 4030e95508dd..e0852140792b 100644 --- a/PCbuild9/_sqlite3.vcproj +++ b/PCbuild9/_sqlite3.vcproj @@ -54,7 +54,7 @@ /> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PCbuild9/_ssl.vcproj b/PCbuild9/_ssl.vcproj index 6bb9531c56df..ef215977606b 100644 --- a/PCbuild9/_ssl.vcproj +++ b/PCbuild9/_ssl.vcproj @@ -161,7 +161,7 @@ > + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PCbuild9/_tkinter.vcproj b/PCbuild9/_tkinter.vcproj index 96c36701b019..18592da1d18d 100644 --- a/PCbuild9/_tkinter.vcproj +++ b/PCbuild9/_tkinter.vcproj @@ -293,6 +293,294 @@ Name="VCPostBuildEventTool" /> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PCbuild9/build.bat b/PCbuild9/build.bat new file mode 100644 index 000000000000..9bc818676fe9 --- /dev/null +++ b/PCbuild9/build.bat @@ -0,0 +1,17 @@ +@echo off +rem A batch program to build or rebuild a particular configuration. +rem just for convenience. + +setlocal +set platf=Win32 +set conf=Release +set build=/build + +:CheckOpts +if "%1"=="-c" (set conf=%2) & shift & shift & goto CheckOpts +if "%1"=="-p" (set platf=%2) & shift & shift & goto CheckOpts +if "%1"=="-r" (set build=/rebuild) & shift & goto CheckOpts + +set cmd=devenv pcbuild.sln %build% "%conf%|%platf%" +echo %cmd% +%cmd% diff --git a/PCbuild9/build_pgo.bat b/PCbuild9/build_pgo.bat new file mode 100644 index 000000000000..22de99753e6e --- /dev/null +++ b/PCbuild9/build_pgo.bat @@ -0,0 +1,40 @@ +@echo off +rem A batch program to build PGO (Profile guided optimization) by first +rem building instrumented binaries, then running the testsuite, and +rem finally building the optimized code. +rem Note, after the first instrumented run, one can just keep on +rem building the PGUpdate configuration while developing. + +setlocal +set platf=Win32 + +rem use the performance testsuite. This is quick and simple +set job1=..\tools\pybench\pybench.py -n 1 -C 1 --with-gc +set path1=..\tools\pybench + +rem or the whole testsuite for more thorough testing +set job2=..\lib\test\regrtest.py +set path2=..\lib + +set job=%job1% +set clrpath=%path1% + +:CheckOpts +if "%1"=="-p" (set platf=%2) & shift & shift & goto CheckOpts +if "%1"=="-2" (set job=%job2%) & (set clrpath=%path2%) & shift & goto CheckOpts + +set folder=%platf%-pgo + + +@echo on +rem build the instrumented version +call build -r -p %platf% -c PGInstrument + +rem remove .pyc files, .pgc files and execute the job +%folder%\python.exe rmpyc.py %clrpath% +del %folder%\*.pgc +%folder%\python.exe %job% + +rem finally build the optimized version +call build -r -p %platf% -c PGUpdate + diff --git a/PCbuild9/bz2.vcproj b/PCbuild9/bz2.vcproj index f458ab8900e6..6c97d236acd2 100644 --- a/PCbuild9/bz2.vcproj +++ b/PCbuild9/bz2.vcproj @@ -54,11 +54,11 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PCbuild9/make_buildinfo.vcproj b/PCbuild9/make_buildinfo.vcproj index 6a6ff1757097..4fb5d77669e8 100644 --- a/PCbuild9/make_buildinfo.vcproj +++ b/PCbuild9/make_buildinfo.vcproj @@ -89,6 +89,64 @@ Name="VCPostBuildEventTool" /> + + + + + + + + + + + + + + + + + + + diff --git a/PCbuild9/make_versioninfo.vcproj b/PCbuild9/make_versioninfo.vcproj index 5199d847ba17..88ecc201c7c5 100644 --- a/PCbuild9/make_versioninfo.vcproj +++ b/PCbuild9/make_versioninfo.vcproj @@ -100,6 +100,8 @@ + + + + diff --git a/PCbuild9/pgupdate.vsprops b/PCbuild9/pgupdate.vsprops new file mode 100644 index 000000000000..826242df6841 --- /dev/null +++ b/PCbuild9/pgupdate.vsprops @@ -0,0 +1,12 @@ + + + + diff --git a/PCbuild9/pyexpat.vcproj b/PCbuild9/pyexpat.vcproj index 788a9ee5c966..5693c1cf865d 100644 --- a/PCbuild9/pyexpat.vcproj +++ b/PCbuild9/pyexpat.vcproj @@ -289,6 +289,290 @@ Name="VCPostBuildEventTool" /> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PCbuild9/python.vcproj b/PCbuild9/python.vcproj index 7982859e987c..0d69dcf9d89e 100644 --- a/PCbuild9/python.vcproj +++ b/PCbuild9/python.vcproj @@ -325,6 +325,322 @@ Name="VCPostBuildEventTool" /> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PCbuild9/pythoncore.vcproj b/PCbuild9/pythoncore.vcproj index 9da012a5c03f..7fd63787eaee 100644 --- a/PCbuild9/pythoncore.vcproj +++ b/PCbuild9/pythoncore.vcproj @@ -60,7 +60,7 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PCbuild9/pythonw.vcproj b/PCbuild9/pythonw.vcproj index e32b42d0dbe3..c8c5573ba48d 100644 --- a/PCbuild9/pythonw.vcproj +++ b/PCbuild9/pythonw.vcproj @@ -315,6 +315,316 @@ Name="VCPostBuildEventTool" /> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PCbuild9/select.vcproj b/PCbuild9/select.vcproj index ba7e88e54689..7dc024acef17 100644 --- a/PCbuild9/select.vcproj +++ b/PCbuild9/select.vcproj @@ -293,6 +293,294 @@ Name="VCPostBuildEventTool" /> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PCbuild9/unicodedata.vcproj b/PCbuild9/unicodedata.vcproj index a61767296c2c..817cd8db0815 100644 --- a/PCbuild9/unicodedata.vcproj +++ b/PCbuild9/unicodedata.vcproj @@ -285,6 +285,286 @@ Name="VCPostBuildEventTool" /> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PCbuild9/w9xpopen.vcproj b/PCbuild9/w9xpopen.vcproj index 6b6bafb9f7e7..837e3a513d87 100644 --- a/PCbuild9/w9xpopen.vcproj +++ b/PCbuild9/w9xpopen.vcproj @@ -298,6 +298,294 @@ Name="VCPostBuildEventTool" /> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PCbuild9/winsound.vcproj b/PCbuild9/winsound.vcproj index 9bb0f54402e9..df9310ce2633 100644 --- a/PCbuild9/winsound.vcproj +++ b/PCbuild9/winsound.vcproj @@ -285,6 +285,286 @@ Name="VCPostBuildEventTool" /> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + -- 2.47.3