2013-11-25  

  * a40c96c5 src/components/nvml/linux-nvml.c: nvml component: Add missing }

  * 166971ba src/components/nvml/linux-nvml.c: nvml component: modify api
  checks  To check if nvmlDeviceGetEccMode and nvmlDeviceGetPowerUsage are
  supported, we just call the functions and see if nvml thinks its supported by
  the card.

2013-11-21  

  * 78192de9 delete_before_release.sh: Kill the .gitignore files in
  delete_before_release

  * 60fb1dd4 src/utils/command_line.c: command_line utility: Initialize a
  variable  Initialize data_type to PAPI_DATATYPE_INT64 Addresses a coverity
  error Error: COMPILER_WARNING: [#def19]
  papi-5.2.0/src/utils/command_line.c:133:4: warning: 'data_type' may be used
  uninitialized in this function [-Wmaybe-uninitialized] switch (data_type) { ^

2013-11-20  

  * da2925f6 src/ctests/data_range.c: Make data_range test use prginfo 
  Coverity complained about prginfo being an unused variable for data_range.c. 
  The code is modified to be stylistically like the code for hw_info in the
  preceding lines which also is not used elsewhere in the test.  This is more
  to reduce the amount of output in the Coverity scan than to fix this minor
  issue. 

  * 3386953d src/ctests/data_range.c: Check the return values of PAPI_start()
  and PAPI_stop() for the data_range test  The ia64 data_range test did not
  check the return values of PAPI_start() or PAPI_stop().  There are propbably
  few people running this test on ia64 machine, but this is more to eliminate a
  couple errors noted by a Coverity scan and reduce the clutter in the Coverity
  scan. 

2013-11-19  

  * e704e8f1 src/configure src/configure.in: configure: Build fpapi.h and co
  for mic  When building for mic, set the cross_compiling var in configure to
  use a native c compiler to build genpapif.

2013-11-18  

  * d32b1dae man/man1/papi_avail.1 man/man1/papi_clockres.1
  man/man1/papi_command_line.1...: Rebuild the man pages for a 5.3 release

  * 4e735d11 doc/Doxyfile-common papi.spec src/Makefile.in...: Bump version
  numbers for a pending 5.3

  * efe026cd src/Makefile.inc: Makefile.inc: Pass LINKLIB, not SHLIB to the
  comp_tests

  * f0598acb src/ctests/Makefile.target.in: ctests/Makefile.target.in: Properly
  catch LINKLIB  LINKLIB=$(SHLIB) or $(LIBRARY), so we have to have configure
  fill in those as well.

  * 1744c23e src/ctests/Makefile.target.in: ctests/Makefile.target.in: Respect
  static-tools  the --with-static-tools configure flag sets STATIC, not
  LDFLAGS. This gets passed to the tests' make subprocesses via
  LDFLAGS="$(LDFLAGS) $(STATIC)" We mimic this in the installed Makefile.

  * e9347373 src/ctests/Makefile: ctests/Makefile: Don't clobber value of
  LIBRARY  TOOD: write a better message

  * 237219d1 src/Makefile.inc: Makefile.inc: Add enviro vars to fulltest recipe
   The fulltest target didn't set LD_LIBRARY_PATH and as a result, several
  tests wouldn't find libpfm and fail to run. The fix is to call our SETPATH
  command first (as all of the other testing targets do)  See
  ------------------------------------------------------------------ icc
  -diag-disable 188,869,271 -g -g -DSTATIC_PAPI_EVENTS_TABLE
  -DPEINCLUDE="libpfm4/include/perfmon/perf_event.h" -D_REENTRANT -D_GNU_SOURCE
  -DUSE_COMPILER_TLS  -Ilibpfm4/include  -I../../../testlib -I../../.. -I. -o
  perf_event_offcore_response perf_event_offcore_response.o event_name_lib.o
  ../../../testlib/libtestlib.a ../../../libpapi.so.5.2.0.0 ld: warning:
  libpfm.so.4, needed by ../../../libpapi.so.5.2.0.0, not found (try using
  -rpath or -rpath-link) ../../../libpapi.so.5.2.0.0: undefined reference to
  `pfm_get_event_attr_info' ../../../libpapi.so.5.2.0.0: undefined reference to
  `pfm_initialize' ../../../libpapi.so.5.2.0.0: undefined reference to
  `pfm_get_pmu_info' ../../../libpapi.so.5.2.0.0: undefined reference to
  `pfm_get_version' ../../../libpapi.so.5.2.0.0: undefined reference to
  `pfm_get_os_event_encoding' ../../../libpapi.so.5.2.0.0: undefined reference
  to `pfm_get_event_next' ../../../libpapi.so.5.2.0.0: undefined reference to
  `pfm_get_event_info' ../../../libpapi.so.5.2.0.0: undefined reference to
  `pfm_strerror' ../../../libpapi.so.5.2.0.0: undefined reference to
  `pfm_find_event' ../../../libpapi.so.5.2.0.0: undefined reference to
  `pfm_terminate' make[2]: *** [perf_event_offcore_response] Error 1
  ------------------------------------------------------------------

2013-11-17  

  * a7f642d2 src/Makefile.inc src/configure src/configure.in: Switch LINKLIB to
  not have relative pathing

2013-11-15  

  * 91a6fa54 src/components/lustre/tests/Makefile: Fix a typo in the lustre
  tests' Makefile

2013-11-13  

  * 9a5f9ad4 src/papi_preset.c: papi_preset.c: Fix _papi_load_preset_table func
   Patch by Gleb Smirnoff ---------------------- The _papi_load_preset_table()
  loses last entry from a static table.  The code in get_event_line() returns
  value of a char next to the line we are returning. Obviously, for the last
  entry the char is '\0', so function returns false value and
  _papi_load_preset_table() ignores the last line.  Patch attached.  The most
  important part of my patch is only:  -               ret =
  **tmp_perfmon_events_table; +               return i;  This actually fixes
  the lost last line.  However, I decided to make the entire get_event_line()
  more robust, protected from bad input, and easier to read.
  ----------------------

2013-11-12  

  * 579139a6 src/utils/hybrid_native_avail.c: more doxygen xml tag cleanup

  * 952bb621 src/components/bgpm/CNKunit/linux-CNKunit.c
  src/components/bgpm/CNKunit/linux-CNKunit.h
  src/components/bgpm/IOunit/linux-IOunit.c...: Fix doxygen Unsupported
  xml/html tag warnings

  * 0c161015 src/components/micpower/linux-micpower.h: micpower: fix doxygen
  warning

  * b187f065 src/components/host_micpower/README: host_micpower: update docs

2013-11-11  

  * 4d379c6f src/ctests/p4_lst_ins.c: ctests/p4_lst_ins: Narrow scope of test 
  This test attempted to ensure that it was running on a P4, the test missed
  for all non intel systems.

2013-11-10  

  * ee1c7967 .../host_micpower/utils/host_micpower_plot.c: Added energy
  consumption to host_micpower utility.

2013-11-08  

  * eee49912 src/ctests/shlib.c: shlib.c: Check for NULL  Thanks to Will Cohen
  for reporting. Coverity picked up an instance of a value that could be NULL
  and strlen would barf on it.  Error: FORWARD_NULL (CWE-476):
  papi-5.2.0/src/ctests/shlib.c:70: var_compare_op: Comparing "shinfo->map" to
  null implies that "shinfo->map" might be null.
  papi-5.2.0/src/ctests/shlib.c:74: var_deref_model: Passing "shinfo" to
  function "print_shlib_info_map(PAPI_shlib_info_t const *)", which
  dereferences null "shinfo->map". papi-5.2.0/src/ctests/shlib.c:13:26:
  var_assign_parm: Assigning: "map" = "shinfo->map".
  papi-5.2.0/src/ctests/shlib.c:24:3: deref_var_in_call: Function "strlen(char
  const *)" dereferences an offset off "map" (which is a copy of
  "shinfo->map").

  * 83c31e25 src/components/perf_event/perf_event.c: perf_event.c: Check return
  value of ioctl  Thanks to Will Cohen for reporting based upon output of
  coverity.

  * e5b33574 src/utils/multiplex_cost.c: multiplex_cost: check return value on
  PAPI_set_opt  Thanks to Will Cohen for reporting based upon output of
  coverity.

  * 04f95b14 src/components/.gitignore: Ignore component target makefile

  * cbf7c1a8 src/components/rapl/linux-rapl.c
  src/components/rapl/tests/Makefile src/components/rapl/tests/rapl_basic.c:
  Modify linux-rapl to support one wrap-around of the 32-bit registers for
  reading energy. This insures availability of the full 32-bit dynamic range.
  However, it does not protect against two wrap-arounds. Care must be taken not
  to exceed the expected dynamic range, or to check reasonableness of results
  on completion. Modifications were also made to report rapl events as unscaled
  binary values in order to compute dynamic ranges. Modify rapl-basic to add a
  test (rapl_wraparound) to estimate maximum measurement time for a naive gemm.
  With a -w option, measurement for this amount of time will be performed. The
  gemm can be replaced with a user kernel for more accurate time estimates.
  Makefile was modified to support the new test case. 

