Hi Will. Power10 patch applied. Thanks for your contributions.
On Mon, Jul 18, 2022 at 9:00 AM William Cohen <wco...@redhat.com> wrote: > > On 5/12/22 15:40, will schmidt wrote: > > On Wed, 2022-05-11 at 14:37 -0400, William Cohen wrote: > >> On 5/10/22 16:52, will schmidt wrote: > >>> On Wed, 2022-05-04 at 10:51 -0400, William Cohen wrote: > >>>> On 2/23/22 14:42, will schmidt wrote: > >>>>> On Wed, 2022-02-23 at 10:33 -0500, William Cohen wrote: > >>>>>> On 2/18/22 17:17, will schmidt wrote: > >>>>>>> Hi, > >>>>>>> I've created a fork of perfmon2/libpfm and pushed > >>>>>>> the powerpc/power10 support into that fork. > >>>>>>> > >>>>>>> > >>>>> <snippage> > >>>>>> Also should there be some tests for the power10 PMU events added > >>>>>> to > >>>>>> tests/validate_power.c? > >>>>>> > >>>>>> -Will Cohen > >>>>>> > >>>>> > >>>>> Hi, > >>>>> > >>>>> I've spun up the changes to validate_power.c for power10, tested, > >>>>> and pushed > >>>>> them to my fork. > >>>>> > >>>>> [ I'm not familiar with the incantations, but the info > >>>>> below should be sufficient to get at the patch :-) ] > >>>>> > >>>>> https://sourceforge.net/u/willschm/perfmon2/ci/a3fd768a5879c93d43377b89450568c9fe9cb0d6/ > >>>>> > >>>>> git clone https://git.code.sf.net/u/willschm/perfmon2 willschm-perfmon2 > >>>>> > >>>>> commit a3fd768a5879c93d43377b89450568c9fe9cb0d6 (HEAD -> master, > >>>>> origin/master, origin/HEAD, > >>>>> refs/patches/master/pushed.perfmon_libpfm_update_verification_test. > >>>>> diff > >>>>> ) > >>>>> Author: Will Schmidt <will_schm...@vnet.ibm.com> > >>>>> Date: Wed Feb 23 12:34:30 2022 -0600 > >>>>> > >>>>> Add power10 to tests/validate_power.c > >>>>> > >>>>> Update perfmon/tests/validate_power.c to add entries > >>>>> for power10. > >>>>> Tested successfully in a Power10 environment. > >>>>> > >>>>> Thanks > >>>>> -Will > >>>>> > >>>> > >>>> Hi, > >>>> > >>>> What is the status of these patches for power10? They are still not > >>>> in the upstream libpfm master git repository. > >>> > >>> Hi, > >>> > >>> A few minutes ago I pushed this patch to my perfmon fork. > >>> > >>> This particular commit is at > >>> https://sourceforge.net/u/willschm/perfmon2/ci/60918a39237a0502fdd3de99a37d39a3d78100bb/ > >>> > >>> with the tree itself available via > >>> git clone https://git.code.sf.net/u/willschm/perfmon2 willschm-perfmon2 > >>> > >>> The relevant detail within is: > >>> > >>> /* > >>> * Documentation on the PMU events for Power10 can be found > >>> * in Appendix E of the Power10 Users Manual. > >>> * The Power10 manual is at > >>> * https://ibm.ent.box.com/v/power10usermanual > >>> * This and other PowerPC related documents can be found at > >>> * https://www-50.ibm.com/systems/power/openpower/ > >>> */ > >>> > >>> > >>> Thanks > >>> -Will (Schmidt) > >>> > >> > >> Hi Will Schmidt, > >> > >> > >> Thanks for the update with the pointer to the power10 event documentation. > >> I was looking though the patches and noticed that following patch has > >> PFM_PMU_POWER10 below the "/* MUST ADD NEW PMU MODELS HERE */" in > >> pfmlib.h. That comment should be adjacent to the PFM_PMU_MAX. > >> > >> https://sourceforge.net/u/willschm/perfmon2/ci/61697515bbc09d7568bd50665f3934bebc0c0485/ > > > > > > Corrected and pushed to the fork. > > > > https://sourceforge.net/u/willschm/perfmon2/ci/1db75b57c0ef6f8c9655059c7f033ddbd8908a4c/ > > > >> > >> What is the utility of the enum power10_events? They are being used to > >> put the events in specific spots in the power10_pe[], but it looks like > >> the way things are generated > >> that the entries would end up at those locations in the array anyway. > >> Eliminating those would reduce > >> https://sourceforge.net/u/willschm/perfmon2/ci/3d783a6db770885d5eddafb390faf146a64d0acd/ > >> by 950+ lines. > > > > Done. Changes made, 950+ lines eliminated. Verified it all still works > > OK. This also touched each of the structure entries to remove the > > constants. > > Changes pushed to fork. > > > > > >> > >> The POWER9 has descriptions (.pme_sort_desc and .pme_long_desc) for > >> virtually all the events. For POWER10 some of the events don't have > >> descriptions. The _ALTx event don't have a descriptions, but the first > >> event has a description. Like: > >> > > > > > > Corrected, changes pushed to fork ( this change was included in the commit > > that eliminated the enum). > > https://sourceforge.net/u/willschm/perfmon2/ci/1e61e646068c4e6678bfdbea30689831ab52bee7 > > > > > > > > That should complete the correction of all of the issues that were > > identified so far. Thanks for the review, etc. > > > > > > https://sourceforge.net/u/willschm/perfmon2/ci/1e61e646068c4e6678bfdbea30689831ab52bee7/log/?path= > > > > > > > > Thanks > > -Will (Schmidt) > > Hi Will Schmidt and Stephane, > > The power10 patches look reasonable with the remove of the unneeded defines > and the inclusion of a pointer to power 10 PMU. > Stephane, do the patches need to be combined into a single patch or would it > be acceptable to pull the patches from Will Schmidt's branch? > > IIRC a thread about z series patches that have been pulled into libpfm said > there was going to be a new release of libpfm. Would it be possible to have > the release after the power10 patches are pulled into libpfm? > > -Will > > > > > > > >> > >> +[ POWER10_PME_PM_DATA_FROM_DL2L3_MOD ] = { > >> + .pme_name = "PM_DATA_FROM_DL2L3_MOD", > >> + .pme_code = 0x0E4240000001C040, > >> + .pme_short_desc = "Data Source;The processor's L1 data cache was > >> reloaded with a line in the M (exclusive) state from another core's L2 or > >> L3 from a distant chip due to a demand miss.", > >> + .pme_long_desc = "Data Source;The processor's L1 data cache was > >> reloaded with a line in the M (exclusive) state from another core's L2 or > >> L3 from a distant chip due to a demand miss.", > >> +}, > >> +[ POWER10_PME_PM_DATA_FROM_DL2L3_MOD_PMC2 ] = { > >> + .pme_name = "PM_DATA_FROM_DL2L3_MOD_ALT2", > >> + .pme_code = 0x0E4240000002C040, > >> + .pme_short_desc = "", > >> + .pme_long_desc = "", > >> +}, > >> +[ POWER10_PME_PM_DATA_FROM_DL2L3_MOD_PMC3 ] = { > >> + .pme_name = "PM_DATA_FROM_DL2L3_MOD_ALT3", > >> + .pme_code = 0x0E4240000003C040, > >> + .pme_short_desc = "", > >> + .pme_long_desc = "", > >> +}, > >> +[ POWER10_PME_PM_DATA_FROM_DL2L3_MOD_PMC4 ] = { > >> + .pme_name = "PM_DATA_FROM_DL2L3_MOD_ALT4", > >> + .pme_code = 0x0E4240000004C040, > >> + .pme_short_desc = "", > >> + .pme_long_desc = "", > >> +}, > >> > >> > >> -Will Cohen > >> > > > _______________________________________________ perfmon2-devel mailing list perfmon2-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/perfmon2-devel