STINNER Victor added the comment:

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.

----------
resolution:  -> fixed
status: open -> closed

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue28618>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to