2013-11-07  

  * 7784de21 src/ctests/data_range.c src/ctests/zero_shmem.c: Modernize some
  ctests  Add tests_quiet check to data_range and zero_shmem

2013-11-06  

  * 7c953490 src/configure src/configure.in: More MPICC checking  Have
  configure check for mpcc on AIX, in addition to mpicc.

  * 5c8d2ce0 src/ctests/zero_shmem.c: zero_shmem.c: Fix compiler warning  The
  worker threads in the test print an ID, the test was setup to call
  pthread_self(), this is problematic. Since each thread is started with a
  unique work load, use this to lable threads.

  * 993a6e96 src/ctests/Makefile.recipies src/ctests/Makefile.target.in:
  ctests/Makefile.recipies: conditionally build the MPI test

  * b29d5f56 src/Makefile.inc src/configure src/configure.in: Check for mpicc
  at configure time  configure[.in]: look for mpicc Makefile.inc: Pass MPICC to
  ctests' make

2013-11-05  

  * b2d643df src/papi_events.csv: Add floating point events for IvyBridge  Now
  that Intel has documented them and libpfm4 supports them, PAPI can use them. 
  We just use the same events as on sandybridge.  Tested on an ivybridge
  system.

2013-11-01  

  * c5be5e26 src/components/micpower/linux-micpower.c: micpower: check return
  of fopen before use  Issue reported by Will Cohen from results of Coverity
  run.

  * 5c1405ab src/components/host_micpower/utils/Makefile
  src/components/host_micpower/utils/README
  .../host_micpower/utils/host_micpower_plot.c: Add host_micpower utility to
  gather power (and voltage) measurements on Intel Xeon Phi chips using
  MicAccessAPI.

  * 46b9bdf5 src/components/host_micpower/linux-host_micpower.c: Added more
  detailed event description and correct units to host mic power events.

  * b97c0126 src/components/host_micpower/linux-host_micpower.c: host_micpower:
  Better error reporting  grab output of dlerror on library load failure

