qemu-ppc
[Top][All Lists]
Advanced

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

Re: [PATCH v3 0/4] Add BHRB Facility Support


From: Miles Glenn
Subject: Re: [PATCH v3 0/4] Add BHRB Facility Support
Date: Wed, 18 Oct 2023 10:59:23 -0500

On Thu, 2023-10-19 at 01:06 +1000, Nicholas Piggin wrote:
> On Tue Sep 26, 2023 at 3:43 AM AEST, Glenn Miles wrote:
> > This is a series of patches for adding support for the Branch
> > History
> > Rolling Buffer (BHRB) facility.  This was added to the Power ISA
> > starting with version 2.07.  Changes were subsequently made in
> > version
> > 3.1 to limit BHRB recording to instructions run in problem state
> > only
> > and to add a control bit to disable recording (MMCRA[BHRBRD]).
> > 
> > Version 3 of this series disables branch recording on P8 and P9 due
> > to a drop in performance caused by recording branches outside of
> > problem state.
> 
> Thanks for these, they all look good to me.
> 
> With P10 CPU, Linux perf branch recording appears to work with this
> series, and I confirmed that Linux does disable BHRB in MMCRA at
> boot, so it should not take the performance hit.
> 
> It had a couple of compile bugs, no matter I fixed them, but I often
> trip overppc32 and user-mode when working on TCG too, so building
> with --target-list including ppc64-softmmu,ppc-softmmu,
> ppc64-linux-user,ppc64le-linux-user,ppc-linux-user is good to catch
> those.
> 
> Thanks,
> Nick
> 

Thanks, Nick.  I'll have to remember that for next time!

Glenn

> > Glenn Miles (4):
> >   target/ppc: Add new hflags to support BHRB
> >   target/ppc: Add recording of taken branches to BHRB
> >   target/ppc: Add clrbhrb and mfbhrbe instructions
> >   target/ppc: Add migration support for BHRB
> > 
> >  target/ppc/cpu.h                       |  24 ++++++
> >  target/ppc/cpu_init.c                  |  39 +++++++++-
> >  target/ppc/helper.h                    |   5 ++
> >  target/ppc/helper_regs.c               |  35 +++++++++
> >  target/ppc/insn32.decode               |   8 ++
> >  target/ppc/machine.c                   |  23 +++++-
> >  target/ppc/misc_helper.c               |  46 +++++++++++
> >  target/ppc/power8-pmu-regs.c.inc       |   5 ++
> >  target/ppc/power8-pmu.c                |  48 +++++++++++-
> >  target/ppc/power8-pmu.h                |  11 ++-
> >  target/ppc/spr_common.h                |   1 +
> >  target/ppc/translate.c                 | 101
> > +++++++++++++++++++++++--
> >  target/ppc/translate/bhrb-impl.c.inc   |  43 +++++++++++
> >  target/ppc/translate/branch-impl.c.inc |   2 +-
> >  14 files changed, 374 insertions(+), 17 deletions(-)
> >  create mode 100644 target/ppc/translate/bhrb-impl.c.inc




reply via email to

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