emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Time to merge scratch/correct-warning-pos into master, perhaps?


From: Eli Zaretskii
Subject: Re: Time to merge scratch/correct-warning-pos into master, perhaps?
Date: Sun, 06 Feb 2022 20:39:14 +0200

> Date: Sun, 6 Feb 2022 18:09:30 +0000
> Cc: gregory@heytings.org, monnier@iro.umontreal.ca, mattiase@acm.org,
>   larsi@gnus.org, emacs-devel@gnu.org
> From: Alan Mackenzie <acm@muc.de>
> 
> > > > Where are the numbers that show how much slower is the current EQ, for
> > > > the case of EQ and not-EQ objects?
> 
> > > We don't have any such numbers.  Is it even possible to measure this?  On
> > > earlier processors, we could have just counted up processor cycles used
> > > for each instruction, but not any more.
> 
> > Yes, it's possible: use perf.
> 
> I've installed the user side part of perf on my machine.  On reading the
> tutorial (which is very difficult), it seems perf acts like a super
> accurate benchmarking program, which measures program runs.
> 
> Maybe I misunderstand what you meant - but I can't see how perf is able
> to report the cycles, etc., taken by a single execution of an instance of
> EQ.
> 
> What exactly do we want to measure, here?

Perf is capable of showing profiles at a source line granularity.
Since the relation of parts of EQ to equal and non-equal objects is
quite clear, the profile produced by perf can be easily interpreted as
pertaining to either of these two possibilities.  By comparing the
profiles with the old and the new definitions of EQ you should be able
to measure the slowdown we are interested in.

Btw, unlike what you said up-thread, I don't recommend comparing the
version of Emacs before the merge of the branch with today's
codebase.  Instead, I suggest to compile two versions of the same
Emacs codebase, one with the old and simple definition of EQ, the
other with the definition we use now on master.  This should make the
comparison easier, since the only difference will be how EQ is
defined.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]