2013-10-31  

  * 84da7fd3 src/components/host_micpower/Rules.host_micpower
  src/components/host_micpower/tests/Makefile: host_micpower: Fix some makefile
  bits  tests/Makefile needed to define a target to work with the
  Make_comp_tests install machinery.  Rules.host_micpower had a typo

2013-10-30  

  * 14f3e4c4 src/components/host_micpower/linux-host_micpower.c: host_micpower:
  fix function signature  shutdown_thread took wrong arguments.

2013-10-28  

  * a4cc1113 release_procedure.txt: Update release_procedure.txt  Bug in the
  version of doxygen we were using to produce the documentation led to some of
  the Fortran functions being left out in the cold.  We now proscribe 1.8.5

  * a1d6ae34 src/components/host_micpower/README: host_micpower: Add a README
  file.

2013-10-25  

  * 859dbc2c src/Makefile.inc src/components/Makefile_comp_tests
  src/components/Makefile_comp_tests.target.in...: Make the testsuite as a
  stand-alone copy-able directory of code  These changes to the Makefiles
  allows the testsuite to be compiled separately from the papi sources.  This
  is useful for people wanting to experiment with the tests and verify that the
  existing installation of papi works.  We put absolute paths to the installed
  library and include files into the installed makefile for the tests.

  * c307ad18 src/ctests/Makefile src/ctests/attach_target.c
  src/testlib/do_loops.c: Refactor the driver in do_loops.c into its own file. 
  (ctests/Makefile, ctests/attach_target.c testlib/do_loops.c)

2013-10-23  

  * ace71699 src/components/bgpm/CNKunit/linux-CNKunit.c
  src/components/bgpm/IOunit/linux-IOunit.c
  src/components/bgpm/L2unit/linux-L2unit.c...: Passing BGPM errors up to PAPI.

