<html><head><meta http-equiv="Content-Type" content="text/html charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><br><div><div>On Jul 21, 2013, at 5:32 PM, Ned Deily <<a href="mailto:nad@acm.org">nad@acm.org</a>> wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><span style="font-family: Arial; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; display: inline !important; float: none; ">In article <252C50D8-</span><a href="mailto:C23D-438D-BAE1-B22E0D65A21A@gmail.com" style="font-family: Arial; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; ">C23D-438D-BAE1-B22E0D65A21A@gmail.com</a><span style="font-family: Arial; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; display: inline !important; float: none; ">>,</span><br style="font-family: Arial; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><span style="font-family: Arial; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; display: inline !important; float: none; ">Raymond Hettinger <</span><a href="mailto:raymond.hettinger@gmail.com" style="font-family: Arial; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; ">raymond.hettinger@gmail.com</a><span style="font-family: Arial; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; display: inline !important; float: none; ">> wrote:</span><br style="font-family: Arial; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><blockquote type="cite" style="font-family: Arial; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; ">Our current Mac OS X builds use GCC-4.2.<br><br>On Python2.7, I ran a comparison of gcc-4.2.1 builds<br>versus gcc-4.8.1 and found that the latter makes a much<br>faster Python. PyBench2.0 shows the total running time<br>dropping from 5653ms to 4571ms. The code is uniformly<br>better in just about every category.<br></blockquote><br style="font-family: Arial; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><span style="font-family: Arial; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; display: inline !important; float: none; ">Interesting. A note about compilers: it looks like the benchmark used<span class="Apple-converted-space"> </span></span><br style="font-family: Arial; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><span style="font-family: Arial; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; display: inline !important; float: none; ">the Apple gcc4.2-frontend / LLVM-backend hybrid compiler that is shipped<span class="Apple-converted-space"> </span></span><br style="font-family: Arial; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><span style="font-family: Arial; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; display: inline !important; float: none; ">with Xcode 4. We don't use that compiler for building any OS X binary<span class="Apple-converted-space"> </span></span><br style="font-family: Arial; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><span style="font-family: Arial; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; display: inline !important; float: none; ">installers, in fact, we blacklist it for Python 3.3+ because we couldn't<span class="Apple-converted-space"> </span></span><br style="font-family: Arial; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><span style="font-family: Arial; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; display: inline !important; float: none; ">get it to produce a working 3.3 interpreter:</span></blockquote></div><div><br></div><div>The results aren't much different using the build published on <a href="http://python.org">python.org</a>.</div><div><br></div><div><insert some joke about an Apple-to-Apple comparsion ;-) ></div><div><br></div><div>Using a fresh OS X install from our website, PyBench clocks in at 5376ms </div><div><br></div><div><br></div><div>Raymond</div><div><div><br></div><div><br></div><div><br></div><div>---------------------------</div><div><br></div><div><div>-------------------------------------------------------------------------------</div><div>PYBENCH 2.0</div><div>-------------------------------------------------------------------------------</div><div>* using CPython 2.7.5 (v2.7.5:ab05e7dd2788, May 13 2013, 13:18:45) [GCC 4.2.1 (Apple Inc. build 5666) (dot 3)]</div><div>* disabled garbage collection</div><div>* system check interval set to maximum: 2147483647</div><div>* using timer: time.time</div><div><br></div><div>Calibrating tests. Please wait... done.</div><div><br></div><div>Running 10 round(s) of the suite at warp factor 10:</div><div><br></div><div>* Round 1 done in 5.459 seconds.</div><div>* Round 2 done in 5.510 seconds.</div><div>* Round 3 done in 5.476 seconds.</div><div>* Round 4 done in 5.473 seconds.</div><div>* Round 5 done in 5.497 seconds.</div><div>* Round 6 done in 5.533 seconds.</div><div>* Round 7 done in 5.520 seconds.</div><div>* Round 8 done in 5.518 seconds.</div><div>* Round 9 done in 5.515 seconds.</div><div>* Round 10 done in 5.515 seconds.</div><div><br></div><div>-------------------------------------------------------------------------------</div><div>Benchmark: 2013-07-21 17:54:13</div><div>-------------------------------------------------------------------------------</div><div><br></div><div> Rounds: 10</div><div> Warp: 10</div><div> Timer: time.time</div><div><br></div><div> Machine Details:</div><div> Platform ID: Darwin-12.4.0-x86_64-i386-64bit</div><div> Processor: i386</div><div><br></div><div> Python:</div><div> Implementation: CPython</div><div> Executable: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python</div><div> Version: 2.7.5</div><div> Compiler: GCC 4.2.1 (Apple Inc. build 5666) (dot 3)</div><div> Bits: 64bit</div><div> Build: May 13 2013 13:18:45 (#v2.7.5:ab05e7dd2788)</div><div> Unicode: UCS2</div><div><br></div><div><br></div><div>Test minimum average operation overhead</div><div>-------------------------------------------------------------------------------</div><div> BuiltinFunctionCalls: 108ms 109ms 0.21us 0.166ms</div><div> BuiltinMethodLookup: 74ms 77ms 0.07us 0.193ms</div><div> CompareFloats: 73ms 73ms 0.06us 0.229ms</div><div> CompareFloatsIntegers: 71ms 71ms 0.08us 0.167ms</div><div> CompareIntegers: 78ms 78ms 0.04us 0.334ms</div><div> CompareInternedStrings: 76ms 77ms 0.05us 0.842ms</div><div> CompareLongs: 69ms 70ms 0.07us 0.196ms</div><div> CompareStrings: 61ms 61ms 0.06us 0.566ms</div><div> CompareUnicode: 66ms 68ms 0.09us 0.431ms</div><div> ComplexPythonFunctionCalls: 98ms 101ms 0.51us 0.280ms</div><div> ConcatStrings: 166ms 179ms 0.36us 0.324ms</div><div> ConcatUnicode: 79ms 81ms 0.27us 0.220ms</div><div> CreateInstances: 105ms 107ms 0.96us 0.232ms</div><div> CreateNewInstances: 84ms 88ms 1.04us 0.233ms</div><div> CreateStringsWithConcat: 95ms 96ms 0.10us 0.552ms</div><div> CreateUnicodeWithConcat: 70ms 72ms 0.18us 0.222ms</div><div> DictCreation: 79ms 80ms 0.20us 0.221ms</div><div> DictWithFloatKeys: 83ms 84ms 0.09us 0.414ms</div><div> DictWithIntegerKeys: 87ms 88ms 0.07us 0.552ms</div><div> DictWithStringKeys: 65ms 66ms 0.06us 0.552ms</div><div> ForLoops: 58ms 58ms 2.34us 0.039ms</div><div> IfThenElse: 65ms 66ms 0.05us 0.414ms</div><div> ListSlicing: 72ms 89ms 6.38us 0.055ms</div><div> NestedForLoops: 79ms 82ms 0.05us 0.014ms</div><div> NestedListComprehensions: 94ms 96ms 7.98us 0.056ms</div><div> NormalClassAttribute: 81ms 81ms 0.07us 0.280ms</div><div> NormalInstanceAttribute: 73ms 75ms 0.06us 0.274ms</div><div> PythonFunctionCalls: 85ms 86ms 0.26us 0.166ms</div><div> PythonMethodCalls: 100ms 103ms 0.46us 0.086ms</div><div> Recursion: 110ms 113ms 2.25us 0.276ms</div><div> SecondImport: 104ms 105ms 1.05us 0.112ms</div><div> SecondPackageImport: 111ms 111ms 1.11us 0.110ms</div><div> SecondSubmoduleImport: 138ms 139ms 1.39us 0.110ms</div><div> SimpleComplexArithmetic: 71ms 71ms 0.08us 0.221ms</div><div> SimpleDictManipulation: 91ms 92ms 0.08us 0.276ms</div><div> SimpleFloatArithmetic: 71ms 72ms 0.05us 0.331ms</div><div> SimpleIntFloatArithmetic: 64ms 64ms 0.05us 0.331ms</div><div> SimpleIntegerArithmetic: 64ms 64ms 0.05us 0.337ms</div><div> SimpleListComprehensions: 81ms 83ms 6.93us 0.056ms</div><div> SimpleListManipulation: 61ms 61ms 0.05us 0.359ms</div><div> SimpleLongArithmetic: 65ms 66ms 0.10us 0.168ms</div><div> SmallLists: 90ms 94ms 0.14us 0.221ms</div><div> SmallTuples: 77ms 79ms 0.15us 0.248ms</div><div> SpecialClassAttribute: 79ms 79ms 0.07us 0.281ms</div><div> SpecialInstanceAttribute: 96ms 98ms 0.08us 0.281ms</div><div> StringMappings: 435ms 436ms 1.73us 0.291ms</div><div> StringPredicates: 142ms 143ms 0.20us 1.499ms</div><div> StringSlicing: 106ms 114ms 0.20us 0.466ms</div><div> TryExcept: 68ms 68ms 0.03us 0.414ms</div><div> TryFinally: 72ms 73ms 0.46us 0.221ms</div><div> TryRaiseExcept: 77ms 78ms 1.23us 0.221ms</div><div> TupleSlicing: 90ms 96ms 0.37us 0.036ms</div><div> UnicodeMappings: 100ms 101ms 2.79us 0.402ms</div><div> UnicodePredicates: 77ms 78ms 0.15us 1.820ms</div><div> UnicodeProperties: 95ms 96ms 0.24us 1.503ms</div><div> UnicodeSlicing: 91ms 98ms 0.20us 0.412ms</div><div> WithFinally: 98ms 100ms 0.62us 0.230ms</div><div> WithRaiseExcept: 159ms 163ms 2.04us 0.282ms</div><div>-------------------------------------------------------------------------------</div><div>Totals: 5376ms 5502ms</div><div><br></div><div><br></div></div></div></body></html>