A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://mail.python.org/pipermail/python-dev/2011-September/113447.html below:

[Python-Dev] Python 3 optimizations continued...

[Python-Dev] Python 3 optimizations continued...Guido van Rossum guido at python.org
Thu Sep 1 19:40:00 CEST 2011
On Thu, Sep 1, 2011 at 10:15 AM, Glyph Lefkowitz
<glyph at twistedmatrix.com> wrote:
>
> On Sep 1, 2011, at 5:23 AM, Cesare Di Mauro wrote:
>
> A simple solution: when tracing is enabled, the new instruction format will
> never be executed (and information tracking disabled as well).
>
> Correct me if I'm wrong: doesn't this mean that no profiler will accurately
> be able to measure the performance impact of the new instruction format, and
> therefore one may get incorrect data when on is trying to make a CPU
> optimization for real-world performance?

Well, profilers already skew results by adding call overhead. But
tracing for debugging and profiling don't do exactly the same thing:
debug tracing stops at every line, but profiling only executes hooks
at the start and end of a function(*). So I think the function body
could still be executed using the new format (assuming this is turned
on/off per code object anyway).

(*) And whenever a generator yields or is resumed. I consider that an
annoying bug though, just as the debugger doesn't do the right thing
with yield -- there's no way to continue until the yielding generator
is resumed short of setting a manual breakpoint on the next line.

-- 
--Guido van Rossum (python.org/~guido)
More information about the Python-Dev mailing list

RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4