2013-10-22  

  * 2ee090ec src/components/bgpm/NWunit/linux-NWunit.c
  src/components/bgpm/NWunit/linux-NWunit.h: Fixed the behavior in BGQ's NWunit
  component after attaching an event set to a specific thread that owns the
  target recourse counting

  * 8ab071ee src/components/cuda/linux-cuda.c: CUDA component: Set the number
  of native events  Patch by Steve Kaufmann When running papi_component_avail I
  notice that the number of CUDA events was always zero when the component was
  available. The following change correctly sets the number of native events
  for the component:

2013-10-11  

  * 071943b6 src/configure src/configure.in src/linux-context.h...: add
  preliminary aarch64 (arm64) support  There has been some work to build fedora
  19 on 64-bit arm armv8 machines (aarch64).  I took a look that the why the
  papi build was failing.  The attached is a set of minimal patches to get papi
  to build.  The patch is just a step toward getting aarch64 support for papi.
  Things are not all there for papi to work in that environment.  Still need
  libpfm to support aarch64 and papi_events.csv describing mappings to machine
  specific events.

2013-10-01  

  * 096eb7fc src/ctests/zero_shmem.c: zero_shmem: cleanup compiler warnings 
  Remove unused variables.

  * d9669053 src/ctests/earprofile.c: ctests/earprofile.c: Fix compiler warning
   Both PAPI_get_hardware_info and PAPI_get_executable_info expect const
  pointers, (get_executable_info is called by prof_init in profile_utils).

2013-09-30  

  * 87e7e387 src/ctests/p4_lst_ins.c: ctests/p4_lst_ins.c: Fix the P4 load
  test.  This test relied upon a removed symbol to decide if it should run. The
  symbol unsigned char PENTIUM4 was removed in 2011, update the logic.

  * 737d91ff src/ctests/zero_shmem.c: ctests/zero_shmem: Update the test  *
  add_test_events expects another argument, update the zero_shmem test's
  invocation * Protect[Hide] OpenSHMEM calls with ifdefs

2013-09-27  

  * 86c11829 src/ctests/zero_shmem.c: zero_shmem: Include pthread.h

  * 2d0e666c src/ctests/zero_smp.c: zero_smp: Change a compile time error to a
  test_skip  In 8d1f2c1, we changed the default assumption to be that all
  ctests are build. This change allows the test to gracefully skip if it does
  not have 'native SMP' threads.

2013-09-26  

  * 8d1f2c16 src/ctests/Makefile: ctests/Makefile: Default to building
  everything  Set target all to depend upon ALL

  * ffd051cf src/ftests/Makefile src/testlib/Makefile: testlib, ftests
  Makefiles: cleanup ifort generated files  ifort produces mod and f90
  intermediate files which clean does not cleanup

  * c720bb59 src/components/coretemp/tests/coretemp_basic.c
  src/components/coretemp/tests/coretemp_pretty.c: Coretemp tests: Fix skipping
  logic  The coretemp_basic test was failing if coretemp was disabled, skip
  seems more appropriate. Add this logic to the coretemp_pretty test.

  * af7f7508 src/configure src/configure.in: configure: refactor CTEST_TARGETS 
  Problem: The set of ctests to build is determined at configure time, in
  CTEST_TARGETS. This is set in each OS detection section and suffers from
  neglect.  Solution: Try to push the decisions about which tests to build out
  of configure, ask for them all. Idealy the tests will be written in such a
  way as to fail/skip gracefully if they lack functionallity, teething problems
  are expected initially.

  * 14421695 src/testlib/Makefile: testlib: Fix the Makefile variable
  assignment  Consider: src=a.c b.c c.F obj=$(src:.c=.o) c.o  After this
  substution, obj is {a.o b.o c.F c.o}, not quite the nut. Change the logic to
  correct that.

2013-09-17  

  * 05a4e17b .../perf_event_uncore/perf_event_uncore.c: perf_event_uncore:
  cleanup a compiler warning  _peu_read does not use the hwd_context argument.

  * f2056857 src/papi_events.csv: papi_events.csv: Add PAPI_L1_ICM for Haswell 
  Thanks to Maurice Marks of Unisys for the contribution ------------- I've
  continued testing on Haswell. By comparison with Vtune and Emon on Haswell I
  found that we can use the counter L2_RQSTS:ALL_CODE_RD for PAPI_L1_ICM, which
  is a very useful measure.  Attached is my current version of papi_events.csv
  with Haswell fixes. -------------

