<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>