diff --git a/.gitignore b/.gitignore index 5142357..bbcc85c 100644 --- a/.gitignore +++ b/.gitignore @@ -27,3 +27,4 @@ papi-4.1.0.tar.gz /papi-7.0.0.tar.gz /papi-7.0.1.tar.gz /papi-7.1.0.tar.gz +/papi-7.2.0.tar.gz diff --git a/papi-avail-path-fix.patch b/papi-avail-path-fix.patch new file mode 100644 index 0000000..a1718f6 --- /dev/null +++ b/papi-avail-path-fix.patch @@ -0,0 +1,34 @@ +From fd36e088d4fc883a2ab8979fcbeb8c669553f1d2 Mon Sep 17 00:00:00 2001 +From: Aaron Merey +Date: Tue, 8 Jul 2025 15:45:09 -0400 +Subject: [PATCH] Avoid using srcdir path for papi_component_avail + +--- + src/run_tests.sh | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/run_tests.sh b/src/run_tests.sh +index 1b11e82..16b44e9 100755 +--- a/src/run_tests.sh ++++ b/src/run_tests.sh +@@ -48,7 +48,7 @@ if [ "x$VALGRIND" != "x" ]; then + fi + + # Check for active 'perf_event' component +-PERF_EVENT_ACTIVE=$(utils/papi_component_avail | awk '/Active components:/{flag=1; next} flag' | grep -q "perf_event" && echo "true" || echo "false") ++PERF_EVENT_ACTIVE=$(papi_component_avail | awk '/Active components:/{flag=1; next} flag' | grep -q "perf_event" && echo "true" || echo "false") + + if [ "$PERF_EVENT_ACTIVE" = "true" ]; then + VTESTS=`find validation_tests/* -prune -perm -u+x -type f ! -name "*.[c|h]"`; +@@ -60,7 +60,7 @@ else + fi + + # List of active components +-ACTIVE_COMPONENTS_PATTERN=$(utils/papi_component_avail | awk '/Active components:/{flag=1; next} flag' | grep "Name:" | sed 's/Name: //' | awk '{print $1}' | paste -sd'|' -) ++ACTIVE_COMPONENTS_PATTERN=$(papi_component_avail | awk '/Active components:/{flag=1; next} flag' | grep "Name:" | sed 's/Name: //' | awk '{print $1}' | paste -sd'|' -) + + # Find the test files, filtering for only the active components + COMPTESTS=$(find components/*/tests -perm -u+x -type f ! \( -name "*.[c|h]" -o -name "*.cu" -o -name "*.so" \) | grep -E "components/($ACTIVE_COMPONENTS_PATTERN)/") +-- +2.50.0 + diff --git a/papi-libsde.patch b/papi-libsde.patch deleted file mode 100644 index 7fb522b..0000000 --- a/papi-libsde.patch +++ /dev/null @@ -1,33 +0,0 @@ -commit 2f37f74ea25f850835b22fa617938264bd158134 -Author: William Cohen -Date: Thu Apr 25 10:55:36 2024 -0400 - - SDE_LIB: Build libsde.so.1.0 with the CFLAGS and LDFLAGS passed in - - A recent annocheck of the papi RPMS showed that libsde.so.1.0 was not - built with the expected flags passed into the RPM build. Minor - changes were made to src/sde_lib/Makefile to use the CFLAGS and - LDFLAGS passed in. - -diff --git a/src/sde_lib/Makefile b/src/sde_lib/Makefile -index 67ef5987..8518f92e 100644 ---- a/src/sde_lib/Makefile -+++ b/src/sde_lib/Makefile -@@ -1,7 +1,7 @@ - CC ?= gcc - SDE_INC = -I. -I.. - SDE_LD = -ldl -pthread --CFLAGS = -Wextra -Wall -O2 -+CFLAGS += -Wextra -Wall -O2 - - %_d.o: %.c - $(CC) -c -Bdynamic -fPIC -shared -fvisibility=hidden $(CFLAGS) $(SDE_INC) $< -o $@ -@@ -14,7 +14,7 @@ SOBJS=$(patsubst %.c,%_s.o,$(wildcard *.c)) - all: dynamic static - - dynamic: $(DOBJS) -- $(CC) -Bdynamic -fPIC -shared -Wl,-soname -Wl,libsde.so -fvisibility=hidden $(CFLAGS) $(DOBJS) -lrt -ldl -pthread -o libsde.so.1.0 -+ $(CC) $(LDFLAGS) -Bdynamic -fPIC -shared -Wl,-soname -Wl,libsde.so -fvisibility=hidden $(CFLAGS) $(DOBJS) -lrt -ldl -pthread -o libsde.so.1.0 - rm -f *_d.o - - static: $(SOBJS) diff --git a/papi-python3.patch b/papi-python3.patch deleted file mode 100644 index c5e7509..0000000 --- a/papi-python3.patch +++ /dev/null @@ -1,10 +0,0 @@ -diff --git a/src/high-level/scripts/papi_hl_output_writer.py b/src/high-level/scripts/papi_hl_output_writer.py -index 123d2cd0..34bfbd73 100755 ---- a/src/high-level/scripts/papi_hl_output_writer.py -+++ b/src/high-level/scripts/papi_hl_output_writer.py -@@ -1,4 +1,4 @@ --#!/usr/bin/python -+#!/usr/bin/python3 - from __future__ import division - from collections import OrderedDict - diff --git a/papi-revert-arm-test.patch b/papi-revert-arm-test.patch new file mode 100644 index 0000000..905039c --- /dev/null +++ b/papi-revert-arm-test.patch @@ -0,0 +1,267 @@ +From fe1124b81a07290ff0c88e04cc6348b1c438eecd Mon Sep 17 00:00:00 2001 +From: Aaron Merey +Date: Wed, 16 Jul 2025 17:04:09 -0400 +Subject: [PATCH] Revert "validation_tests: Add load/store ARM assembly + testcode" + +This reverts commit 7710a20ed72bb984b52a1d575a2d707d548de35b. +--- + src/validation_tests/Makefile.recipies | 11 ++--- + src/validation_tests/load_store_testcode.c | 57 ---------------------- + src/validation_tests/papi_ld_ins.c | 29 +++-------- + src/validation_tests/papi_sr_ins.c | 28 +++-------- + src/validation_tests/testcode.h | 4 -- + 5 files changed, 19 insertions(+), 110 deletions(-) + delete mode 100644 src/validation_tests/load_store_testcode.c + +diff --git a/src/validation_tests/Makefile.recipies b/src/validation_tests/Makefile.recipies +index c5ea36582..8949e5e9c 100644 +--- a/src/validation_tests/Makefile.recipies ++++ b/src/validation_tests/Makefile.recipies +@@ -38,9 +38,6 @@ instructions_testcode.o: instructions_testcode.c testcode.h + matrix_multiply.o: matrix_multiply.c matrix_multiply.h + $(CC) $(INCLUDE) $(CFLAGS) $(OPTFLAGS) -O1 -c matrix_multiply.c + +-load_store_testcode.o: load_store_testcode.c testcode.h +- $(CC) $(INCLUDE) $(CFLAGS) $(OPTFLAGS) -c load_store_testcode.c +- + fp_validation_hl: fp_validation_hl.o $(TESTLIB) $(PAPILIB) flops_testcode.o + $(CC) -o fp_validation_hl fp_validation_hl.o $(TESTLIB) flops_testcode.o $(PAPILIB) $(LDFLAGS) $(EXTRALIB) -lpthread + +@@ -84,8 +81,8 @@ papi_fp_ops: papi_fp_ops.o $(TESTLIB) $(PAPILIB) display_error.o branches_testco + papi_hw_int: papi_hw_int.o $(TESTLIB) $(PAPILIB) + $(CC) -o papi_hw_int papi_hw_int.o $(TESTLIB) $(PAPILIB) $(LDFLAGS) $(EXTRALIB) + +-papi_ld_ins: papi_ld_ins.o $(TESTLIB) $(PAPILIB) display_error.o matrix_multiply.o load_store_testcode.o +- $(CC) -o papi_ld_ins papi_ld_ins.o $(TESTLIB) display_error.o matrix_multiply.o load_store_testcode.o $(PAPILIB) $(LDFLAGS) $(EXTRALIB) ++papi_ld_ins: papi_ld_ins.o $(TESTLIB) $(PAPILIB) display_error.o matrix_multiply.o ++ $(CC) -o papi_ld_ins papi_ld_ins.o $(TESTLIB) display_error.o matrix_multiply.o $(PAPILIB) $(LDFLAGS) $(EXTRALIB) + + papi_l1_dca: papi_l1_dca.o $(TESTLIB) $(PAPILIB) cache_testcode.o display_error.o matrix_multiply.o + $(CC) -o papi_l1_dca papi_l1_dca.o $(TESTLIB) cache_testcode.o display_error.o matrix_multiply.o $(PAPILIB) $(LDFLAGS) $(EXTRALIB) +@@ -111,8 +108,8 @@ papi_ref_cyc: papi_ref_cyc.o $(TESTLIB) $(PAPILIB) display_error.o flops_testcod + papi_sp_ops: papi_sp_ops.o $(TESTLIB) $(PAPILIB) display_error.o branches_testcode.o flops_testcode.o + $(CC) -o papi_sp_ops papi_sp_ops.o $(TESTLIB) display_error.o branches_testcode.o flops_testcode.o $(PAPILIB) $(LDFLAGS) $(EXTRALIB) + +-papi_sr_ins: papi_sr_ins.o $(TESTLIB) $(PAPILIB) display_error.o matrix_multiply.o load_store_testcode.o +- $(CC) -o papi_sr_ins papi_sr_ins.o $(TESTLIB) display_error.o matrix_multiply.o load_store_testcode.o $(PAPILIB) $(LDFLAGS) $(EXTRALIB) ++papi_sr_ins: papi_sr_ins.o $(TESTLIB) $(PAPILIB) display_error.o matrix_multiply.o ++ $(CC) -o papi_sr_ins papi_sr_ins.o $(TESTLIB) display_error.o matrix_multiply.o $(PAPILIB) $(LDFLAGS) $(EXTRALIB) + + papi_tot_cyc: papi_tot_cyc.o $(TESTLIB) $(PAPILIB) display_error.o matrix_multiply.o + $(CC) -o papi_tot_cyc papi_tot_cyc.o $(TESTLIB) display_error.o matrix_multiply.o $(PAPILIB) $(LDFLAGS) $(EXTRALIB) +diff --git a/src/validation_tests/load_store_testcode.c b/src/validation_tests/load_store_testcode.c +deleted file mode 100644 +index 4b8f13c87..000000000 +--- a/src/validation_tests/load_store_testcode.c ++++ /dev/null +@@ -1,57 +0,0 @@ +-#include "testcode.h" +- +-/* Execute n stores */ +-int execute_stores(int n) { +- +-#if defined(__aarch64__) +- +- __asm( ".data\n" +- "stvar: .word 1 /* stvar in memory */\n" +- ".text\n" +- " ldr x2, =stvar /* address of stvar */\n" +- " mov x4, %0\n" +- " mov x1, #0\n" +- "str_loop:\n" +- " str x1, [x2] /* store into stvar */\n" +- " add x1, x1, #1\n" +- " cmp x1, x4\n" +- " bne str_loop\n" +- : +- : "r" (n) +- : "cc" /* clobbered */ +- ); +- +- return 0; +- +-#endif +- return CODE_UNIMPLEMENTED; +- +-} +- +-/* Execute n loads */ +-int execute_loads(int n) { +- +-#if defined(__aarch64__) +- +- __asm( ".data\n" +- "ldvar: .word 1 /* ldvar in memory */\n" +- ".text\n" +- " ldr x2, =ldvar /* address of ldvar */\n" +- " mov x4, %0\n" +- " mov x1, #0\n" +- "ldr_loop:\n" +- " ldr x3, [x2] /* load from ldvar */\n" +- " add x1, x1, x3\n" +- " cmp x1, x4\n" +- " bne ldr_loop\n" +- : +- : "r" (n) +- : "cc" /* clobbered */ +- ); +- +- return 0; +- +-#endif +- return CODE_UNIMPLEMENTED; +- +-} +diff --git a/src/validation_tests/papi_ld_ins.c b/src/validation_tests/papi_ld_ins.c +index 24935b290..6c92befd6 100644 +--- a/src/validation_tests/papi_ld_ins.c ++++ b/src/validation_tests/papi_ld_ins.c +@@ -23,7 +23,6 @@ + #include "display_error.h" + + #include "matrix_multiply.h" +-#include "testcode.h" + + #define SLEEP_RUNS 3 + +@@ -102,26 +101,18 @@ int main(int argc, char **argv) { + test_fail( __FILE__, __LINE__, "idle average", retval ); + } + +- /***********************************/ +- /* testing a large number of loads */ +- /***********************************/ ++ /*****************************/ ++ /* testing Matrix Matrix GHz */ ++ /*****************************/ + + if (!quiet) { +- printf("\nTesting a large number of loads\n"); ++ printf("\nTesting with matrix matrix multiply\n"); + } + +- expected=naive_matrix_multiply_estimated_loads(quiet); +- + PAPI_reset(eventset); + PAPI_start(eventset); + +- retval = execute_loads(expected); +- if (retval == CODE_UNIMPLEMENTED) { +- if (!quiet) { +- printf("\tNo asm test found for the current hardware. Testing matrix multiply\n"); +- } +- naive_matrix_multiply(quiet); +- } ++ naive_matrix_multiply(quiet); + + retval=PAPI_stop(eventset,&count); + +@@ -129,6 +120,8 @@ int main(int argc, char **argv) { + test_fail( __FILE__, __LINE__, "Problem stopping!", retval ); + } + ++ expected=naive_matrix_multiply_estimated_loads(quiet); ++ + if (!quiet) { + printf("\tActual measured loads = %lld\n",count); + } +@@ -161,13 +154,7 @@ int main(int argc, char **argv) { + PAPI_start(eventset); + + for(i=0;i +Date: Tue, 15 Jul 2025 20:20:20 -0400 +Subject: [PATCH] Revert "Updating papi_events.csv to support addition of + L1I_CACHE and deprecation of L1I_CACHE_ACCESS in libpfm4." + +This reverts commit 6b2745ddc924183f968f066b2d48eade8c816b29. +--- + src/papi_events.csv | 20 ++++++++++---------- + 1 file changed, 10 insertions(+), 10 deletions(-) + +diff --git a/src/papi_events.csv b/src/papi_events.csv +index 2706af696..5e095933a 100644 +--- a/src/papi_events.csv ++++ b/src/papi_events.csv +@@ -2290,8 +2290,8 @@ PRESET,PAPI_L1_DCA,NOT_DERIVED,L1D_CACHE + PRESET,PAPI_L1_DCM,NOT_DERIVED,L1D_CACHE_REFILL + PRESET,PAPI_L1_DCR,NOT_DERIVED,L1D_CACHE_RD + PRESET,PAPI_L1_DCW,NOT_DERIVED,L1D_CACHE_WR +-PRESET,PAPI_L1_ICA,NOT_DERIVED,L1I_CACHE +-PRESET,PAPI_L1_ICH,DERIVED_SUB,L1I_CACHE,L1I_CACHE_REFILL ++PRESET,PAPI_L1_ICA,NOT_DERIVED,L1I_CACHE_ACCESS ++PRESET,PAPI_L1_ICH,DERIVED_SUB,L1I_CACHE_ACCESS,L1I_CACHE_REFILL + PRESET,PAPI_L1_ICM,NOT_DERIVED,L1I_CACHE_REFILL + PRESET,PAPI_L2_TCA,NOT_DERIVED,L2D_CACHE_ACCESS + PRESET,PAPI_L2_DCA,DERIVED_ADD,L2D_CACHE_RD,L2D_CACHE_WR +@@ -2325,8 +2325,8 @@ PRESET,PAPI_L1_DCA,NOT_DERIVED,L1D_CACHE + PRESET,PAPI_L1_DCM,NOT_DERIVED,L1D_CACHE_REFILL + PRESET,PAPI_L1_DCR,NOT_DERIVED,L1D_CACHE_RD + PRESET,PAPI_L1_DCW,NOT_DERIVED,L1D_CACHE_WR +-PRESET,PAPI_L1_ICA,NOT_DERIVED,L1I_CACHE +-PRESET,PAPI_L1_ICH,DERIVED_SUB,L1I_CACHE,L1I_CACHE_REFILL ++PRESET,PAPI_L1_ICA,NOT_DERIVED,L1I_CACHE_ACCESS ++PRESET,PAPI_L1_ICH,DERIVED_SUB,L1I_CACHE_ACCESS,L1I_CACHE_REFILL + PRESET,PAPI_L1_ICM,NOT_DERIVED,L1I_CACHE_REFILL + PRESET,PAPI_L2_TCA,NOT_DERIVED,L2D_CACHE_ACCESS + PRESET,PAPI_L2_DCA,DERIVED_ADD,L2D_CACHE_RD,L2D_CACHE_WR +@@ -2360,8 +2360,8 @@ PRESET,PAPI_L1_DCA,NOT_DERIVED,L1D_CACHE + PRESET,PAPI_L1_DCM,NOT_DERIVED,L1D_CACHE_REFILL + PRESET,PAPI_L1_DCR,NOT_DERIVED,L1D_CACHE_RD + PRESET,PAPI_L1_DCW,NOT_DERIVED,L1D_CACHE_WR +-PRESET,PAPI_L1_ICA,NOT_DERIVED,L1I_CACHE +-PRESET,PAPI_L1_ICH,DERIVED_SUB,L1I_CACHE,L1I_CACHE_REFILL ++PRESET,PAPI_L1_ICA,NOT_DERIVED,L1I_CACHE_ACCESS ++PRESET,PAPI_L1_ICH,DERIVED_SUB,L1I_CACHE_ACCESS,L1I_CACHE_REFILL + PRESET,PAPI_L1_ICM,NOT_DERIVED,L1I_CACHE_REFILL + PRESET,PAPI_L2_TCA,NOT_DERIVED,L2D_CACHE_ACCESS + PRESET,PAPI_L2_DCA,DERIVED_ADD,L2D_CACHE_RD,L2D_CACHE_WR +@@ -2438,15 +2438,15 @@ PRESET,PAPI_L1_DCH,DERIVED_SUB,L1D_CACHE,L1D_CACHE_REFILL + PRESET,PAPI_L1_DCM,NOT_DERIVED,L1D_CACHE_REFILL + PRESET,PAPI_L1_DCR,NOT_DERIVED,L1D_CACHE_RD + PRESET,PAPI_L1_DCW,NOT_DERIVED,L1D_CACHE_WR +-PRESET,PAPI_L1_ICA,NOT_DERIVED,L1I_CACHE +-PRESET,PAPI_L1_ICH,DERIVED_SUB,L1I_CACHE,L1I_CACHE_REFILL ++PRESET,PAPI_L1_ICA,NOT_DERIVED,L1I_CACHE_ACCESS ++PRESET,PAPI_L1_ICH,DERIVED_SUB,L1I_CACHE_ACCESS,L1I_CACHE_REFILL + PRESET,PAPI_L1_ICM,NOT_DERIVED,L1I_CACHE_REFILL + #NOT_IMPLEMENTED,PAPI_L1_ICR,Level 1 instruction cache reads + #NOT_IMPLEMENTED,PAPI_L1_ICW,Level 1 instruction cache writes + #NOT_IMPLEMENTED,PAPI_L1_LDM,Level 1 load misses + #NOT_IMPLEMENTED,PAPI_L1_STM,Level 1 store misses +-PRESET,PAPI_L1_TCA,DERIVED_ADD,L1D_CACHE,L1I_CACHE +-PRESET,PAPI_L1_TCH,DERIVED_POSTFIX,N0|N1|-|N2|+|N3|-|,L1D_CACHE,L1D_CACHE_REFILL,L1I_CACHE,L1I_CACHE_REFILL ++PRESET,PAPI_L1_TCA,DERIVED_ADD,L1D_CACHE,L1I_CACHE_ACCESS ++PRESET,PAPI_L1_TCH,DERIVED_POSTFIX,N0|N1|-|N2|+|N3|-|,L1D_CACHE,L1D_CACHE_REFILL,L1I_CACHE_ACCESS,L1I_CACHE_REFILL + PRESET,PAPI_L1_TCM,DERIVED_ADD,L1D_CACHE_REFILL,L1I_CACHE_REFILL + #NOT_IMPLEMENTED,PAPI_L1_TCR,Level 1 total cache reads + #NOT_IMPLEMENTED,PAPI_L1_TCW,Level 1 total cache writes +-- +2.50.0 + diff --git a/papi.spec b/papi.spec index 5efb420..8f7e407 100644 --- a/papi.spec +++ b/papi.spec @@ -14,15 +14,16 @@ %endif Summary: Performance Application Programming Interface Name: papi -Version: 7.1.0 -Release: 6%{?dist} +Version: 7.2.0 +Release: 1%{?dist} License: BSD-3-Clause Requires: papi-libs = %{version}-%{release} URL: http://icl.cs.utk.edu/papi/ Source0: http://icl.cs.utk.edu/projects/papi/downloads/%{name}-%{version}.tar.gz -Patch1: papi-python3.patch -Patch5: papi-nostatic.patch -Patch6: papi-libsde.patch +Patch1: papi-nostatic.patch +Patch2: papi-avail-path-fix.patch +Patch3: papi-revert-event-depr.patch +Patch4: papi-revert-arm-test.patch BuildRequires: make BuildRequires: autoconf BuildRequires: doxygen @@ -94,9 +95,10 @@ the PAPI user-space libraries and interfaces. %prep %setup -q -%patch 1 -p1 -b .python3 -%patch 5 -p1 -%patch 6 -p1 -b .flags +%patch 1 -p1 -b papi-nostatic.patch +%patch 2 -p1 -b papi-avail-path-fix.patch +%patch 3 -p1 -b revert-event-depr.patch +%patch 4 -p1 -b revert-arm-test.patch %build @@ -191,6 +193,10 @@ find %{buildroot} -type f -executable ! -iname "*.py" ! -iname "*.sh" | xargs ch %endif %changelog +* Wed Nov 05 2025 RHEL Packaging Agent - 7.2.0-1 +- Rebase to papi-7.2.0. +- Resolves: RHEL-121674 + * Tue Oct 29 2024 Troy Dawson - 7.1.0-6 - Bump release for October 2024 mass rebuild: Resolves: RHEL-64018 diff --git a/sources b/sources index 70d6f9a..49d7aa1 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (papi-7.1.0.tar.gz) = 6ffe5f2c90bf699dcb937961ee0483e7edbb1909451d4bfcfe1949ad389b4089bbd7573b4055164fede9944d678e582c23a0cb74741c480e72e5e01b2061d0b0 +SHA512 (papi-7.2.0.tar.gz) = fcab7b55dbc1493cfdaa15ab289927f8e96af34832bf9764012ee762de69c09f64b37eafae471e9c48c48587e9541073bca5f6fd0925cebca7e2b2d185de44d7