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 vstinner
Recipients methane, pitrou, python-dev, serhiy.storchaka, vstinner, yselivanov
Date 2017-02-01.17:21:32
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1485969692.47.0.737723194089.issue28618@psf.upfronthosting.co.za>
In-reply-to
Content
Victor: "FYI I wrote an article about this issue: https://haypo.github.io/analysis-python-performance-issue.html Sadly, it seems like I was just lucky when adding __attribute__((hot)) fixed the issue, because call_method is slow again!"

I upgraded speed-python server (running benchmarks) to Ubuntu 16.04 LTS to support PGO compilation. I removed all old benchmark results and ran again benchmarks with LTO+PGO. It seems like benchmark results are much better now.

I'm not sure anymore that _Py_HOT_FUNCTION is really useful to get stable benchmarks, but it may help code placement a little bit. I don't think that it hurts, so I suggest to keep it. Since benchmarks were still unstable with _Py_HOT_FUNCTION, I'm not interested to continue to tag more functions with _Py_HOT_FUNCTION. I will now focus on LTO+PGO for stable benchmarks, and ignore small performance difference when PGO is not used.

I close this issue now.
History
Date User Action Args
2017-02-01 17:21:32vstinnersetrecipients: + vstinner, pitrou, methane, python-dev, serhiy.storchaka, yselivanov
2017-02-01 17:21:32vstinnersetmessageid: <1485969692.47.0.737723194089.issue28618@psf.upfronthosting.co.za>
2017-02-01 17:21:32vstinnerlinkissue28618 messages
2017-02-01 17:21:32vstinnercreate