This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author ned.deily
Recipients barry, benjamin.peterson, methane, ned.deily, ronaldoussoren, tdsmith, zmwangx
Date 2018-04-15.05:11:19
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1523769083.59.0.682650639539.issue32616@psf.upfronthosting.co.za>
In-reply-to
Content
A followup - Ronald asked:
> w.r.t. detection of the clang/llvm version on Apple's system compiler: Is it worthwhile to do so?

Now that Xcode 9.3 (for macOS 10.13+) is officially released, I ran a quick series of test on it and on the most recent Xcode versions for the last several macOS OS families: 10.12, 10.11, and 10.9 (I didn't have a 10.10 system available at the moment).  Only looking at the most recent supported Xcode/compiler version for each major release is reasonable since I think most people follow Apple's strong encouragement to keep software updated and only use the most recent releases.  And I think most people follow Apple's lead in using their build tools, via Xcode or the command line utilities, rather than a third-party compiler.

By that measure, it seems clear that (1) there is only one current version that exhibits the performance degradation, that is the Xcode 9.2 version labeled Apple LLVM 9.0.0 (clang-900.0.39.2) and (2) that is now only an issue for macOS 10.12 (Sierra) where Xcode 9.2 is (and will likely remain) the most recent version.  For macOS 10.13 (High Sierra), the compiler in the newly released Xcode 9.3 does not exhibit the problem.  And the most recent versions of Xcode for the tested earlier macOS releases do not either.

BTW, the MacPorts project maintains a handy webpage listing Xcode releases and compiler versions by macOS release:
    https://trac.macports.org/wiki/XcodeVersionInfo

Here are the results.  The methodology was to download and build the just released Python 2.7.15rc1 from source using the default configure options, i.e. just ./configure, and then run the test program 3 times with it and then three times with the Apple-provided system /usr/bin/python2.7 as a baseline.

ProductName:	Mac OS X
ProductVersion:	10.13.4
BuildVersion:	17E199
2.7.15rc1 (default, Apr 15 2018, 00:22:29)
[GCC 4.2.1 Compatible Apple LLVM 9.1.0 (clang-902.0.39.1)]
1.181971
1.180467
1.173380
2.7.10 (default, Oct  6 2017, 22:29:07)
[GCC 4.2.1 Compatible Apple LLVM 9.0.0 (clang-900.0.31)]
1.567072
1.587779
1.570056

ProductName:	Mac OS X
ProductVersion:	10.12.6
BuildVersion:	16G1314
2.7.15rc1 (default, Apr 15 2018, 00:31:39)
[GCC 4.2.1 Compatible Apple LLVM 9.0.0 (clang-900.0.39.2)]
6.290989
6.356802
6.295680
2.7.10 (default, Feb  7 2017, 00:08:15)
[GCC 4.2.1 Compatible Apple LLVM 8.0.0 (clang-800.0.34)]
1.306507
1.312231
1.302826

ProductName:	Mac OS X
ProductVersion:	10.11.6
BuildVersion:	15G20015
2.7.15rc1 (default, Apr 15 2018, 00:38:12)
[GCC 4.2.1 Compatible Apple LLVM 8.0.0 (clang-800.0.42.1)]
1.846332
1.855483
1.896600
2.7.10 (default, Oct 23 2015, 19:19:21)
[GCC 4.2.1 Compatible Apple LLVM 7.0.0 (clang-700.0.59.5)]
1.453702
1.426298
1.440348

ProductName:	Mac OS X
ProductVersion:	10.9.5
BuildVersion:	13F1911
2.7.15rc1 (default, Apr 15 2018, 00:42:08)
[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.57)]
1.720303
1.712045
1.710216
2.7.5 (default, Mar  9 2014, 22:15:05)
[GCC 4.2.1 Compatible Apple LLVM 5.0 (clang-500.0.68)]
1.681696
1.685704
1.686414
History
Date User Action Args
2018-04-15 05:11:23ned.deilysetrecipients: + ned.deily, barry, ronaldoussoren, benjamin.peterson, methane, tdsmith, zmwangx
2018-04-15 05:11:23ned.deilysetmessageid: <1523769083.59.0.682650639539.issue32616@psf.upfronthosting.co.za>
2018-04-15 05:11:23ned.deilylinkissue32616 messages
2018-04-15 05:11:19ned.deilycreate