2013-08-28  

  * efe3533d src/Makefile.inc src/components/Makefile_comp_tests
  src/ctests/Makefile...: testlib: library-ify testlib  * Move ftests_util to
  testlib * Naively create libtestlib.a * utils link to the testlib library *
  [c|f]tests Switch the tests over to linking libtestlib.a * Component tests
  link libtestlib.a

2013-08-26  

  * d2a76dde src/configure src/configure.in src/utils/hybrid_native_avail.c:
  Gabrial's mic with icc changes to configure.  Specify --with-mic at configure
  time and upon finding icc as the C compiler, it adds --mmic

  * 4c0349c0 src/papi_events.csv: papi_events.csv: First draft preset events on
  HSW  Contributed by Nils Smeds ------------------------- Here is a suggestion
  for addition to Hsw counters. These are not rigorously tested. It compiles
  and loads. I'm rather uncertain on many of the events so I am hoping that
  adding events like this will get some useful feedback from the community so
  that we can improve. -------------------------

2013-08-20  

  * 1b8ff589 src/utils/command_line.c: command_line util: Fix skipping event
  bug.  The command line utility had an extranious index increment which
  resulted in skipping the reporting of event counts. Remove the increment. 
  Reported by Steve Kaufmann -------------------------- I am getting some funny
  results when I use papi_command_line with the RAPL events. If I request them
  all:  $ papi_command_line THERMAL_SPEC:PACKAGE0 MINIMUM_POWER:PACKAGE0
  MAXIMUM_POWER:PACKAGE0 MAXIMUM_TIME_WINDOW:PACKAGE0 PACKAGE_ENERGY:PACKAGE0
  DRAM_ENERGY:PACKAGE0 PP0_ENERGY:PACKAGE0 Successfully added:
  THERMAL_SPEC:PACKAGE0 Successfully added: MINIMUM_POWER:PACKAGE0 Successfully
  added: MAXIMUM_POWER:PACKAGE0 Successfully added:
  MAXIMUM_TIME_WINDOW:PACKAGE0 Successfully added: PACKAGE_ENERGY:PACKAGE0
  Successfully added: DRAM_ENERGY:PACKAGE0 Successfully added:
  PP0_ENERGY:PACKAGE0  THERMAL_SPEC:PACKAGE0 :	    115.000 W <<<<<
  MINIMUM_POWER:PACKAGE0 ?? MAXIMUM_POWER:PACKAGE0 :    180.000 W
  PACKAGE_ENERGY:PACKAGE0 :   2003784180(u) nJ DRAM_ENERGY:PACKAGE0
  :	438751220(u) nJ PP0_ENERGY:PACKAGE0 :	1248748779(u) nJ 
  ---------------------------------- Verification: Checks for valid event name.
  This utility lets you add events from the command line interface to see if
  they work. command_line.c                       PASSED  Note that a value for
  MINIMUM_POWER:PACKAGE0 is not displayed even though it was successfully added
  to the event set. In fact, if combined with other events, the value for this
  event is never displayed. If you specifiy it on its own it is displayed:
  ------------------------------------

2013-08-16  

  * 0cb63d6e src/components/lustre/linux-lustre.c: lustre component: fix memory
  leak

2013-08-13  

  * c810cd0d src/components/micpower/linux-micpower.c src/linux-memory.c
  src/papi_preset.c: Close resource leaks  User dcb reported several resource
  leaks in trac bug #184. -------------------- I just ran the static analysis
  checker "cppcheck" over the source code of papi-5.2.0  It said  1.
  [linux-memory.c:711]: (error) Resource leak: sys_cpu  2. [papi_preset.c:735]:
  (error) Resource leak: fp  3. [components/micpower/linux-micpower.c:166]:
  (error) Resource leak: fp  I've checked them all and they all look like
  resource leaks to me.  Suggest code rework.
  ----------------------------------

2013-08-07  

  * 8d479895 doc/Makefile: Doxygen makefile: update dependencies  The manpages
  are generated from comments in papi.h, papi.c, papi_hl.c and
  papi_fwrappers.c; update the make dependencies to reflect this.
