2016-09-08 * dfa52d3f man/man1/PAPI_derived_event_files.1 man/man1/papi_avail.1 man/man1/papi_clockres.1...: Generated man files for release 2016-08-18 * 43c1be67 src/ctests/all_native_events.c: ctests all_native: Make sure we count all native events for KNL. * adc47828 src/components/perf_event_uncore/tests/perf_event_uncore_lib.c: perf_event_uncore tests: KNL has uncore support. * 0a9e1a8d src/components/perf_event/tests/event_name_lib.c: perf_event tests: add KNL offcore event. * e9144b9b src/papi_events.csv: Added preset definitions for KNL. 2016-08-12 * 03c766a6 src/components/rapl/linux-rapl.c: linux-rapl: update KNL support Knight's Landing does not support pp0, and also it uses a different unit for DRAM RAPL (much like the hsw-ep does) 2016-08-04 * ce57b7a7 src/testlib/test_utils.c: testlib: give better error message if component failed to initialize Old message: ./zero test_utils.c FAILED Line # 697 Error: Zero Counters Available! PAPI Won't like this! New message: ./zero Component perf_event disabled due to Error initializing libpfm4 test_utils.c FAILED Line # 702 Error: ERROR! Zero Counters Available! 2016-07-25 * ae00a502 src/papi_internal.c: add William Cohen's rewrite of the _papi_hwi_postfix_calc function which corrects the parsing and makes the parser more robust by catching any errors in the parsing early with asserts in the code rather than silently corrupting memory. 2016-07-22 * a6359b9d src/papi_preset.c: This was another bug of smashing the stack. This code declared the stack as: static char stack[PAPI_HUGE_STR_LEN]; But then did this later. memset(stack, 0, 2*PAPI_HUGE_STR_LEN); How our static analysis tools didn't catch this one? 2016-06-30 * f35e6e77 doc/Doxyfile-common papi.spec src/Makefile.in...: Updated PAPI version to 5.5 for upcoming release. 2016-06-29 * 48aee8e1 src/Makefile.inc src/components/cuda/Rules.cuda src/components/cuda/linux-cuda.c: cuda/sampling, cuda: Move sampling build rules to the cuda component. Minor bugfix in linux-cuda.c to check ok return status. 2016-06-28 * 78249608 src/components/cuda/sampling/libactivity.so src/components/cuda/sampling/path.h src/components/cuda/sampling/test/matmul...: cuda/sampling: Removing generated files that should not be in the repository 2016-06-27 * 10385c63 src/components/cuda/sampling/Makefile: Adding the missing Makefile for cuda/sampling. 2016-06-22 * 45c2935e src/papi_events.csv: Correct IBM Power7 and Power8 computation of PAPI_L1_DCA When reviewing the test results for IBM Power7 and Power8 Michael Petlan found that the PAPI_L1_DCA preset was incorrectly computed. The L1 cache misses need to be subtracted rather than added to the result. 2016-06-23 * 0364d397 src/components/powercap/README src/components/powercap/linux-powercap.c src/components/powercap/tests/powercap_basic.c: Cleanup powercap component. Most changes are cosmetic and achieved by runing thru astyle and cleaning up manually. README file should match the powercap component now rather than inheriting generic comments from other components. * 1c64bfc0 src/papi_events.csv: Added FP (SP, DP) presets for Broadwell. NOT TESTED yet due to lack of access to bdw hardware 2016-06-22 * 0d006ea3 src/components/rapl/linux-rapl.c: add Intel Skylake and Knights Landing RAPL support * bd921b74 src/ftests/fmatrixpapi.F src/testlib/ftests_util.F: Eliminate the sole use of ftests_skip subroutine There was only one test using ftests_skip subroutine, fmatrixpapi.F. Converted fmatrixpapi.F to use ftest_skip subroutine like all the other Fortran tests. 2016-06-21 * e9cde551 src/ctests/tenth.c: Correct the event string names for tenth.c There are stray ": " at the end of the event names in ctests/tenth.c. These are unneeded because the ctests support routines already insert a ": " after then event name when the error is printed out. * 97fb93c3 src/testlib/ftests_util.F: Have Fortran test support code report errors more clearly When a Fortran test called the ftest_skip or ftest_fail the support code would attempt to print out error strings. However, this support code would print out gibberish because the string was not properly initialized. There doesn't seem to be a easy way in Fortran to get the error string, for the time being just print out the error number and people will need to manually map it back to the string. 2016-06-17 * db9c70f5 src/papi_events.csv: Added FP (SP, DP) presets for Skylake. Corrected L1_LDM|STM, L2_DCW|TCW, PRF_DM, STL_ICY presets for Skylake. * 9de0c97f src/components/libmsr/linux-libmsr.c: Bugfix: libmsr component can now disable itself without printing an error message to the screen * d09657bf src/components/cuda/linux-cuda.c: Bugfix: CUDA component can now disable itself without printing an error message to the screen 2016-05-19 * 4718b481 src/components/perf_event/perf_event.c src/components/perf_event_uncore/perf_event_uncore.c: Force all processors to check event schedulability by reading the counters There are situations where the perf_event_open syscall will return a file descriptor for a set of events even when they cannot be scheduled together. This occurs on 32-bit and 64-bit ARM processors and MIPS processors. This problem also occurs on linux kernels older than 2.6.33 and when the watchdog timer steals a performance counter. To check that the performance counters are properly setup PAPI needs to check that the counter values can be successfully read. Rather than trying to avoid this test PAPI will now always do it. 2016-03-30 * 35264ea6 src/papi.h: update the caddr_t compatability hack in papi.h Erik Schnetter reported that the workaround failed with a C11 compiler. Really, we should replace all instances of caddr_t with something better, but I'm not sure what that does dor older compilers or breakage of ABI. 2016-03-16 * 504d05c3 src/Rules.pfm4_pe src/papi.h src/papi_fwrappers.c: Only expose the shared libary symbols listed *papi.h files The shared library should avoid exposing internal symbols of the library. This change hides the PAPI's internal symbols when it is built with libpfm 4. Only the functions in papi.h and the associated fortran wrapper functions are visible to code using the library. This change also makes libpapi.so slightly smaller (29KB for stripped x86_64 shared libary or about 6%). Note that a similar patch has been proposed for upstream libpfm4 and would be needed for the bundled libpfm if papi is being built with the bundled libpfm4. 2016-03-10 * 943fb056 INSTALL.txt: Fix leftover doxygen reference in INSTALL file. Fix leftover doxygen reference in INSTALL file. Noticed this while working through build/install steps on a local system, Looks like the doxygen command was switched from Doxyfile-everything to Doxyfile-html as part of revision bfee45 "Rework the doxygen configuration files" This fixes up the INSTALL reference to match. * 947f6cb3 src/Makefile.inc: Fix a bashism found in Makefile.inc While building on an ubuntu system, hit an error that took a bit to run down. /bin/sh: 1: [: perf_event: unexpected operator /bin/sh: 1: [: perf_event_uncore: unexpected operator This was on an ubuntu system where /bin/sh is actually /bin/dash, and is due to a bashism in Makefile.inc for the build and clean of cuda_samples. Swapping out the '==' for an '=' should be safe. 2016-02-29 * 7996d480 src/components/coretemp/linux-coretemp.c: Make coretemp internal functions static where possible As much of the internal of the papi shared library should be hidden. A number of the internal functions for the perf_event and coretemp components should be static since they are only used within the individual component. Making the functions static allows the compiler to generate better code and reduce the number of entries in the PLT (Procedure Link Tables). 2016-02-26 * a0240d5a src/components/perf_event/perf_event_lib.h: Removed the re declaration of the static functions in the perf_event_lib.h * 5d6e8295 src/components/appio/appio.c src/components/example/example.c src/components/lmsensors/linux-lmsensors.c...: Thanks to William Cohen of RedHat for providing the patches with following description Make perf_event and perf_event_uncore internal functions static where possible Make appio component internal functions static where possible Make example component internal functions static where possible Make lmsensors component internal functions static where possible Make lustre component internal functions static where possible Make micpower component internal functions static where possible Make mx component internal functions static where possible Make net component internal functions static where possible Make rapl component internal functions static where possible Make stealtime component internal functions static where possible. 2016-02-24 * 0eb308b4 src/components/cuda/README: Fixed cuda component README to use the correct configure flags. Thanks to Jianqiao Liu for pointing out errors in the README file. 2016-02-15 * 70bd7584 src/components/powercap/utils/README src/components/powercap/utils/powercap_write_test.c: Cleanup powercap utility. Removed mention of libmsr and no-longer-needed union type left over from the libmsr example 2016-01-31 * 03afa3fe src/components/powercap/README src/components/powercap/utils/Makefile src/components/powercap/utils/README...: added intial powercap write test and readme 2016-01-26 * 8fd9e4e3 src/components/powercap/tests/Makefile src/components/powercap/tests/powercap_basic.c: added power cap read test * edf8af95 src/components/powercap/Rules.powercap src/components/powercap/linux-powercap.c: added PAPI component * 66df01be ChangeLogP542.txt ChangeLogP543.txt RELEASENOTES.txt...: PAPI 5.4.3 release (releasenotes, changelog, man files, ...)