Blame ChangeLogP500.txt

Packit 577717
2012-08-08  
Packit 577717
Packit 577717
  * 4b4f87ff ChangeLogP5000.txt: Changelog for PAPI5
Packit 577717
Packit 577717
  * 6f208c06 doc/Doxyfile-common papi.spec src/Makefile.in...: Bump version
Packit 577717
  numbers in prep for a 5.0 release.
Packit 577717
Packit 577717
  * c6fdbd11 release_procedure.txt: Update release_procedure.txt  Change the
Packit 577717
  order of when we branch git, so that the main dev branch gets some of the
Packit 577717
  release related changes.
Packit 577717
Packit 577717
2012-04-17  
Packit 577717
Packit 577717
  * 97d4687f ChangeLogP440.txt: Pickup the changelog from papi 4.4  This was
Packit 577717
  only included in the stable-4.4 branch.
Packit 577717
Packit 577717
2012-08-23  
Packit 577717
Packit 577717
  * 628c2b6e src/buildbot_configure_with_components.sh: Take debug out of the
Packit 577717
  with several components build test config.  When built with PAPI's memory
Packit 577717
  wrapper routines, the threaded stress tests will sometimes get into poor
Packit 577717
  performing situations.  See trac ticket 148 for discussion.
Packit 577717
  http://icl.utk.edu/trac/papi/ticket/148
Packit 577717
Packit 577717
2012-08-22  
Packit 577717
Packit 577717
  * 46faae8e src/ctests/overflow2.c src/ctests/overflow_single_event.c
Packit 577717
  src/ctests/overflow_twoevents.c...: Move find_nonderived_event() from
Packit 577717
  overflow_twoevents to test_utils and call it from overflow2 and
Packit 577717
  overflow_single_event to insure that we're not trying to overflow on a
Packit 577717
  derived event.
Packit 577717
Packit 577717
  * 3e7d8455 src/ctests/zero_smp.c: Fix a memory leak reported on the aix
Packit 577717
  power7 machine.  zero_smp.c did not unregister at the end of its thread
Packit 577717
  function.
Packit 577717
Packit 577717
  * 3ad5782f src/perf_events.c: perf_events: fix segfault if DEBUG is enabled
Packit 577717
  Was incorrectly using "i" as an index where it should be "0" in a debug
Packit 577717
  statement.
Packit 577717
Packit 577717
Packit 577717
2012-08-21  
Packit 577717
Packit 577717
  * a3cadbdb src/ftests/accum.F src/ftests/avail.F src/ftests/case1.F...: Take
Packit 577717
  #2. Changing len_trim function in ftests to last_char. This time, I respect
Packit 577717
  72 char line limit.
Packit 577717
Packit 577717
  * c9db8fbf src/ctests/overflow_force_software.c: overflow_force_software was
Packit 577717
  the only test that used a different hard_tolerance value (0.25) than the
Packit 577717
  other overflow tests (0.75). This caused trouble on Power7/AIX. Now we are
Packit 577717
  using the same hard_tolerance value in all overflow tests.
Packit 577717
Packit 577717
  * 70515343 src/ftests/accum.F src/ftests/avail.F src/ftests/case1.F...:
Packit 577717
  Changed name of function len_trim to last_char.
Packit 577717
Packit 577717
  * 95168d79 src/components/cuda/linux-cuda.c: Cleanup cuda shutdown code.
Packit 577717
  * The
Packit 577717
  shutdown_thread code cleaned out the whole component's state. This has been
Packit 577717
  split into shutdown_global for the whole component, and shutdown_thread is
Packit 577717
  left to cleanup some control state info.
Packit 577717
Packit 577717
  * 56284f81 src/ctests/multiplex1_pthreads.c: Fix memory leaks in pthread
Packit 577717
  multiplex tests.
Packit 577717
Packit 577717
  * aeead8b6 src/threads.c: Remove an outdated comment about
Packit 577717
  _papi_hwi_free_EventSet holding INTERNAL lock
Packit 577717
Packit 577717
  * e598647b src/perf_events.c: perf_events: fix issue where we dereference a
Packit 577717
  pointer before NULL check.  Fix suggested by Will Cohen, based on a coverity
Packit 577717
  report.
Packit 577717
Packit 577717
  * 4e0ed976 src/ctests/calibrate.c: Modify warning message to eliminate the
Packit 577717
  word "error" Hopefully this will suppress it in buildbot outputs.
Packit 577717
Packit 577717
  * 50fbba18 src/ctests/api.c src/ftests/case2.F: Cleanup a few more warnings
Packit 577717
  from the PAPI_perror change.
Packit 577717
Packit 577717
  * 1f06bf28 src/ftests/case2.F: Missed an instance of perror in the fortran
Packit 577717
  code.
Packit 577717
Packit 577717
  * 93e6ae2c src/ftests/ftests_util.F: Fix warning in ftest_util.F
Packit 577717
Packit 577717
2012-08-20  
Packit 577717
Packit 577717
  * 60c6029e src/perf_events.c: perf_events: Update multiplexing code  It
Packit 577717
  * turns
Packit 577717
  out the PERF_EVENT_IOC_RESET ioctl resets the count but not the multiplexing
Packit 577717
  info.  This means that when we fiddle with the events then reset them in
Packit 577717
  check_scheduability(), we are not really resetting things to zero.  The
Packit 577717
  effect might be small, but since the new multiplex code by definition is
Packit 577717
  always scheduable, then let's skip the test if multiplexing.
Packit 577717
Packit 577717
  * 9079236c src/ctests/zero.c: Change error reporting so FLOPS > 100% above
Packit 577717
  theoretical FAIL and FLOPS > 25% above theoretical WARN.
Packit 577717
Packit 577717
2012-08-18  
Packit 577717
Packit 577717
  * 980558af src/papi_internal.c: papi_internal: fix memory leak  When I made
Packit 577717
  some changes a while back I forgot to free ESI->NativeBits properly.  This
Packit 577717
  was causing memory leak warnings on buildbot.
Packit 577717
Packit 577717
2012-08-17  
Packit 577717
Packit 577717
  * 83a14612 src/perf_events.c: perf_events: more cleanups and comments  We
Packit 577717
  really need to go back and figure out in more detail what the
Packit 577717
  profile/sampling/overflow code is doing.
Packit 577717
Packit 577717
  * 7cafb941 src/perf_events.c: perf_events: more cleanups and comments
Packit 577717
Packit 577717
  * e9e39a4b src/perf_events.c: perf_events: disable kernel multiplexing
Packit 577717
  * before
Packit 577717
  2.6.34  It turns out even our simple multiplexing won't work on kernels
Packit 577717
  before 2.6.34, so fall back to sw multiplex in that case.
Packit 577717
Packit 577717
  * 05801901 src/perf_events.c: perf_events: more cleanup and comments
Packit 577717
Packit 577717
  * 268e31d7 src/perf_events.c: perf_events: more cleanup and commenting
Packit 577717
Packit 577717
  * d62fc2bf src/perf_events.c: perf_events: more cleanup and comments
Packit 577717
Packit 577717
  * fb0081bc src/perf_events.c: perf_events: more cleanups and comments
Packit 577717
Packit 577717
  * a1142fc8 src/perf_events.c: perf_events: cleanup and comment the kernel
Packit 577717
  * bug
Packit 577717
  workarounds
Packit 577717
Packit 577717
  * b8560369 src/perf_events.c: perf_events: minor cleanups and new comments
Packit 577717
Packit 577717
  * 6c320bb2 src/perf_events.c: perf_events: fix some debug messages  I forget
Packit 577717
  to test with --with-debug enabled
Packit 577717
Packit 577717
  * f7a3cccf src/perf_events.c: perf_events: enable new read_code  This makes
Packit 577717
  the read code much simpler.  It finishes the multiplexing changes.  To avoid
Packit 577717
  complication, we no longer enable PERF_FORMAT_ID as reading that extra info
Packit 577717
  is unnecessary with the current implementation.  This passes all the tests
Packit 577717
on
Packit 577717
  a recent kernel, but on 2.6.32 there are still a few issues.
Packit 577717
Packit 577717
  * 15749cff src/ctests/all_events.c src/ctests/all_native_events.c: Fix
Packit 577717
  warning in all_events and all_native_events.  In the perror semantic change,
Packit 577717
  several strings for use in the old interface were left.
Packit 577717
Packit 577717
2012-08-16  
Packit 577717
Packit 577717
  * afdd25fa src/perf_events.c: perf_events: always enable kernel multiplexing
Packit 577717
  The new code should work on any kernel version.
Packit 577717
Packit 577717
  * 9f5e23ae src/perf_events.c: Rewrite multiplex support.  Drop support for
Packit 577717
  the former "partitioned" multiplexing, as we could never use it.  Instead
Packit 577717
use
Packit 577717
  the simple/braindead model.  This still needs more work, as sometimes reads
Packit 577717
  are failing.
Packit 577717
Packit 577717
  * cdd29909 src/ftests/strtest.F: Fix strtest.F ftest  It was still making
Packit 577717
  some assumptions about PAPI_perror() writing to a string rather than
Packit 577717
directly
Packit 577717
  to standard error.
Packit 577717
Packit 577717
  * 565f60b3 src/papi_internal.c: Missing code to set num_error_chunks to 0
Packit 577717
  The new _papi_hwi_cleanup_errors() function was not resetting
Packit 577717
  num_error_chunks to 0, leading to a segfault in the fmultiplex1 test.
Packit 577717
Packit 577717
2012-08-02  
Packit 577717
Packit 577717
  * bb85bafd src/genpapifdef.c src/papi.c src/papi_common_strings.h...: Remove
Packit 577717
  usage of _papi_hwi_err.  Move PAPI over to storing errors in a runtime list.
Packit 577717
  * Functions to add/lookup errors. * Generate the list of PAPI_E* errors at
Packit 577717
  library_init time. * genpapifdef pulled the values for the PAPI_* error
Packit 577717
  return codes from the _papi_hwi_err structure at configure time. Since this
Packit 577717
  is now built at run-time, I added the appropriate values to genpapifdef's
Packit 577717
  builting describe_t table. See : _papi_hwi_publish_error
Packit 577717
  _papi_hwi_init_errors For usage hints.
Packit 577717
Packit 577717
2012-08-10  
Packit 577717
Packit 577717
  * e27af085 src/perf_events.c: perf_event: rename BRAINDEAD_MULTIPLEXING  It
Packit 577717
  is now "simple_multiplexing" and is a variable not an #ifdef  This is needed
Packit 577717
  before perf_event multiplexing can be sorted out.  It's unclear if it
Packit 577717
  actually works anyway.
Packit 577717
Packit 577717
  * 7f8e8c58 src/perf_events.c: perf_event: remove context "cookie" field  It
Packit 577717
  was a bit of overkill, we just need an initialized field. Also revamp how
Packit 577717
  context and control are initialized.
Packit 577717
Packit 577717
  * 8cb8ac6d src/perf_events.c: perf_event: move all event specific info to
Packit 577717
  * the
Packit 577717
  control state  previously half was in the context state and half in the
Packit 577717
  control state  perf_event has a strange architecture with each event being
Packit 577717
  created having its own fd, which is context wide.  In PAPI though we usually
Packit 577717
  only have one eventset (control state) active at once, so there's no need to
Packit 577717
  have the context be aware of this.
Packit 577717
Packit 577717
2012-08-09  
Packit 577717
Packit 577717
  * 8d7782cb src/perf_events.c: perf_event: rename evt_t to perf_event_info_t
Packit 577717
  This just makes the code easier to follow.
Packit 577717
Packit 577717
  * 349de05c src/perf_events.c: perf_event: remove the superfluous
Packit 577717
  per_event_info_t structure
Packit 577717
Packit 577717
2012-08-08  
Packit 577717
Packit 577717
  * da8ad0a2 src/ctests/all_native_events.c src/ctests/get_event_component.c
Packit 577717
  src/utils/native_avail.c: Fix warnings about PAPI_enum_cmp_event() return
Packit 577717
not
Packit 577717
  being checked  Reported by coverity checker via Will Cohen  Harmless
Packit 577717
  warnings, and now the checker will likely complain about the value being
Packit 577717
  checked but ignored.
Packit 577717
Packit 577717
  * b4719888 src/papi_user_events.c: Fix unused value in papi_user_events.c
Packit 577717
  Reported by Coverity checker by Will Cohen
Packit 577717
Packit 577717
  * 6a8f255c src/utils/event_chooser.c: remove unused
Packit 577717
  * PAPI_get_component_info()
Packit 577717
  call in event_chooser  Reported by Will Cohen from coverity checker
Packit 577717
Packit 577717
2012-08-06  
Packit 577717
Packit 577717
  * 62cda478 src/genpapifdef.c src/papi_common_strings.h
Packit 577717
  src/papi_internal.c...: Remove usage of _papi_hwi_err.  genpapifdef pulled
Packit 577717
  the values for the PAPI_* error return codes from the _papi_hwi_err structure
Packit 577717
  at configure time. Since this is now built at run-time, I added the
Packit 577717
  appropriate values to genpapifdef's builting describe_t table.
Packit 577717
Packit 577717
2012-08-02  
Packit 577717
Packit 577717
  * d11259f3 src/papi.c src/papi_internal.c src/papi_internal.h...: Move over
Packit 577717
  to generating the list of PAPI errors at library_init time.
Packit 577717
Packit 577717
  * 097ffc44 src/papi_internal.c: Functions to add/lookup errors.
Packit 577717
Packit 577717
2012-08-07  
Packit 577717
Packit 577717
  * 2530533f src/papi_events.csv: tests/zero fails on Power7 due to PAPI_FP_INS
Packit 577717
  Error of 50%. Preset definition has been redefined and test now passes.
Packit 577717
Packit 577717
  * 8e17836f src/components/appio/Rules.appio src/components/appio/appio.c
Packit 577717
  src/components/appio/appio.h...: We now intercept recv(). The support for
Packit 577717
  recv() requires dynamic linkage. For static linkage, recv is not intercepted.
Packit 577717
Packit 577717
2012-08-06  
Packit 577717
Packit 577717
  * 8b1eb84c src/perf_events.c: perf_events: some whitespace cleanup and extra
Packit 577717
  comments
Packit 577717
Packit 577717
  * f10edba6 src/perf_events.c: perf_events: MAX_READ was no longer being used,
Packit 577717
  remove it
Packit 577717
Packit 577717
  * 08c06ed1 src/perf_events.c: perf_event event_id is actually 64-bit, so make
Packit 577717
  our copy match
Packit 577717
Packit 577717
  * a33e8d9c src/perf_events.c: Rename context_t pe_context_t in perf_events.c 
Packit 577717
  Makes the code a bit clearer and matches how other components name things.
Packit 577717
Packit 577717
  * 96ce9dcd src/perf_events.c: Rename control_state_t pe_control_state_t  This
Packit 577717
  makes the code a bit easier to follow and matches how other components name
Packit 577717
  things.
Packit 577717
Packit 577717
2012-08-03  
Packit 577717
Packit 577717
  * 4c5dce7f src/ctests/zero.c: Beef up error reporting.
Packit 577717
Packit 577717
  * 83b5d28a src/ctests/cycle_ratio.c: Have the cycle_ratio test skip if
Packit 577717
  PAPI_REF_CYC event is not defined.
Packit 577717
Packit 577717
2012-08-02  
Packit 577717
Packit 577717
  * 25b1ba41 src/ctests/cycle_ratio.c: Removed all TESTS_QUIET blocks. They
Packit 577717
  aren't needed because tests_quiet() overloads printf. We should probably
Packit 577717
  remove TEST_QUIET blocks in ALL tests at some point for code clarity…
Packit 577717
Packit 577717
  * 8777d7d4 src/ctests/zero.c: Fixed error reporting. The error computation
Packit 577717
  was inside a TESTS_QUIET block and wasn't getting executed when run quietly.
Packit 577717
  Thus this test always passed on buildbot, even when it didn't.
Packit 577717
Packit 577717
  * 006fe8e9 src/ctests/Makefile: Fix typo in cycle_ratio make line.
Packit 577717
Packit 577717
  * 88e6d6a4 src/aix.c src/aix.h: Setting number of multiplex counters back to
Packit 577717
  32 for AIX. Before it was set equal to number of max HW counters. This caused
Packit 577717
  ctests/sdsc-mpx to fail.
Packit 577717
Packit 577717
  * ab78deda src/papi_events.csv: ctests/calibrate on Power7/AIX failed with a
Packit 577717
  50% error all the way through. Updated the preset FP_OPS with a more
Packit 577717
  appropriate definition. Now the calibrate errors range from 0.0002 to 0.0011%
Packit 577717
  for double and single precision
Packit 577717
Packit 577717
  * fadce32f src/ctests/calibrate.c: Modify calibrate test in two ways: 1. add
Packit 577717
  a -f flag to suppress failures and allow test to run to completion; 2. change
Packit 577717
  error detection to allow warnings above MAX_WARN and failures above MAX_FAIL.
Packit 577717
  Currently set to 10% and 80% respectively. This allows speculative over
Packit 577717
  counting to pass with warning rather than fail completely.
Packit 577717
Packit 577717
  * 8a39ac9d src/papi_events.csv: LST_INS for Power7 was defined from 3 native
Packit 577717
  events that cannot be counted together at the same time. Caused
Packit 577717
  ctests/all_events to fail. Updated the preset with a more appropriate
Packit 577717
  definition.
Packit 577717
Packit 577717
  * cdc16e5d src/papi_events.csv: L1_DCA for Power7 was defined from 3 native
Packit 577717
  events that cannot be counted together at the same time. That caused
Packit 577717
  ctests/tenth to fail. Updated the preset with a more appropriate definition.
Packit 577717
Packit 577717
2012-08-01  
Packit 577717
Packit 577717
  * 2bf44d13 src/papi_internal.c src/perf_events.c: icc does not like
Packit 577717
  arithmetic on void pointers. Added cast to unsigned char* when arithmetic was
Packit 577717
  being performed on void pointers in papi_internal and perf_events.
Packit 577717
Packit 577717
  * 7825ec14 src/ctests/api.c src/ctests/attach2.c src/ctests/attach3.c...:
Packit 577717
  Modify tests that FAIL if PAPI_FP_OPS or PAPI_FP_INS not implemented. Now
Packit 577717
  they will warn and continue. This is specifically to accommodate the
Packit 577717
  brain-dead IvyBridge implementation.
Packit 577717
Packit 577717
  * fd70a015 src/testlib/test_utils.c: Re-writing of test_utils introduced new
Packit 577717
  bugs that caused ctests/tenth to fail. test_events struct lists the same
Packit 577717
  event twice (MASK_L1_DCW), hence PAPI_add_event() fails because it's forced
Packit 577717
  to add the same preset twice.
Packit 577717
Packit 577717
  * 74ece3a0 src/run_tests.sh: run_tests.sh was clobbering $EXCLUDE variable if
Packit 577717
  $CUDA was defined. Changed to add entries from run_tests_exclude_cuda.txt to
Packit 577717
  $EXCLUDE which should already contain entries from run_tests_exclude.txt
Packit 577717
  instead of replacing the entries already contained.
Packit 577717
Packit 577717
  * 11ed2364 src/libpfm4/config.mk: Added check in libpfm4/config.mk to check
Packit 577717
  if using icc. If so, the -Wno-unused-parameter flag will no longer be used
Packit 577717
  because icc does not provide it and provides no alternative.
Packit 577717
Packit 577717
  * dedf73f6 src/papi_user_events.c: fget() returns an int it should be treated
Packit 577717
  as an int  The coverity scan flagged that the int return by fget was stored
Packit 577717
  in a char. The main concern with this is the EOF that fget() could return is
Packit 577717
  -1. Do not want to mess up that value by typecasting to char and then back to
Packit 577717
  int. 
Packit 577717
Packit 577717
  * c4fcbe7e src/ctests/kufrin.c: Check return values of PAPI_get_cmp_opt() and
Packit 577717
  calloc  A coverity scan showed that PAPI_get_cmp_opt() could potentially
Packit 577717
  return a negative number.  Also it is good form to check the return value of
Packit 577717
  calloc to ensure it is a non-null pointer. 
Packit 577717
Packit 577717
  * e89d6ffa src/testlib/test_utils.c: Clean up test_print_event_header() 
Packit 577717
  There were a couple warnings flagged by coverity on
Packit 577717
  test_print_events_header(). The function now checks for error conditions
Packit 577717
  flagged by PAPI_get_cmp_opt() and also frees memory allocated by a calloc()
Packit 577717
  function. 
Packit 577717
Packit 577717
  * c81d8b60 src/threads.h: Eliminate deadcode from threads.h  If
Packit 577717
  HAVE_THREAD_LOCAL_STORAGE is defined, a portion of the
Packit 577717
  _papi_hwi_lookup_thread() will never be executed.  This patch make either one
Packit 577717
  section or the other section of code be compiled.  This will eliminate a
Packit 577717
  coverity scan warning about unreachable code. 
Packit 577717
Packit 577717
  * f70f3f56 src/ctests/all_native_events.c: Eliminate unused variable in
Packit 577717
  ctests/all_native_events.c  Coverity identified a variable that was set but
Packit 577717
  never used in all_native_events.c.  This patch removes the unused variable to
Packit 577717
  eliminate that warning. 
Packit 577717
Packit 577717
  * a9f29840 src/components/appio/appio.c: A couple places in appio.c used the
Packit 577717
  FD_SET() without initializing the variable. Coverity scan pointed out this
Packit 577717
  issue. 
Packit 577717
Packit 577717
  * 9e535ae2 src/components/rapl/linux-rapl.c: A Coverity scan pointed out that
Packit 577717
  read_msr() could potentially use an invalid value of fd for pread().  Need to
Packit 577717
  check the value of fd before using it. 
Packit 577717
Packit 577717
  * 7b55c675 src/components/rapl/linux-rapl.c: The arrays used for
Packit 577717
  initialization were hard coded to 1024 packages. Want to avoid hard coding
Packit 577717
  that so the day when machines with 1025 packages are available is a
Packit 577717
  non-event.  Also changed the initialization code to avoid having the
Packit 577717
  initialization be O((number of packages)^2) in time complexity. 
Packit 577717
Packit 577717
2012-07-27  
Packit 577717
Packit 577717
  * 3703995a src/papi_internal.c: Fix the component name predending code.  When
Packit 577717
  presented with a NULL component .short_name, the code did the wrong thing.
Packit 577717
Packit 577717
  * 5258db8b src/components/cuda/linux-cuda.c: Fix a warning in cuda.
Packit 577717
Packit 577717
2012-07-26  
Packit 577717
Packit 577717
  * ddd6f193 src/ctests/Makefile src/ctests/cycle_ratio.c: Add a test to
Packit 577717
  compute nominal CPU MHz from real cycles and use PAPI_TOT_CYC and
Packit 577717
  PAPI_REF_CYC to compute effective MHz. Warns if PAPI_REF_CYC is zero, which
Packit 577717
  can happen on kernels < ~3.3.
Packit 577717
Packit 577717
  * fab5e9ef src/papiStdEventDefs.h src/papi_common_strings.h
Packit 577717
  src/papi_events.csv: Add PAPI_REF_CYC preset event. Define it as
Packit 577717
  UNHALTED_REFERENCE_CYCLES for all Intel platforms on which this native event
Packit 577717
  is supported.
Packit 577717
Packit 577717
2012-07-25  
Packit 577717
Packit 577717
  * 8b9b6bef src/papi_events.csv: Modify SandyBridge and IvyBridge tables:
Packit 577717
  SandyBridge FP_OPS only counts scalars; SP_OPS and DP_OPS now count
Packit 577717
  correctly, including SSE and AVX. IvyBridge can't count FP at all;
Packit 577717
  adjustments made to eliminate event differences with SandyBridge.
Packit 577717
Packit 577717
2012-07-26  
Packit 577717
Packit 577717
  * 5b11c982 src/components/cuda/linux-cuda.c: Fix the cuda component.  The
Packit 577717
  cuda component prepended CUDA. to all its event names, this is no longer the
Packit 577717
  case.
Packit 577717
Packit 577717
2012-07-25  
Packit 577717
Packit 577717
  * db5b0857 src/papi_events.csv: Added 2 new preset definitions for BGQ. Note,
Packit 577717
  these presets use the new feature where a generic event mask together with an
Packit 577717
  ORed opcode string is used. This won't work until the new Q driver is
Packit 577717
  released (currently scheduled for end of August).
Packit 577717
Packit 577717
2012-07-24  
Packit 577717
Packit 577717
  * af7cd721 src/components/coretemp/linux-coretemp.c
Packit 577717
  src/components/coretemp/tests/coretemp_pretty.c
Packit 577717
  src/components/cuda/linux-cuda.c...: Enforce all our components to use the
Packit 577717
  same naming.  We setteled on :'s as inter-event seperators. This also touches
Packit 577717
  a few of the components' tests, we changed the name field so their searches
Packit 577717
  needed help.
Packit 577717
Packit 577717
2012-07-23  
Packit 577717
Packit 577717
  * 57aeb9d4 src/papi_internal.c: Prepend component .short_name to each event
Packit 577717
  name.  Use ::: as a sep.
Packit 577717
Packit 577717
2012-07-24  
Packit 577717
Packit 577717
  * 762e9584 src/ctests/multiplex2.c src/sw_multiplex.c: Fix multiplex2 test 
Packit 577717
  It complained if it tried to add a multiplex event and PAPI properly told it
Packit 577717
  that it couldn't.
Packit 577717
Packit 577717
  * 531870f1 src/papi_internal.c: Add sanity check at component init time 
Packit 577717
  Looks for num_cntrs being larger than num_mpx_cntrs which doesn't make much
Packit 577717
  sense.
Packit 577717
Packit 577717
  * 53ad0259 src/extras.c src/genpapifdef.c src/papi.c...: Rename
Packit 577717
  PAPI_MAX_HWCTRS to PAPI_EVENTS_IN_DERIVED_EVENT  Hopefully this will make
Packit 577717
  things a little less confusing.
Packit 577717
Packit 577717
  * 700af24b src/papi_internal.c: Change EventInfoArrayLength to always return
Packit 577717
  num_mpx_cntrs  Things should be consistently using num_mpx_cntrs rather than
Packit 577717
  num_cntrs now.  Issue reported by Steve Kaufmann
Packit 577717
Packit 577717
  * d1570bec src/sw_multiplex.c: Fix sw_multiplex bug when max SW counters is
Packit 577717
  less than max HW counters  this was causing kufrin and max_multiplex to fail
Packit 577717
Packit 577717
  * f47f5d6a src/aix.c src/components/appio/appio.c
Packit 577717
  src/components/bgpm/CNKunit/linux-CNKunit.c...: Remove PAPI_MPX_DEF_DEG  It
Packit 577717
  was not well documented and being used in confused ways all over the code. 
Packit 577717
  Now there is a different define PAPI_MAX_SW_MPX_EVENTS used by the software
Packit 577717
  multiplex code.  All other components have had the value replaced with just
Packit 577717
  the maximum number of counters.  If a component can handle its own
Packit 577717
  (non-software) multiplexing it is up to it to set .num_mpx_cntrs to a value
Packit 577717
  that's different from .num_cntrs
Packit 577717
Packit 577717
  * 0d83f5db src/papi_internal.c src/papi_internal.h: Split NativeBits off of
Packit 577717
  NativeInfoArray in EventSet  previously we were doing some crazy thing where
Packit 577717
  we allocated both at once and then split them afterward.  The new code is
Packit 577717
  easier to follow.
Packit 577717
Packit 577717
  * 98f2ecbd src/papi_internal.c: Clean up EventSet creation  Sort out which
Packit 577717
  sizes are used for allocating which structures.
Packit 577717
Packit 577717
  * e1024579 src/Makefile.inc src/multiplex.c src/multiplex.h...: Rename the
Packit 577717
  multiplex files to be sw_multiplex  That way it's more clear the stuff
Packit 577717
  included only relates to software multiplexing, not generic multiplexing.
Packit 577717
Packit 577717
  * a6adc7ff src/multiplex.h src/papi_internal.c src/papi_internal.h: Move some
Packit 577717
  sw-multiplex specific terms out of papi_internal.h and into multiplex.h
Packit 577717
Packit 577717
2012-07-23  
Packit 577717
Packit 577717
  * 1ddbe117 src/components/README: Added note that lmsensors component
Packit 577717
  requires lmsensors version >=3.0.0
Packit 577717
Packit 577717
  * 94676869 src/components/appio/appio.c
Packit 577717
  src/components/appio/tests/appio_test_pthreads.c: proper checking of return
Packit 577717
  codes in response to tests using coverity
Packit 577717
Packit 577717
  * ea958b18 src/components/appio/tests/appio_list_events.c
Packit 577717
  src/components/appio/tests/appio_values_by_code.c: As component name in table
Packit 577717
  has been changed from appio.c to appio, we now use appio in the tests.
Packit 577717
Packit 577717
2012-07-20  
Packit 577717
Packit 577717
  * f212cc34 src/components/appio/appio.c
Packit 577717
  src/components/coretemp/linux-coretemp.c
Packit 577717
  src/components/coretemp_freebsd/coretemp_freebsd.c...: Add .short_name
Packit 577717
  entries to each component.
Packit 577717
Packit 577717
  * 1e755836 src/papi_libpfm4_events.c src/perf_events.c: Fix use-after-free
Packit 577717
  bug in perf_events.c  This turned up in the ctests/flops test, and Valgrind
Packit 577717
  made it easy to track down.
Packit 577717
Packit 577717
  * 4580ed1d src/perf_events.c: Update perf_event.c rdpmc support  Use the
Packit 577717
  libpfm4 definition for mmap rather than our custom one, now that libpfm4 has
Packit 577717
  been updated
Packit 577717
Packit 577717
  * 47558b2c src/libpfm4/examples/showevtinfo.c
Packit 577717
  src/libpfm4/include/perfmon/perf_event.h
Packit 577717
  src/libpfm4/lib/pfmlib_intel_nhm_unc.c...: Import current libpfm4 from
Packit 577717
  libpfm4 git  It has some minor uncore fixes plus the header changes needed
Packit 577717
  for rdpmc.
Packit 577717
Packit 577717
2012-07-17  
Packit 577717
Packit 577717
  * 65d4c06c src/linux-common.c: Reorder statements to ensure the fclose() are
Packit 577717
  performed  Coverity pointed out that it was possible for resources to be
Packit 577717
  leaked in linux-common.c if the fscanf() encountered error.  This reordering
Packit 577717
  of the statements ensures that the fclose() calls are done regards of the
Packit 577717
  results of the fscanf() functions. 
Packit 577717
Packit 577717
2012-07-18  
Packit 577717
Packit 577717
  * 7bf071ff src/papi_user_events.c: Ensure that load_user_event_table() frees
Packit 577717
  files and memory on error  A Coverity scan showed that an error condition in
Packit 577717
  load_user_event_table() function would exit the the function without closing
Packit 577717
  the table file or freeing allocated memory.  This patch addresses those
Packit 577717
  issues. 
Packit 577717
Packit 577717
2012-07-17  
Packit 577717
Packit 577717
  * 1ba52e35 src/components/stealtime/linux-stealtime.c: Ensure that
Packit 577717
  read_stealtime() closes the file in case of an error condition  A Coverity
Packit 577717
  scan showed that an error condition could cause read_stealtime() to exit
Packit 577717
  without closing the file.  This patch ensures that the file is closed
Packit 577717
  regardless of success or failure. 
Packit 577717
Packit 577717
2012-07-18  
Packit 577717
Packit 577717
  * f37f22e5 src/papi_libpfm4_events.c: Fix warning in papi_libpfm4_events.c 
Packit 577717
  We were setting a value but never using it.
Packit 577717
Packit 577717
  * 8e8401bc src/testlib/test_utils.c: Remove unused variable in test_utils.c 
Packit 577717
  Most of the machines in buildbot were complaining about this.
Packit 577717
Packit 577717
  * 133ce6a9 src/linux-timer.c: Add missing papi_vector.h include to
Packit 577717
  linux-timer.c  This was breaking on PPC Linux
Packit 577717
Packit 577717
2012-07-17  
Packit 577717
Packit 577717
  * 6fd3cedd src/perf_events.c: Fix perf_events.c warnings reported by ICC
Packit 577717
Packit 577717
  * 21c8f932 src/perfctr-x86.c: Fix perfctr-x86 build with debug enabled
Packit 577717
Packit 577717
  * 08f76743 src/configure src/configure.in src/linux-bgq.c: Attempt to fix
Packit 577717
  linux-bgq compilation error.  It turns out BGQ uses the standard
Packit 577717
  linux-context.h header
Packit 577717
Packit 577717
  * 43457f4f src/linux-bgq.c: Made check for opcodes more robust.
Packit 577717
Packit 577717
  * d58116b4 src/perf_events.c: More cleanups of perf_events.c file
Packit 577717
Packit 577717
  * 409438b7 src/freebsd-context.h src/freebsd.c src/freebsd.h: Fix FreeBSD
Packit 577717
  compile warnings  Similar to the perfctr issues.
Packit 577717
Packit 577717
  * 1e6dfb02 src/aix.c src/aix.h: Fix AIX build warnings  They were similar in
Packit 577717
  cause to the perfctr issues.
Packit 577717
Packit 577717
  * 3d0b5785 src/Rules.perfmon2 src/components/appio/appio.c
Packit 577717
  src/components/bgpm/CNKunit/linux-CNKunit.h...: Remove papi_vector.h include
Packit 577717
  from papi_internal.h  There were some semi-circular dependencies that came up
Packit 577717
  with the context split changes.  The easiest way to fix things for perfctr
Packit 577717
  was just move papi_vector.h out to be included explicitly.  This touches a
Packit 577717
  lot of files because a lot of files include papi_internal.h  This should also
Packit 577717
  fix the perfctr and perfmon2 builds that were broken yesterday.
Packit 577717
Packit 577717
2012-07-16  
Packit 577717
Packit 577717
  * a7a14a5b src/ctests/zero.c src/testlib/test_utils.c: Modify zero test to
Packit 577717
  warm up processor before measuring events, and report timing errors as signed
Packit 577717
  deviations. Modify test_utils add_two_events code to check for errors after
Packit 577717
  adding nominally valid events. This is a more rigorous test than just
Packit 577717
  counting available registers.
Packit 577717
Packit 577717
  * de0860d3 src/perf_events.c: Remove perf_events.h module header  It's no
Packit 577717
  longer needed, everything important is merged into the perf_events.c file.
Packit 577717
Packit 577717
  * 22975f14 src/perf_events.c: Remove perf_event SYNCHRONIZED_RESET code  This
Packit 577717
  was never defined and never used, just remove the code.
Packit 577717
Packit 577717
  * 48750b8c src/perf_events.c: Remove papi_pe_allocate_registers  On
Packit 577717
  perf_event this code wasn't really doing anything useful, as
Packit 577717
  update_control_state would end up re-doing any possible tests we could want
Packit 577717
  to do here.
Packit 577717
Packit 577717
  * 1775566f src/Makefile.in src/Makefile.inc src/Rules.pfm4_pe...: Remove
Packit 577717
  "include CPUCOMPONENT" from papi_internal.h  This was the last major
Packit 577717
  dependency on CPU component in common PAPI code.  It was mostly necessary for
Packit 577717
  the ucontext definitions when trying to get the instruction pointer when
Packit 577717
  doing sampling.  This change creates new OS-specific header files that handle
Packit 577717
  the ucontext related code, and has papi_internal.h include that instead.
Packit 577717
Packit 577717
  * 969ce035 src/Rules.pfm4_pe src/Rules.pfm_pe src/configure...: Make
Packit 577717
  perf_event libpfm4 only  perf_event libpfm3 support is not really needed
Packit 577717
  anymore and supporting it was cluttering up the perf_event component.
Packit 577717
Packit 577717
2012-07-13  
Packit 577717
Packit 577717
  * adad1d2a src/perf_events.c: Add init time error messages to perf_event
Packit 577717
  component
Packit 577717
Packit 577717
  * 827ccc07 src/perf_events.c: Add perf_event rdpmc / fast_real_timer
Packit 577717
  detection  Currently we need a custom copy of struct perf_event_mmap_page
Packit 577717
  because the version included with libpfm4 doesn't define the fields we need
Packit 577717
  yet.
Packit 577717
Packit 577717
  * 4f82fe94 src/perf_events.c: Read in paranoid info on perf_events  This
Packit 577717
  indicates whether a regular user can read CPU-specific or system-wide
Packit 577717
  measurements.
Packit 577717
Packit 577717
  * 03080450 src/perf_events.c: Add proper perf_event detection  Using the
Packit 577717
  official /proc/sys/kernel/perf_event_paranoid file
Packit 577717
Packit 577717
  * 6e71d3f7 src/linux-bgq.c: Updated BGQ opcode stuff; cleaned up code.
Packit 577717
Packit 577717
2012-07-11  
Packit 577717
Packit 577717
  * 3114d3dc src/multiplex.c src/papi_internal.c src/perf_events.c: Minor
Packit 577717
  documentation improvements  Plus fixes some typos
Packit 577717
Packit 577717
2012-07-09  
Packit 577717
Packit 577717
  * b60c0f0c src/perf_events.c: Minor cleanups to perf_events.c
Packit 577717
Packit 577717
  * 075278a0 src/aix.c src/freebsd.c src/linux-bgp.c...: Change return value
Packit 577717
  for .allocate_registers  For some reason it returned 1 on success and 0 on
Packit 577717
  failure.  Change it so you return PAPI_OK on success and a PAPI error on
Packit 577717
  failure, to better match all of the other component vectors.
Packit 577717
Packit 577717
  * 29d9e62b src/testlib/test_utils.c: Fixed the print_header routine to report
Packit 577717
  an error message if counters are not found, instead of a negative counter
Packit 577717
  number. Tested by forcing the return value negative; not by running on a Mac,
Packit 577717
  where the error first appeared.
Packit 577717
Packit 577717
  * 74257334 src/ctests/Makefile src/ctests/remove_events.c: Add remove_events
Packit 577717
  test  This just makes sure EventSets still work after an event has been
Packit 577717
  removed.  This is probably covered by other more elaborate tests, but I
Packit 577717
  needed a simple test to make sure I wasn't breaking anything.
Packit 577717
Packit 577717
  * 1372714f src/papi.c src/papi_internal.c src/papi_internal.h: Clean up,
Packit 577717
  rename, and comment _papi_hwi_remap_event_position  I've found this section
Packit 577717
  of code to be confusing for a long time. I think I finally have it mostly
Packit 577717
  figured out.  I've renamed it _papi_hwi_map_events_to_native() to better
Packit 577717
  describe what it does.  The issue is that the native event list in an
Packit 577717
  EventSet can change at various times.  At event add, event remove, and
Packit 577717
  somewhat unexpectedly, whenever ->update_control_state is called (a component
Packit 577717
  can re-arrange native events if it wants, to handle conflicts, etc.)  Once
Packit 577717
  the native event list has been changed, _papi_hwi_map_events_to_native() has
Packit 577717
  to be called to make sure the events all map to the proper native_event
Packit 577717
  again.  Currently we have the _papi_hwi_map_events_to_native() calls in odd
Packit 577717
  places. It seems to cover all possible needed locations, but analyzing that
Packit 577717
  we do takes a lot of analysis...
Packit 577717
Packit 577717
  * f1b837d8 src/papi.c: Remove unused variable in papi.c
Packit 577717
Packit 577717
  * 541bcf44 src/papi_internal.h: Update commens in papi_internal.h  Some of
Packit 577717
  the EventSetInfo comments were out of date.
Packit 577717
Packit 577717
  * e6587847 src/papi.c src/papi_internal.c src/papi_internal.h: Remove unused
Packit 577717
  paramater from _papi_hwi_remap_event_position  The mysterious
Packit 577717
  _papi_hwi_remap_event_position function had a "thisindex" field that was
Packit 577717
  ignored.  This will possibly speed PAPI_start() time as it was running a loop
Packit 577717
  over num_native_events on _papi_hwi_remap_event_position even though each
Packit 577717
  call did the same thing since the value being passed was ignored.
Packit 577717
Packit 577717
  * 3ad3d14b src/papi_internal.c: Clean up and comment add_native_events in
Packit 577717
  papi_internal.c  I'm chasing some weird perf_events behavior with the
Packit 577717
  papi_event_chooser.  The add_native_events code is very hard to understand,
Packit 577717
  working on commenting it more.
Packit 577717
Packit 577717
  * 4e5e7664 src/utils/event_chooser.c: Fix coverity warning in
Packit 577717
  papi_event_chooser
Packit 577717
Packit 577717
  * 666249a8 src/jni/EventSet.java src/jni/FlipInfo.java
Packit 577717
  src/jni/FlopInfo.java...: RIP Java.  Java PAPI wrappers have not been
Packit 577717
  supported for years (2005?). They are being removed to declutter the source.
Packit 577717
Packit 577717
  * e18561fc src/papi_preset.c: Update cmpinfo->num_preset_events properly 
Packit 577717
  This value wasn't being set if we were reading the presets directly from the
Packit 577717
  CSV file.
Packit 577717
Packit 577717
  * 290ab7c3 src/utils/component.c: Have papi_component_avail report counter
Packit 577717
  and event info
Packit 577717
Packit 577717
  * 7c421b9c src/testlib/test_utils.c src/utils/native_avail.c: Remove counter
Packit 577717
  number from the testlib header.  The header was only reporting number of
Packit 577717
  counters for the CPU component, even though the header is printed for many
Packit 577717
  utils and the CPU component might not even be involved.  This could be a bit
Packit 577717
  confusing, so remove it.
Packit 577717
Packit 577717
  * 26432359 src/darwin-common.c src/darwin-memory.c: Improve OSX support  This
Packit 577717
  properly detects CPU information now.  You can get results like this: 
Packit 577717
  Available native events and hardware information.
Packit 577717
  
Packit 577717
  - PAPI Version             : 4.9.0.0 Vendor string and code   : GenuineIntel
Packit 577717
  (1) Model string and code    : Intel(R) Core(TM) i5-2435M CPU @ 2.40GHz (42)
Packit 577717
  CPU Revision             : 7.000000 CPUID Info               : Family: 6 
Packit 577717
  Model: 42  Stepping: 7 CPU Max Megahertz        : 2400 CPU Min Megahertz     
Packit 577717
    : 2400 CPUs per Node            : 0 Total CPUs               : 4 Running in
Packit 577717
  a VM          : no Number Hardware Counters : -4 Max Multiplex Counters   :
Packit 577717
  -4
Packit 577717
  
Packit 577717
  -
Packit 577717
Packit 577717
2012-07-08  
Packit 577717
Packit 577717
  * 845d9ecb src/Makefile.inc src/configure src/configure.in...: Add Mac OSX
Packit 577717
  support  This is enough that things compile and simple utilities run.  No CPU
Packit 577717
  perf counter support.
Packit 577717
Packit 577717
2012-07-06  
Packit 577717
Packit 577717
  * ff6f9ab4 src/linux-bgq.c: missed to delete a debug output.
Packit 577717
Packit 577717
2012-04-17  
Packit 577717
Packit 577717
  * 12e9a11a RELEASENOTES.txt: Release notes for the 4.4 release.
Packit 577717
Packit 577717
2012-07-06  
Packit 577717
Packit 577717
  * ac2eac56 src/papi.c src/papi.h: Add a PAPI_disable_component_by_name entry
Packit 577717
  point.
Packit 577717
Packit 577717
  * 8c490849 src/components/coretemp_freebsd/coretemp_freebsd.c src/freebsd.c:
Packit 577717
  Fix FreeBSD to work  I'm not sure how it ever worked in the past.  With these
Packit 577717
  changes I can at least do a papi_component_avail and a papi_native_avail and
Packit 577717
  get sane results
Packit 577717
Packit 577717
  * 108b5ce6 src/freebsd.c src/freebsd.h src/freebsd/map-atom.c...: Fix FreeBSD
Packit 577717
  build  some of the recent changes broke the FreeBSD build
Packit 577717
Packit 577717
  * 40a60f0a src/linux-bgq.c src/linux-bgq.h: Added BGQ's opcode and generic
Packit 577717
  event functionality to PAPI. For BGQ there are multiple ways to define
Packit 577717
  presets. The naive way is to derive from multiple events. This eats up
Packit 577717
  multiple counters and we lose sample capability as well as overflow
Packit 577717
  capability. On the other side, some events come with multiple InstrGroup
Packit 577717
  derived in the field. If that's the case we can use a generic event and
Packit 577717
  opcodes to filter multiple groups in a single counter. This is not working
Packit 577717
  properly yet due to a known error in BGPM. Bgpm_AddEvent() does not work
Packit 577717
  properly when multiple generic events are added to an EventSet. The BGPM
Packit 577717
  folks have been made aware of this issue, they confirmed the error, and they
Packit 577717
  are currently working on a fix.
Packit 577717
Packit 577717
  * 6f72b70f src/papi_events_table.sh: Make this script robust enough to handle
Packit 577717
  any line ending, including CR (Mac), CRLF (Windows), and LF (Unix). It
Packit 577717
  appears that google mail now automagically converts attached files to CRLF
Packit 577717
  format.
Packit 577717
Packit 577717
  * 765ed0d2 src/papi_internal.c: Fix a type warning in the UE code.
Packit 577717
Packit 577717
  * 94bc1b15 src/MACROS: Remove the MACROS file  it held out of date info and
Packit 577717
  hasn't been touched since 2004
Packit 577717
Packit 577717
  * d19e73ba src/ctests/Makefile src/ctests/clockcore.c
Packit 577717
  src/testlib/Makefile...: Move the clockcore.c file from ctests to testlib 
Packit 577717
  it's common code used by multiple tests, including some in the utils
Packit 577717
  directory  also add a function definition to fix a build-time warning
Packit 577717
Packit 577717
  * 1101a6aa src/aix-lock.h src/aix.h src/configure...: Make papi_lock.h
Packit 577717
  changes for non Linux architectures
Packit 577717
Packit 577717
2012-07-05  
Packit 577717
Packit 577717
  * 3b82b03d src/Makefile.in src/Makefile.inc src/aix.c...: Make the PAPI locks
Packit 577717
  be tied to OS, not to CPU  There is not a papi_lock.h file that when included
Packit 577717
  gets the proper lock include for the OS.  This fixes a lot of previous build
Packit 577717
  hacks where a CPU component was needed in order for locks to work.
Packit 577717
Packit 577717
  * 0632ef42 src/threads.c: Fix spurious init_thread call in threads.c 
Packit 577717
  threads.c was calling init_thread() on all components, even ones that were
Packit 577717
  disabled  Fix it to honor the disable bit, as well as for shutdown_thread(). 
Packit 577717
  This was causing perfctr disable code to not work.
Packit 577717
Packit 577717
  * 19d9de7f src/Makefile.in src/Makefile.inc src/Rules.pfm4_pe...: Replace
Packit 577717
  SUBSTRATE with CPUCOMPONENT in build  This was mostly a configure/build
Packit 577717
  change but it also cleaned up some cases where we were including SUBSTRATE
Packit 577717
  where we didn't have to.
Packit 577717
Packit 577717
  * 829780db src/solaris-common.c src/solaris-common.h
Packit 577717
  src/solaris-niagara2.c...: Move some common solaris code to solaris-common
Packit 577717
Packit 577717
  * 681ef027 src/configure src/configure.in src/solaris-memory.c...: Merge
Packit 577717
  solaris-memory.c and solaris-niagara2-memory.c
Packit 577717
Packit 577717
  * bbd41743 src/solaris-ultra/get_tick.S src/solaris.h: Remove
Packit 577717
  solaris-ultra/get_tick.S  Nothing was using it.
Packit 577717
Packit 577717
  * dc3b6920 src/papi_sys_headers.h src/solaris.h: Remove papi_sys_headers.h 
Packit 577717
  Solaris was the only thing including it, and it wasn't really using it.
Packit 577717
Packit 577717
  * 7ccfa9df src/Makefile.in src/Makefile.inc src/configure...: Move move OS
Packit 577717
  specific code into the new OSFILESSRC  Linux in particular was using MISC for
Packit 577717
  this.
Packit 577717
Packit 577717
  * 6f16c0c5 src/configure: Re-run autoconf to pickup the substrate=>component
Packit 577717
  change.
Packit 577717
Packit 577717
  * cfff1ede src/Makefile.in src/Makefile.inc src/configure...: Remove
Packit 577717
  MEMSUBSTR  In reality, what we want instead of a Memory Substrate is an idea
Packit 577717
  of the OS-specific common code that includes the memory substrate.  This
Packit 577717
  change adds OSFILESSRC and OSFILESOBJ to handle this case in configure
Packit 577717
Packit 577717
  * ca4729e6 src/configure.in: Separate out MEMSUBSTR and make it per-OS
Packit 577717
Packit 577717
  * 3148cba5 src/Matlab/PAPI_Matlab.dsp src/ctests/calibrate.c
Packit 577717
  src/ctests/flops.c...: RIP Windows, remove the windows support code.  Windows
Packit 577717
  has not been activly supported since the transition to Component PAPI (4.0)
Packit 577717
  This cleans up the code-base.
Packit 577717
Packit 577717
2012-07-03  
Packit 577717
Packit 577717
  * a366adf7 src/papi.c src/utils/error_codes.c: Change PAPI_strerror and
Packit 577717
  PAPI_perror to behave more like thir POSIX namesakes.  PAPI_error_descr is
Packit 577717
  made redundant and removed as a result.
Packit 577717
Packit 577717
2012-07-05  
Packit 577717
Packit 577717
  * 7df46f81 src/Rules.pfm src/aix.c
Packit 577717
  src/components/coretemp/linux-coretemp.c...: Move uses of PAPI_ESBSTR to
Packit 577717
  PAPI_ECMP  I left PAPI_ESBSTR defined too for backward compatability.  Also
Packit 577717
  some of the changes update PAPI_ESBSTR to be a more relevant error code, it
Packit 577717
  one is available.
Packit 577717
Packit 577717
2012-07-03  
Packit 577717
Packit 577717
  * fdb348ad src/components/coretemp_freebsd/coretemp_freebsd.c
Packit 577717
  src/components/example/example.c src/components/net/linux-net.c...: A few
Packit 577717
  more substrate removals
Packit 577717
Packit 577717
  * 791747c1 src/cpus.c src/papi.h src/perf_events.c...: Fix bugs introduced by
Packit 577717
  substrate -> component change  Fix some stupid compile bugs that I missed.
Packit 577717
Packit 577717
  * 79b01a47 src/aix.c src/components/appio/appio.c
Packit 577717
  src/components/bgpm/CNKunit/linux-CNKunit.c...: More substrate -> component
Packit 577717
  changes  This changes the vectors .init_substrate -> .init_component
Packit 577717
  .shutdown_substrate -> .shutdown_substrate .init -> .init_thread .shutdown ->
Packit 577717
  .shutdown_thread  hopefully this will make the code clearer.
Packit 577717
Packit 577717
  * 02a10d71 src/Makefile.inc src/aix.c src/cpus.c...: Rename "substrate" to
Packit 577717
  "component"  This first pass only re-names things in comments.
Packit 577717
Packit 577717
2012-07-02  
Packit 577717
Packit 577717
  * c4bbff1c src/papi.c src/papi.h: Minor documentation fixes  Found when
Packit 577717
  writing up the PAPI 5.0 changes document
Packit 577717
Packit 577717
2012-06-30  
Packit 577717
Packit 577717
  * f9cb7346 src/components/vmware/vmware.c: Fix vmware component  apparently I
Packit 577717
  forgot to test the build with the vmguestlib support disabled.
Packit 577717
Packit 577717
2012-06-22  
Packit 577717
Packit 577717
  * 599040d1 src/components/coretemp/linux-coretemp.c
Packit 577717
  src/components/rapl/linux-rapl.c
Packit 577717
  src/components/stealtime/linux-stealtime.c...: Fix libpfm4 ntv_event_to_info
Packit 577717
  event_info_t on other components  This was actually a widespead problem due
Packit 577717
  to cut-and-paste.
Packit 577717
Packit 577717
  * 2b51b439 src/papi_libpfm4_events.c: Properly fix libpfm4 ntv_event_to_info
Packit 577717
  event_info_t event value  The previous fix was subtly wrong.  This is the
Packit 577717
  proper fix, which is to do nothing inside of papi_libpfm4_events.c because
Packit 577717
  papi_internal.c does the right thing for us and we were overwriting that with
Packit 577717
  the wrong value.
Packit 577717
Packit 577717
  * a4f576bf src/ctests/overflow_allcounters.c src/testlib/papi_test.h
Packit 577717
  src/testlib/test_utils.c: Clean up overflow_allcounters code  While tracking
Packit 577717
  down a previous issue I also cleaned up the overflow_allcounters test code to
Packit 577717
  use some of the new interfaces.
Packit 577717
Packit 577717
  * 6903e053 src/papi_libpfm4_events.c: Fix libpfm4 ntv_event_to_info
Packit 577717
  event_info_t event value  The recently added libpfm4 ntv_event_to_info
Packit 577717
  function was not properly oring PAPI_NATIVE_MASK to the event value in the
Packit 577717
  event_info_t struct.  That means if you tried to use that event value to add
Packit 577717
  an event it would fail.  The overflow_allcounters test broke because of this.
Packit 577717
Packit 577717
  * 420c3d11 src/ctests/Makefile src/ctests/disable_component.c src/papi.c...:
Packit 577717
  Add PAPI_get_component_index() and PAPI_disable_component() 
Packit 577717
  PAPI_get_component_index() will return a component index if you give it the
Packit 577717
  name of a component to match.  This saves you having to iterate the entire
Packit 577717
  component list looking.  PAPI_disable_component() will manually mark a
Packit 577717
  component as disabled. It has to be run before PAPI_library_init() is called.
Packit 577717
Packit 577717
  * 11946525 src/aix.c src/components/cuda/linux-cuda.c
Packit 577717
  src/components/example/example.c...: Standardize component names to not end
Packit 577717
  in .c  We were being inconsistent; the time to make them all be the same is
Packit 577717
  now before 5.0 gets out.
Packit 577717
Packit 577717
2012-06-21  
Packit 577717
Packit 577717
  * 274e1ad8 src/components/vmware/tests/Makefile: Fix cut-and-paste error in
Packit 577717
  the vmware component Makefile
Packit 577717
Packit 577717
  * 85d6438d src/utils/event_chooser.c: Update papi_event_chooser to work with
Packit 577717
  components  Now you can specify events from components and it will tell you
Packit 577717
  all the other events on that component that can run with it.  Previously the
Packit 577717
  utility was limited to the CPU component (0) only.
Packit 577717
Packit 577717
  * 3c2fcc83 src/papi_libpfm3_events.c src/papi_libpfm4_events.c
Packit 577717
  src/perf_events.c: Hook up .ntv_code_to_info on perf_event
Packit 577717
Packit 577717
  * 36e864b3 src/papi_libpfm4_events.c src/papi_libpfm_events.h
Packit 577717
  src/perf_events.c: Enable support for showing extended umasks on perf_event 
Packit 577717
  With this change, papi_native_avail now shows event umasks such as :u, :k,
Packit 577717
  :c, :e, and :i. (user, kernel, cmask, edge-trigger, invert)  Thes are boolean
Packit 577717
  or integer events.  They were supported by previous PAPI but they were never
Packit 577717
  enumerated.
Packit 577717
Packit 577717
  * 8f3e305e src/components/coretemp/linux-coretemp.c: Fix cut-and-paste error 
Packit 577717
  in linux-coretemp.c that could lead to wrong size being copied
Packit 577717
Packit 577717
  * 0eedd562 src/libpfm4/lib/events/intel_atom_events.h
Packit 577717
  src/libpfm4/lib/events/intel_core_events.h
Packit 577717
  src/libpfm4/lib/events/intel_coreduo_events.h...: Import most recent libpfm4
Packit 577717
  git  This fixes an issue where there can be confusion between :i and :i=1
Packit 577717
  type events.  It also has initial support for Uncore, though you need a
Packit 577717
  specially patched kernel and PAPI does not support it yet.
Packit 577717
Packit 577717
  * 2f86ec78 src/components/appio/tests/Makefile
Packit 577717
  src/components/appio/tests/appio_test_blocking.c
Packit 577717
  .../appio/tests/appio_test_fread_fwrite.c...: - Fixed tests verbosity by
Packit 577717
  using TESTS_QUIET macro - Fixed Makefile to only include necessary tests for
Packit 577717
  automatic builds (skip blocking tests that read from stdin)
Packit 577717
Packit 577717
  * 6936b955 src/components/appio/README src/components/appio/appio.c
Packit 577717
  src/components/appio/appio.h...: Added polling of read/write descriptor to
Packit 577717
  check which operations would block.
Packit 577717
Packit 577717
  * 48cacccf src/papi.h: Add back PAPI_COMPONENT_INDEX() for backward
Packit 577717
  compatability  It turns out some people were using this for cases other than
Packit 577717
  enumeration.  The proper way to do things now is to use
Packit 577717
  PAPI_get_event_component() which is what this PAPI_COMPONENT_INDEX() now maps
Packit 577717
  to.
Packit 577717
Packit 577717
  * d1ed12b7 src/ctests/Makefile src/ctests/get_event_component.c
Packit 577717
  src/papi.c...: Add PAPI_get_event_component()  This function returns the
Packit 577717
  component an event belongs to.  It also adds a test to test this
Packit 577717
  functionality.
Packit 577717
Packit 577717
2012-06-20  
Packit 577717
Packit 577717
  * ffccf633 src/papi.h: Add component_type field to .cmp_info  The idea is
Packit 577717
  we'll specify CPU, I/O, GPU, hardware, etc.
Packit 577717
Packit 577717
  * 9998eecc src/components/lmsensors/Rules.lmsensors: Another lmsensors build
Packit 577717
  fix
Packit 577717
Packit 577717
  * caa94d64 src/components/lmsensors/linux-lmsensors.c: Update lmsensors
Packit 577717
  component to actually compile.  I finally found a machine with lmsensors
Packit 577717
  installed.
Packit 577717
Packit 577717
  * fbcde325 src/components/lmsensors/linux-lmsensors.c
Packit 577717
  src/components/lmsensors/linux-lmsensors.h: Update lmsensor component  Unlike
Packit 577717
  the other components it hadn't been updated to PAPI 5 standards.  Also, it
Packit 577717
  was wrongly de-allocating all state in "_shutdown" rather than
Packit 577717
  "_shutdown_substrate" which was causing double-frees during tests.
Packit 577717
Packit 577717
  * 0d3c0ae2 src/papi_internal.c: Add some extra debugging to
Packit 577717
  _papi_hwi_get_native_event_info
Packit 577717
Packit 577717
  * 5961c03d src/aix.c src/components/nvml/linux-nvml.c
Packit 577717
  src/ctests/subinfo.c...: Remove cntr_groups from .cmp_info  This information
Packit 577717
  is better exposed by enumeration.
Packit 577717
Packit 577717
  * 2b4193fd src/utils/event_chooser.c: Cleanup and comment event_chooser code
Packit 577717
Packit 577717
  * 7f9fab2b src/ctests/all_native_events.c: Cleanup and add comments to
Packit 577717
  all_native_events.c
Packit 577717
Packit 577717
  * a245b502 src/components/nvml/linux-nvml.c src/ctests/subinfo.c
Packit 577717
  src/freebsd.c...: Remove profile_ear from .cmp_info  The CPU components
Packit 577717
  should handle this internally.
Packit 577717
Packit 577717
  * bca07f3c src/papi.c: Add comments to the PAPI_sprofil code.
Packit 577717
Packit 577717
  * b1e2090c src/papi.c: Minor papi.c cleanups  Fix some minor cosmetic things,
Packit 577717
  including a typo in a comment.
Packit 577717
Packit 577717
  * 8f3aef4a src/ctests/subinfo.c src/papi.h: Remove opcode_match_width field
Packit 577717
  from .cmp_info  This should be exposed via enumeration and not by a field in
Packit 577717
  the generic cmp_info structure.
Packit 577717
Packit 577717
  * 047af629 src/components/nvml/linux-nvml.c src/ctests/subinfo.c
Packit 577717
  src/papi.h...: Remove cntr_OPCM_events field from .cmp_info  This should be
Packit 577717
  exposed via enumeration and not by a field in the generic cmp_info structure.
Packit 577717
Packit 577717
  * 3f1f9e10 src/components/nvml/linux-nvml.c src/ctests/subinfo.c
Packit 577717
  src/papi.h...: Remove cntr_DEAR_events field from .cmp_info  This should be
Packit 577717
  exposed via enumeration and not by a field in the generic cmp_info structure.
Packit 577717
Packit 577717
  * 962c642a src/components/nvml/linux-nvml.c src/ctests/subinfo.c
Packit 577717
  src/papi.h...: Remove cntr_IEAR_events field from .cmp_info  This should be
Packit 577717
  exposed via enumeration and not by a field in the generic cmp_info structure.
Packit 577717
Packit 577717
  * 5aa7eac1 src/components/nvml/linux-nvml.c src/ctests/subinfo.c
Packit 577717
  src/papi.h...: Remove instr_address_range from .cmp_info  This feature should
Packit 577717
  be deteced via enumeration, not via a flag in the generic .cmp_info
Packit 577717
  structure.
Packit 577717
Packit 577717
  * 1bf68d5d src/components/nvml/linux-nvml.c src/ctests/subinfo.c
Packit 577717
  src/papi.h...: Remove data_address_range field from .cmp_info  The proper way
Packit 577717
  to detect this feature is via enumeration.
Packit 577717
Packit 577717
2012-06-19  
Packit 577717
Packit 577717
  * 90037307 src/linux-context.h: Change Linux from using "struct siginfo" to
Packit 577717
  "siginfo_t"  This conforms to POSIX, and fixes newer Fedora where struct
Packit 577717
  siginfo is no longer supported.  This can in theory break on older setups
Packit 577717
  (possibly kernel 2.4). If that happens, we need to somehow detect this using
Packit 577717
  autoconf.
Packit 577717
Packit 577717
2012-06-18  
Packit 577717
Packit 577717
  * ad48b4fa src/Rules.perfctr-pfm: Fix the perfctr-pfm build; for buildbot,
Packit 577717
  mostly.  Have the perfctr-pfm build only build libpfm, like the perfevents
Packit 577717
  builds. The icc build was choking on warnings (-Werror => errors) in the
Packit 577717
  example programs with libpfm, this is not something we depend upon.
Packit 577717
Packit 577717
2012-06-17  
Packit 577717
Packit 577717
  * 358b14f9 src/papi_events.csv: Update BGQ presets
Packit 577717
Packit 577717
  * cf26fc87 src/components/bgpm/CNKunit/linux-CNKunit.c
Packit 577717
  src/components/bgpm/IOunit/linux-IOunit.c
Packit 577717
  src/components/bgpm/L2unit/linux-L2unit.c...: Update bgpm components
Packit 577717
  according to the papi5 changes
Packit 577717
Packit 577717
  * a7b08a91 src/configure src/configure.in src/linux-bgq.c: Merging the BG/Q
Packit 577717
  stuff from stable_4.2 to PAPI 5 did break it. It's corrected now; also
Packit 577717
  predefined events are now working.)
Packit 577717
Packit 577717
2012-06-15  
Packit 577717
Packit 577717
  * 2d5a4205 src/components/bgpm/IOunit/linux-IOunit.c
Packit 577717
  src/components/bgpm/L2unit/linux-L2unit.c src/configure...: Merging the BG/Q
Packit 577717
  stuff from stable_4.2 to PAPI 5 did break it. It's corrected now (almost);
Packit 577717
  predefined events are not working yet.)
Packit 577717
Packit 577717
  * 1b034920 src/papi.c: Re-enable PAPI_event_name_to_code() optimization  In
Packit 577717
  PAPI_event_name_to_code() there was a commented-out optimization where we
Packit 577717
  would check if an event name begins with "PAPI_" before searching the entire
Packit 577717
  preset list for an event name.  The comment says we had to disable this due
Packit 577717
  to "user events", but a check shows that was introduced in e7bd768850ecf90
Packit 577717
  and that the "user events" it means is not the current support, but the
Packit 577717
  now-removed PAPI_set_event_info() function where you could change the names
Packit 577717
  of presets on the fly (even to something not starting with PAPI_).  Since we
Packit 577717
  don't support that anymore, we can re-enable the optimization.
Packit 577717
Packit 577717
2012-06-14  
Packit 577717
Packit 577717
  * 9a26b43d src/papi_internal.c src/papi_internal.h src/papi_preset.c: Remove
Packit 577717
  the 16-component limit  This turned out to be easier than I thought it would
Packit 577717
  be.  Now determining which component an event is in is a two step process. 
Packit 577717
  Before, the code shifted and masked to find the component from bits 26-30. 
Packit 577717
  Now, _papi_hwi_component_index() is used.  There's a new native event table
Packit 577717
  which maps all native events (which are allocated incrementally at first use
Packit 577717
  starting with 0x4000000) to two values, a component number and an "internal"
Packit 577717
  event number.
Packit 577717
Packit 577717
2012-06-13  
Packit 577717
Packit 577717
  * d5c50353 src/papi_internal.c: Fix for the PAPI_COMPONENT_MASK change  I
Packit 577717
  missed two cases in papi_internal.c This was causing the overflow_allcounters
Packit 577717
  test to fail
Packit 577717
Packit 577717
  * 46fd84ce src/components/bgpm/CNKunit/linux-CNKunit.c
Packit 577717
  src/components/bgpm/CNKunit/linux-CNKunit.h
Packit 577717
  src/components/bgpm/IOunit/linux-IOunit.c...: Updating the Q substrate
Packit 577717
  according to the PAPI 5 changes
Packit 577717
Packit 577717
  * 05a8dcbf src/components/appio/appio.c
Packit 577717
  src/components/appio/tests/appio_list_events.c
Packit 577717
  src/components/appio/tests/appio_values_by_code.c...: First steps of removing
Packit 577717
  16-component limit  This change removes PAPI_COMPONENT_INDEX(),
Packit 577717
  PAPI_COMPONENT_MASK and PAPI_COMPONENT_AND_MASK.  It adds the new functions
Packit 577717
  _papi_hwi_component_index() _papi_hwi_native_to_eventcode()
Packit 577717
  _papi_hwi_eventcode_to_native()  By replacing all of the former macros with
Packit 577717
  the equivelant of the latter functions, it allows all of the future
Packit 577717
  16-component limit changes to be made in the functions.  Components now
Packit 577717
  receive as events a plain 32-bit value as their internal native event; the
Packit 577717
  high bits are not set.  This may break some external components.  This change
Packit 577717
  should not break things, but a lot of testing is needed.
Packit 577717
Packit 577717
  * af4cbb86 src/run_tests_exclude.txt: Exclude iozone helper scripts from
Packit 577717
  run_tests.  run_tests.sh looks for executible files under components/*/tests
Packit 577717
  Some of the plotting scripts in appio/iozone were getting picked up.
Packit 577717
Packit 577717
2012-06-12  
Packit 577717
Packit 577717
  * c10c7ccb src/configure src/configure.in: Configure does not work on BGQ due
Packit 577717
  to missing subcomp feature. It worked for stable-4.2 but got lost in current
Packit 577717
  git origin.
Packit 577717
Packit 577717
  * d9a58148 src/aix.c src/ctests/hwinfo.c src/ctests/overflow.c...: Update
Packit 577717
  hw_info_t CPU frequency reporting.  Previously PAPI reported "float mhz" and
Packit 577717
  "int clock_mhz". In theory the first was the current CPU speed, and the
Packit 577717
  latter was the resolution of the cycle counter.  In practice they were both
Packit 577717
  set to the same value (on Linux, read from /proc/cpuinfo) and not very useful
Packit 577717
  when DVFS was enabled, as the value reported was usually lower than the
Packit 577717
  actual frequency running once CPU started being used.  This change adds two
Packit 577717
  new values "cpu_max_mhz" and "cpu_min_mhz" which are read from
Packit 577717
  /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq and
Packit 577717
  /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_min_freq if they are available,
Packit 577717
  and falls back to /proc/cpuinfo otherwise.  All of the tests were updated to
Packit 577717
  use cpu_max_mhz.  The old mhz and clock_mhz values are left for compatability
Packit 577717
  reasons (and set to cpu_max_mhz) but are currently unused otherwise.
Packit 577717
Packit 577717
2012-06-11  
Packit 577717
Packit 577717
  * 0f124891 src/papi_events.csv: Initial PAPI Ivy Bridge Support  for now try
Packit 577717
  to re-use the sandy bridge event presets
Packit 577717
Packit 577717
  * a1f46077 src/libpfm4/docs/man3/libpfm_intel_ivb.3
Packit 577717
  src/libpfm4/include/perfmon/err.h
Packit 577717
  src/libpfm4/lib/events/intel_ivb_events.h...: Import libpfm4 git snapshot 
Packit 577717
  This adds IvyBridge support
Packit 577717
Packit 577717
  * 3bb983cc src/libpfm-3.y/examples_v2.x/self_smpl_multi.c: Fix a libpfm3
Packit 577717
  example program for icc, local fix because libpfm3 is deprecated.  icc does
Packit 577717
  have more enjoyable warnings than gcc, : error 186: pointless comparison of
Packit 577717
  unsigned integer with zero  on this: unsigned int foo; ... if ( foo < 0 )
Packit 577717
Packit 577717
2012-06-06  
Packit 577717
Packit 577717
  * d28adccf src/papi_user_events.c: The user events code had a call to exit,
Packit 577717
  this was bad...
Packit 577717
Packit 577717
2012-06-04  
Packit 577717
Packit 577717
  * 6bf43022 src/testlib/test_utils.c: Further the hack for testing for perf SW
Packit 577717
  events.  Events like
Packit 577717
  
Packit 577717
  - | perf::CPU-CLOCK                                                          
Packit 577717
     | |            PERF_COUNT_SW_CPU_CLOCK                                    
Packit 577717
        |
Packit 577717
  
Packit 577717
  - were passing the check, now we also check the event_info_struct.long_descr
Packit 577717
  field for PERF_COUNT_SW....
Packit 577717
Packit 577717
  * fa4b1a28 src/components/nvml/linux-nvml.c: Cleanup nvml code a little.  A
Packit 577717
  few print statements were left over from debugging. Also check errors from
Packit 577717
  nvml and cuda pciinfo functions, disabling the component in a few more cases.
Packit 577717
Packit 577717
2012-06-01  
Packit 577717
Packit 577717
  * da144a94 src/components/nvml/Makefile.nvml.in src/components/nvml/README
Packit 577717
  src/components/nvml/Rules.nvml...: Rewrite and merge of the nVidia Management
Packit 577717
  library component.  This component attempts to expose all supported
Packit 577717
  'performance counters' on each card cuda knows about at runtime. Much like
Packit 577717
  the cuda component reads happen on the card you're executing on at PAPI_read
Packit 577717
  time.  The test included is a copy of the cuda helloworld test, but it
Packit 577717
  attempts to start/stop the event on each gpgpu. If you select an event that
Packit 577717
  is not supported on the card you're running on we should fail gracefully but
Packit 577717
  this has not been tested.
Packit 577717
Packit 577717
2012-05-23  
Packit 577717
Packit 577717
  * b2d414dc src/components/stealtime/linux-stealtime.c: At units to stealtime
Packit 577717
  component  Added the function but forgot to add a function vector for it.
Packit 577717
Packit 577717
  * ce9d4500 src/components/stealtime/linux-stealtime.c: Add units to stealtime
Packit 577717
   Properly report that the units are in micro seconds.
Packit 577717
Packit 577717
  * 149948c8 src/components/rapl/linux-rapl.c: Minor cleanup of RAPL code 
Packit 577717
  missing "void" paramter in init_substrate function
Packit 577717
Packit 577717
  * 6a7e22fa src/components/vmware/vmware.c: More vmware component fixes.  This
Packit 577717
  makes the component thread-safe.  Also makes it fail more gracefully if the
Packit 577717
  guestlib SDK is installed but does not support our hypervisor (for example,
Packit 577717
  if we are running under VM Workstation).  Still need to test on ESX.
Packit 577717
Packit 577717
  * 072d6473 src/components/appio/tests/appio_test_select.c: added code to
Packit 577717
  intercept and time select() calls.
Packit 577717
Packit 577717
2012-05-22  
Packit 577717
Packit 577717
  * 12b6d0d7 src/components/vmware/vmware.c: Some more minor fixes to VMware
Packit 577717
  component  Try to handle things better if VMguest SDK not working
Packit 577717
Packit 577717
  * 6e015bc5 src/components/vmware/Rules.vmware src/components/vmware/vmware.c:
Packit 577717
  More vmware component fixups  Now works with the events from the VMguest SDK
Packit 577717
  library
Packit 577717
Packit 577717
  * 5fc0f646 src/components/vmware/vmware.c: More cleanup of vmware component 
Packit 577717
  The pseudo-performance counters work again.  Now they behave in accumulate
Packit 577717
  mode, like all other PAPI counters.
Packit 577717
Packit 577717
  * f72b0967 src/components/vmware/tests/vmware_basic.c: Make vmware test a bit
Packit 577717
  more complete
Packit 577717
Packit 577717
  * 070e5481 src/components/vmware/tests/Makefile
Packit 577717
  src/components/vmware/tests/vmware_basic.c: Add a test for the vmware
Packit 577717
  component
Packit 577717
Packit 577717
  * 7cf62498 src/components/vmware/Makefile.vmware.in
Packit 577717
  src/components/vmware/Rules.vmware src/components/vmware/configure...: Clean
Packit 577717
  up the vmware component.  bring it up to date with other components.  make it
Packit 577717
  possible to build it without the vmguest library being installed
Packit 577717
Packit 577717
  * b32ae1ae src/components/stealtime/Rules.stealtime
Packit 577717
  src/components/stealtime/linux-stealtime.c
Packit 577717
  src/components/stealtime/tests/Makefile...: Add a stealtime component  When
Packit 577717
  running in a VM, this provides information on how much time was "stolen" by
Packit 577717
  the hypervisor due to the VM being disabled.  This info is gathered from
Packit 577717
  column 8 of /proc/stat  This currently only works on KVM.
Packit 577717
Packit 577717
  * 9e95b480 src/components/appio/tests/appio_test_blocking.c: Use a
Packit 577717
  non-blocking select to determine which reads and writes would block
Packit 577717
Packit 577717
2012-05-19  
Packit 577717
Packit 577717
  * f60d991f src/components/appio/README src/components/appio/appio.c
Packit 577717
  src/components/appio/tests/appio_test_read_write.c...: Interception of
Packit 577717
  close() implemented. This allows us to correctly determine the number of
Packit 577717
  currently open descriptors.
Packit 577717
Packit 577717
2012-05-17  
Packit 577717
Packit 577717
  * 7cd8b5a3 src/libpfm4/.gitignore src/libpfm4/config.mk
Packit 577717
  src/libpfm4/lib/Makefile...: Update libpfm4 to current git tree
Packit 577717
Packit 577717
  * ebffdb7e src/components/rapl/tests/rapl_overflow.c: Skip rapl_overflow test
Packit 577717
  if RAPL not available
Packit 577717
Packit 577717
  * 98d21ef3 src/components/example/example.c src/components/rapl/linux-rapl.c:
Packit 577717
  Fix some component warnings.
Packit 577717
Packit 577717
  * 0447f373 src/configure src/configure.in src/linux-generic.h: Make build not
Packit 577717
  stall if PAPI_EVENTS_CSV not set  This is some fallout from the FreeBSD
Packit 577717
  changes. PAPI_EVENTS_CSV could not be set, which would make the event
Packit 577717
  creation script hang forever.  Also catch various fallthroughs in the code
Packit 577717
  where SUBSTR wasn't being set, which is how the above problem can happen.
Packit 577717
Packit 577717
  * ef484c00 src/linux-timer.h: Fix typo in linux-timer.h
Packit 577717
Packit 577717
2012-04-14  
Packit 577717
Packit 577717
  * 7c3385f4 src/components/bgpm/CNKunit/CVS/Entries
Packit 577717
  src/components/bgpm/CNKunit/CVS/Repository
Packit 577717
  src/components/bgpm/CNKunit/CVS/Root...: Removed CVS stuff from Q code.
Packit 577717
Packit 577717
  * 2cf4aeb2 src/configure src/configure.in src/linux-bgq.c...: Removed
Packit 577717
  papi_events.csv parsing from Q code. (CVS stuff still needs to be taken care
Packit 577717
  of.)
Packit 577717
Packit 577717
2012-04-12  
Packit 577717
Packit 577717
  * 153c2bb1 INSTALL.txt: Updated INSTALL notes for Q
Packit 577717
Packit 577717
2012-05-17  
Packit 577717
Packit 577717
  * ff6a43fb src/Makefile.in src/Makefile.inc src/components/README...: Added
Packit 577717
  missing files for Q merge.  Conflicts:  src/configure src/configure.in
Packit 577717
  src/freq.c
Packit 577717
Packit 577717
2012-04-12  
Packit 577717
Packit 577717
  * 0e142630 src/Rules.bgpm src/components/bgpm/CNKunit/CVS/Entries
Packit 577717
  src/components/bgpm/CNKunit/CVS/Repository...: Added PAPI support for Blue
Packit 577717
  Gene/Q.
Packit 577717
Packit 577717
2012-05-14  
Packit 577717
Packit 577717
  * ad7e3fa0 src/components/rapl/linux-rapl.c: Properly accumulate RAPL results
Packit 577717
   Previously it was resetting the counts on read, instead of continuing to
Packit 577717
  count as per other PAPI events.
Packit 577717
Packit 577717
  * c79e3018 src/components/rapl/tests/rapl_overflow.c: Fix some warnings in
Packit 577717
  rapl_overflow test
Packit 577717
Packit 577717
  * 731afd1a src/components/rapl/tests/Makefile
Packit 577717
  src/components/rapl/tests/rapl_overflow.c: Add rapl_overflow test  This test
Packit 577717
  sees if we can measure RAPL in conjunction with overflow CPU performance
Packit 577717
  events.
Packit 577717
Packit 577717
  * b0e201bb src/components/rapl/utils/Makefile
Packit 577717
  src/components/rapl/utils/rapl_plot.c: Remove derived "uncore" values from
Packit 577717
  rapl tool  They weren't really measuring uncore, but were just TOTAL - PP0. 
Packit 577717
  It was causing some confusion.
Packit 577717
Packit 577717
2012-05-09  
Packit 577717
Packit 577717
  * 547e9379 doc/Doxyfile-common papi.spec src/Makefile.in...: Bump the version
Packit 577717
  number to 4.9.0.0  Read 4.9 as pre-5.0 master was at version number 4.2.1,
Packit 577717
  this was archaic... Sorry for the confusion Tushar, master is the correct
Packit 577717
  branch for the latest development code.
Packit 577717
Packit 577717
  * 133e3d67 src/configure src/configure.in: Fix perfctr build  In the FreeBSD
Packit 577717
  changes I removed the CPU determination by reading /proc/cpuinfo as that was
Packit 577717
  prone to failure and non-portable.  This broke perfctr as it was doing a huge
Packit 577717
  CPU name lookup to determine if it was on an x86 system or not.  This change
Packit 577717
  fixes that.
Packit 577717
Packit 577717
2012-05-08  
Packit 577717
Packit 577717
  * 42b21d67 src/papi_libpfm4_events.c: Fix PAPI event enumeration inside of
Packit 577717
  VMware  VMware disables the availability of architectural events when
Packit 577717
  virtualized PMU is not available.  libpfm4 was checkign this when enumerating
Packit 577717
  events, and we would end up in the situation where ix86arch was marked active
Packit 577717
  but 0 events were available.  We didn't check for this error condition and
Packit 577717
  thus end up thoroughly confused.
Packit 577717
Packit 577717
2012-05-07  
Packit 577717
Packit 577717
  * fd79a584 src/freebsd.c: Fix event enumeration on FreeBSD  It was passing
Packit 577717
  PAPI_OK in all cases, causing papi_native_avail to try to do things like
Packit 577717
  report groups even when groups weren't available.
Packit 577717
Packit 577717
  * 53732c2e src/freebsd.c: Add Virtual Machine detection support to FreeBSD 
Packit 577717
  again, support for this on x86 is OS Neutral
Packit 577717
Packit 577717
  * 7b4d7c96 src/configure src/configure.in src/freebsd-memory.c...: Add
Packit 577717
  x86_cacheinfo support to FreeBSD  The x86 cache and memory info is
Packit 577717
  OS-independent, so add support for it to FreeBSD.
Packit 577717
Packit 577717
  * 91033df6 src/Makefile.in src/Makefile.inc src/configure...: Re-enable
Packit 577717
  predefined events on FreeBSD
Packit 577717
Packit 577717
  * 36f6dc1b src/freebsd.c src/freebsd/map.c src/freebsd/map.h: Modify FreeBSD
Packit 577717
  to use _papi_load_preset_table
Packit 577717
Packit 577717
  * 45651746 src/freebsd.c: Cleanup the freebsd code a bit.
Packit 577717
Packit 577717
  * e1554ed8 src/configure: re-run autoconf for updated configure
Packit 577717
Packit 577717
  * 1deb2f5d src/Makefile.inc: Make sure a proper dependency for
Packit 577717
  papi_events_table.h exists  Our Makefile code that builds a shared library is
Packit 577717
  way broken; it will fail to rebuild in many cases where the static library
Packit 577717
  properly detects thing.
Packit 577717
Packit 577717
  * 28e28006 src/configure.in: Make papi_events_table.h build normally, not by
Packit 577717
  configure.
Packit 577717
Packit 577717
  * 9a66dfa5 src/configure.in: Another place papi_events_table.sh is called
Packit 577717
Packit 577717
  * 12e4a934 src/Makefile.inc src/papi_events_table.sh: Make
Packit 577717
  papi_events_table.sh take a command line argument  This way we can use it on
Packit 577717
  any .csv file, not just papi_events.csv
Packit 577717
Packit 577717
  * 7018528f src/freebsd/memory.c: Remove unused freebsd/memory.c file
Packit 577717
Packit 577717
  * 819e5826 src/freebsd_events.csv: Make freebsd_events.csv a valid PAPI event
Packit 577717
  file
Packit 577717
Packit 577717
  * 9cc4a468 src/freebsd.c src/freebsd/map-atom.c src/freebsd/map-core.c...:
Packit 577717
  Fix FreeBSD build on head.  This temporarily disables preset events.  There
Packit 577717
  are also a few other minor fixes.
Packit 577717
Packit 577717
2012-05-01  
Packit 577717
Packit 577717
  * ab36c0a2 src/Makefile.inc src/configure src/configure.in: Update build
Packit 577717
  system for FreeBSD
Packit 577717
Packit 577717
  * 2b61d8b7 src/freebsd.c src/freebsd.h: Fix various compiler warnings on
Packit 577717
  FreeBSD
Packit 577717
Packit 577717
  * 2c0bcc84 src/freebsd.c: Enable new Westmere events on FreeBSD
Packit 577717
Packit 577717
  * b0499663 src/freebsd/map-i7.c src/freebsd/map-i7.h
Packit 577717
  src/freebsd/map-westmere.c...: Add Westmere event support for FreeBSD
Packit 577717
Packit 577717
  * e54cabc6 src/ctests/inherit.c: Fix the inherit ctest to compile on FreeBSD
Packit 577717
Packit 577717
  * d9dbdd31 src/components/appio/appio.c: - change in appio component
Packit 577717
  (appio.c): removed reference to .ntv_bits_to_info  as it doesn't exist in the
Packit 577717
  PAPI component interface.
Packit 577717
Packit 577717
2012-04-27  
Packit 577717
Packit 577717
  * 5d661b2d src/Rules.pfm src/Rules.pfm_pe: Add the libpfm -Wno-override-init
Packit 577717
  bandaid to the other rules files.  In
Packit 577717
  b33331b66137668155c02e52c98a7e389fad402e we test if gcc -Wextra complains
Packit 577717
  about some structure initialization that libpfm does. This was incoperated
Packit 577717
  into Rules.pfm4_pe only.  Jim Galarowicz noticed the other Rules files didn't
Packit 577717
  have it.
Packit 577717
Packit 577717
  * 4349b6fd src/Rules.pfm4_pe src/Rules.pfm_pe: Cleanup the perf events Rules
Packit 577717
  files.  Steve Kaufmann reported that CONFIG_PFMLIB_OLD_PFMV2 is only used for
Packit 577717
  libpfm3 builds targeting old versions of perfmon2.
Packit 577717
Packit 577717
2012-04-26  
Packit 577717
Packit 577717
  * 8a7fef68 src/mb.h: Add memory barries for ia64
Packit 577717
Packit 577717
2012-04-24  
Packit 577717
Packit 577717
  * 9af4dd4a src/libpfm4/README src/libpfm4/config.mk
Packit 577717
  src/libpfm4/include/perfmon/perf_event.h...: Import libpfm4 git snapshot 
Packit 577717
  This brings libpfm4 up to 9ffc45e048661a29c2a8ba4bfede78d3feb828f4  The
Packit 577717
  important change is support for Intel Atom Cedarview.
Packit 577717
Packit 577717
2012-04-20  
Packit 577717
Packit 577717
  * fac6aec0 src/linux-bgp-memory.c src/linux-bgp.c: Some BG/P cleanups. 
Packit 577717
  Removed a lot of dead code, noticed when looking for any potential BG/P
Packit 577717
  issues.
Packit 577717
Packit 577717
  * 977709f6 src/linux-bgp-preset-events.c src/linux-bgp.c: Fix PAPI compile on
Packit 577717
  BG/P  Thanks to Harald Servat <harald.servat@bsc.es>
Packit 577717
Packit 577717
2012-04-19  
Packit 577717
Packit 577717
  * 5207799e release_procedure.txt: Modified release_procedure.txt to push
Packit 577717
  tags.
Packit 577717
Packit 577717
2012-04-18  
Packit 577717
Packit 577717
  * b248ae80 doc/Makefile: Have clean remove the doxygen error file.
Packit 577717
Packit 577717
  * 1d4f75a3 doc/Doxyfile-man1 doc/Doxyfile-man3: Fix an error in the Doxygen
Packit 577717
  config files.  Doxygen includes things with @INCLUDE not @include. The html
Packit 577717
  file had this, the man page files did not...
Packit 577717
Packit 577717
2012-04-17  
Packit 577717
Packit 577717
  * 979cda20 cvs2cl.pl delete_before_release.sh gitlog2changelog.py...: Update
Packit 577717
  the release machinery for git.  gitlog2changelog.py takes the output of git
Packit 577717
  log and parses it to something like a changelog.
Packit 577717
Packit 577717
  * 67bdd45f doc/Doxyfile-html: Cover up an instance of doxygen using full
Packit 577717
  paths.  Doxygen ( up to 1.8.0, the most recent at this writing ) would use
Packit 577717
  full paths in directory dependencies ignoring the use relative paths config
Packit 577717
  option.
Packit 577717
Packit 577717
2012-04-13  
Packit 577717
Packit 577717
  * c38eb0b7 src/libpfm-3.y/lib/intel_corei7_events.h
Packit 577717
  src/libpfm-3.y/lib/intel_wsm_events.h src/libpfm-3.y/lib/pfmlib_intel_nhm.c:
Packit 577717
  Add missing update to libpfm3  Somehow during all of the troubles we had with
Packit 577717
  importing libpfm3 into CVS, we lost some Nehalem/Westmere updates.  Tested on
Packit 577717
  a Nehalem machine to make sure this doesn't break anything.
Packit 577717
Packit 577717
  * 193d8d06 src/papi_libpfm3_events.c: Fix max_multiplex case on
Packit 577717
  perf_event/libpfm3  num_mpx_cntrs was being set to 512 even though the real
Packit 577717
  maximum is 32, causing a buffer overflow and segfault.
Packit 577717
Packit 577717
2012-04-12  
Packit 577717
Packit 577717
  * f1f7fb5b src/threads.h: Fix minor typo in a comment
Packit 577717
Packit 577717
  * 0373957d src/linux-timer.c: Fix potential fd leak  Noticed by coverity
Packit 577717
  checker.
Packit 577717
Packit 577717
  * 71727e38 src/ctests/max_multiplex.c: Improve max_multiplex ctest  on
Packit 577717
  perfmon2, this test was failing because the maximum number of multiplexed
Packit 577717
  counters was much more than the available counters we could test with.  This
Packit 577717
  change modifies the test to not fail in this case.
Packit 577717
Packit 577717
2012-04-11  
Packit 577717
Packit 577717
  * fdbdac9f src/perfmon.c: Fix the perfmon substrate.  It was missing a
Packit 577717
  _papi_libpfm_init() call, which meant the number of events was being left at
Packit 577717
  0.
Packit 577717
Packit 577717
2012-04-09  
Packit 577717
Packit 577717
  * 2a44df97 src/libpfm-3.y/examples_v2.x/multiplex.c
Packit 577717
  src/libpfm-3.y/examples_v2.x/pfmsetup.c
Packit 577717
  src/libpfm-3.y/examples_v2.x/rtop.c...: Catch a few libpfm-3.y files up to
Packit 577717
  libpfm-3.10.  More skeletons keep falling out of the cvs closet. This is just
Packit 577717
  what diff -q -r catches.
Packit 577717
Packit 577717
2012-04-04  
Packit 577717
Packit 577717
  * 0e05da68 src/components/rapl/utils/Makefile
Packit 577717
  src/components/rapl/utils/README src/components/rapl/utils/rapl_plot.c: Add
Packit 577717
  the rapl_plot utility to the RAPL component.  This utility uses PAPI to
Packit 577717
  periodicly poll the RAPL counters and generate average power results suitable
Packit 577717
  for plotting.  There's been a lot of interest in this utility so it's
Packit 577717
  probably useful to include it with the RAPL component.
Packit 577717
Packit 577717
  * 2daa03ac src/papi_internal.c: Check if a component is disabled at init
Packit 577717
  time.  This change modifies the code so that at PAPI_library_init() time we
Packit 577717
  check the component disable field, and we don't call the init routines for
Packit 577717
  components the user has disabled.  This allows code like the following to
Packit 577717
  happen _before_ PAPI_library_init():  numcmp = PAPI_num_components();
Packit 577717
  for(cid=0; cid
Packit 577717
  (strstr(cmpinfo->name,"cuda")) { cmpinfo->disabled=1;
Packit 577717
  strncpy(cmpinfo->disabled_reason,"Disabled by user",PAPI_MAX_STR_LEN); } } 
Packit 577717
  We might want to add a specific PAPI_disable_component(int cid) call of maybe
Packit 577717
  even a PAPI_disable_component(char *name) as the above code causes compiler
Packit 577717
  warnings since cmpinfo is returned as a const pointer.  This all works
Packit 577717
  because currently PAPI currently statically allocates all of the components
Packit 577717
  at compile time, so we can view and modify the cmp_info structure before
Packit 577717
  PAPI_library_init() is called.
Packit 577717
Packit 577717
  * 3fd2b21e src/components/appio/README src/components/appio/appio.c
Packit 577717
  src/components/appio/appio.h...: Added support to count reads that are
Packit 577717
  interrupted or would block.
Packit 577717
Packit 577717
2012-04-03  
Packit 577717
Packit 577717
  * dd3a192f release_procedure.txt: Change chmod flags for doxygen stuff from
Packit 577717
  755 to 775 to allow group write permissions.
Packit 577717
Packit 577717
2012-03-30  
Packit 577717
Packit 577717
  * deac54cc src/components/coretemp/linux-coretemp.c
Packit 577717
  src/components/coretemp/tests/coretemp_basic.c
Packit 577717
  src/components/coretemp/tests/coretemp_pretty.c...: Add new
Packit 577717
  PAPI_enum_cmp_event() function  This will be needed when we remove the
Packit 577717
  16-component limit.  Currently in PAPI_enum_event() the component number is
Packit 577717
  gathered from bits 29-26 of the eventcode.  This won't work anymore once we
Packit 577717
  remove those bits.  Also update the various components to not use
Packit 577717
  PAPI_COMPONENT_MASK() as this too will go away in the transition.
Packit 577717
Packit 577717
  * 48331cc9 src/configure src/configure.in src/papi.c...: Place all
Packit 577717
  compiled-in components in the _papi_hwd[] array.  Previously we had separate
Packit 577717
  compiled_in[] and _papi_hwd[] arrays. At init time a pointer to the
Packit 577717
  compiled_in[] was copied to _papi_hwd[] if initialization passed.  This kind
Packit 577717
  of code setup makes enumerating components hard, and finding info from
Packit 577717
  non-available components would require additional function entry points. 
Packit 577717
  This change leaves all compiled in components to _papi_hwd[]. Availability of
Packit 577717
  the component can be checked with the new "disabled" field.  This will make
Packit 577717
  enumeration support a lot easier to add. It can possibly cause user confusion
Packit 577717
  if they try to access component structures directly without checking the
Packit 577717
  "disabled" field first.  This change should also make any eventual support
Packit 577717
  for run-time component enabling/disabling a lot easier.
Packit 577717
Packit 577717
  * 66a72f44 src/papi.c: Documentation was referring to nonexistent
Packit 577717
  "PAPI_enum_events()"  The actual function we have is PAPI_enum_event()
Packit 577717
Packit 577717
  * 0f2c2593 src/components/coretemp/linux-coretemp.c
Packit 577717
  src/components/lustre/linux-lustre.c src/components/mx/linux-mx.c...: Add
Packit 577717
  support for reporting reason for failed component initialization.  This
Packit 577717
  change adds the fields "disabled" and "disabled_reason" to the
Packit 577717
  component_info_t structure.  At initialization time, PAPI will set the
Packit 577717
  "disabled" field to the value returned by component init (that is PAPI_OK if
Packit 577717
  OK or an error otherwise).  This can be checked later to find why component
Packit 577717
  init failed.  Also provided is the "disabled_reason" string.  The components
Packit 577717
  can set this at failure time, and this can be printed later.  For example,
Packit 577717
  this is sample output of the updated papi_component_avail routine: 
Packit 577717
  
Packit 577717
  -  Compiled-in components: Name:   perf_events.c           Linux perf_event
Packit 577717
  CPU counters Name:   linux-rapl              Linux SandyBridge RAPL energy
Packit 577717
  measurements \-> Disabled: Not a SandyBridge processor Name:   example.c     
Packit 577717
           A simple example component Name:   linux-coretemp          Linux
Packit 577717
  hwmon temperature and other info \-> Disabled: No coretemp events found Name:
Packit 577717
    linux-net.c             Linux network driver statistics Name:   linux-mx.c 
Packit 577717
              Myricom MX (Myrinet Express) statistics \-> Disabled: No MX
Packit 577717
  utilities found Name:   linux-lustre.c          Lustre filesystem statistics
Packit 577717
  \-> Disabled: No lustre filesystems found  Active components: Name:  
Packit 577717
  perf_events.c           Linux perf_event CPU counters Name:   example.c      
Packit 577717
          A simple example component Name:   linux-net.c             Linux
Packit 577717
  network driver statistics
Packit 577717
Packit 577717
2012-03-29  
Packit 577717
Packit 577717
  * d84b144e src/components/rapl/Rules.rapl src/components/rapl/linux-rapl.c
Packit 577717
  src/components/rapl/tests/Makefile...: Add a SandyBridge RAPL (Running
Packit 577717
  Average Power Level) Component  This component allows energy measurement at
Packit 577717
  the package-level on Sandybridge machines.  To run, you need the Linux
Packit 577717
  x86-msr kernel module installed and read permissions to /dev/cpu/*/msr  The
Packit 577717
  output from the rapl_busy test looks like this on a SandyBridge-EP machine: 
Packit 577717
  Trying all RAPL events Found rapl component at cid 2  Starting
Packit 577717
  measurements...  Doing a naive 1024x1024 MMM... Matrix multiply sum:
Packit 577717
  s=1016404871450364.375000  Stopping measurements, took 3.979s, gathering
Packit 577717
  results...  Energy measurements: PACKAGE_ENERGY:PACKAGE0	175.786011J	(Average
Packit 577717
  Power 44.2W) PACKAGE_ENERGY:PACKAGE1	 73.451096J	(Average Power 18.5W)
Packit 577717
  DRAM_ENERGY:PACKAGE0	 11.663467J	(Average Power 2.9W) DRAM_ENERGY:PACKAGE1	 
Packit 577717
  8.055389J	(Average Power 2.0W) PP0_ENERGY:PACKAGE0	    119.215500J	(Average
Packit 577717
  Power 30.0W) PP0_ENERGY:PACKAGE1	     16.315216J	(Average Power 4.1W)  Fixed
Packit 577717
  values: THERMAL_SPEC:PACKAGE0	135.000W THERMAL_SPEC:PACKAGE1	135.000W
Packit 577717
  MINIMUM_POWER:PACKAGE0	51.000W MINIMUM_POWER:PACKAGE1	51.000W
Packit 577717
  MAXIMUM_POWER:PACKAGE0	215.000W MAXIMUM_POWER:PACKAGE1	215.000W
Packit 577717
  MAXIMUM_TIME_WINDOW:PACKAGE0	0.046s MAXIMUM_TIME_WINDOW:PACKAGE1	0.046s
Packit 577717
  rapl_basic.c                           PASSED
Packit 577717
Packit 577717
2012-03-26  
Packit 577717
Packit 577717
  * b44d60ca src/components/appio/appio.c src/components/appio/appio.h
Packit 577717
  src/components/appio/tests/appio_test_read_write.c: Added support for
Packit 577717
  intercepting open calls.
Packit 577717
Packit 577717
2012-03-23  
Packit 577717
Packit 577717
  * 9e9fac4b src/Makefile.in src/Rules.pfm4_pe src/configure...: Fix the test
Packit 577717
  case in configure at 0cea1848  Make use of the structure we're using for the
Packit 577717
  override-init test case.
Packit 577717
Packit 577717
  * 0cea1848 src/configure src/configure.in: Doctor CFLAGS when testing for a
Packit 577717
  gcc warning.  -Wextra was not in CFLAGS when I attempted to check for the
Packit 577717
  initialized field overwritten warning. So we set -Wall -Wextra -Werror when
Packit 577717
  running the test code.
Packit 577717
Packit 577717
2012-03-22  
Packit 577717
Packit 577717
  * b33331b6 src/Makefile.in src/Rules.pfm4_pe src/configure...: Fix
Packit 577717
  initialized field overwritten warning when building libpfm4 on some gcc
Packit 577717
  versions.  In gcc 4.2 or so, -Woverride-init was added to -Wextra causing
Packit 577717
  issues with code like struct foo { int a; int b;};  struct foo bar = { .a=0,
Packit 577717
  .b=0, .b=5; };  --Wno-override-init allows us to keep -Werror for libpfm4
Packit 577717
  compiles.
Packit 577717
Packit 577717
2012-03-21  
Packit 577717
Packit 577717
  * ae149766 src/papi_internal.h: Delete an old comment.  Yes, Dan in 2003, we
Packit 577717
  should and do use MAX_COUNTER_TERMS as the size of the event position array.
Packit 577717
Packit 577717
2012-03-20  
Packit 577717
Packit 577717
  * b937cdd8 src/papi_user_events.c: Move the user events code over to using
Packit 577717
  the new preset event data structure.
Packit 577717
Packit 577717
2012-03-14  
Packit 577717
Packit 577717
  * 6ca599e2 src/papi_internal.c: Fix a small memory leak.  We weren't freeing
Packit 577717
  _papi_hwd, causing a lot of MEM_LEAK warnings in buildbot.
Packit 577717
Packit 577717
2012-03-13  
Packit 577717
Packit 577717
  * 473b8203 src/aix.h src/configure src/configure.in...: Remove last MY_VECTOR
Packit 577717
  usage.  Have configure explicitly set the name of the perf counter substrate
Packit 577717
  vector in the components_config.h file  This removes one more special case,
Packit 577717
  and gets us slightly closer to being able to have multiple CPU substrates
Packit 577717
  compiled in at once.
Packit 577717
Packit 577717
  * 360c3003 src/papi.c src/papi_libpfm3_events.c src/papi_libpfm_events.h...:
Packit 577717
  Clean up the papi_libpfm3_events.c code.  Move code that was perfctr specific
Packit 577717
  into perfctr-x86.c
Packit 577717
Packit 577717
  * 03de65e3 src/libpfm-3.y/examples_v2.x/multiplex.c
Packit 577717
  src/libpfm-3.y/examples_v2.x/pfmsetup.c
Packit 577717
  src/libpfm-3.y/examples_v2.x/rtop.c...: Fix some libpfm3 warnings.  libpfm3
Packit 577717
  is not maintained anymore, so applied these changes locally.  libpfm3 is
Packit 577717
  compiled with -Werror so they broke the build with newer gcc even though they
Packit 577717
  are just warnings in example programs.
Packit 577717
Packit 577717
  * ad490353 src/ctests/zero_named.c src/utils/multiplex_cost.c: Fix a few
Packit 577717
  compiler warnings in the tests.
Packit 577717
Packit 577717
  * a0fec783 src/linux-timer.c: Fix another linux-timer.c compile problem.  I
Packit 577717
  hadn't tested with debug enabled, so all of buildbot failed last night.
Packit 577717
Packit 577717
2012-03-12  
Packit 577717
Packit 577717
  * a3733ecd src/linux-timer.h: Fix typo in the linux-timer.h header 
Packit 577717
  _linux_get_virt_usec_timess should have been _linux_get_virt_usec_times 
Packit 577717
  Thanks to Steve Kaufmann for noticing this.
Packit 577717
Packit 577717
  * 785db5ae src/linux-common.c src/linux-timer.c: Fix timer compile on Power
Packit 577717
  machines  Power, ARM, and MIPS have no get_cycles() call so provide a dummy
Packit 577717
  function on these architectures.
Packit 577717
Packit 577717
  * 708090ee src/linux-common.c src/linux-timer.h: Another fix for non-POSIX
Packit 577717
  timers  The recent changes had the name of the fallback usec method wrong.
Packit 577717
Packit 577717
  * 88e8d355 src/papi_libpfm3_events.c: Fix a warning in the libpfm3 code.
Packit 577717
Packit 577717
  * 8ca63705 src/configure src/configure.in src/linux-common.c...: Fix build
Packit 577717
  when not using POSIX timers  The PAPI build system was being overly clever
Packit 577717
  with how it defined what kind of wall clock timers were to be used, so of
Packit 577717
  course I broke things when breaking the timer code out to make it a bit more
Packit 577717
  understandable.  This patch breaks out the timer define into two pieces; one
Packit 577717
  saying it's a POSIX timer and one saying whether to use HR timers or not.
Packit 577717
Packit 577717
2012-03-09  
Packit 577717
Packit 577717
  * b69ad727 src/linux-common.c src/linux-timer.c src/linux-timer.h: Add Linux
Packit 577717
  posix gettime() nanosecond functions
Packit 577717
Packit 577717
  * af2c9a49 src/papi.c src/papi_vector.c src/papi_vector.h: Add
Packit 577717
  ->get_virt_nsec() and ->get_real_nsec() OS vectors  Currently PAPI was just
Packit 577717
  cheating and running the usec functions and multiplying by 1000.  Make this
Packit 577717
  the default, but allow the OS code to override if they have timers capable of
Packit 577717
  returning nsec percision.
Packit 577717
Packit 577717
  * 24c68dbe src/aix.c src/freebsd.c src/linux-bgp.c...: Clean up
Packit 577717
  ->get_virt_usec()  It no longer needs to be passed a context, so remove that
Packit 577717
  from all callers.  Also, ->get_virt_cycles() was just a get_virt_usec()*MHz
Packit 577717
  on most platforms.  While this is a bit dubious (especially as MHz can't be
Packit 577717
  relied on) make this a common routine that will be added at innoculate time
Packit 577717
  if ->get_virt_cycles() is set to NULL.
Packit 577717
Packit 577717
  * a3ef7cef src/linux-common.c src/linux-timer.c src/linux-timer.h: Cleanup
Packit 577717
  the Linux timer code.  Split things up a bit to make the code more readable.
Packit 577717
Packit 577717
  * 50ce8ea0 src/papi_internal.c: Change a strcpy() to strncpy() just to be a
Packit 577717
  bit safer.
Packit 577717
Packit 577717
  * 0526b125 src/components/lmsensors/linux-lmsensors.c: Fix buffer overrun in
Packit 577717
  lmsensors component
Packit 577717
Packit 577717
  * b088db70 src/libpfm4/config.mk
Packit 577717
  src/libpfm4/docs/man3/pfm_get_os_event_encoding.3
Packit 577717
  src/libpfm4/examples/showevtinfo.c...: Update to current git libpfm4 snapshot
Packit 577717
Packit 577717
  * ccb45f61 src/aix.c src/extras.c: Fix segfault on AIX  During some of the
Packit 577717
  cleanups, the extras.h header was not added to aix.c  This made some of the
Packit 577717
  functions (silently) use default data types for the function parameters,
Packit 577717
  leading to segfaults in some of the tests.
Packit 577717
Packit 577717
2012-03-08  
Packit 577717
Packit 577717
  * 1cb22d0b src/components/coretemp/linux-coretemp.c src/utils/native_avail.c:
Packit 577717
  Make "native_avail -d" report units if available  Add units support to the
Packit 577717
  coretemp component, have native_avail -d (detailed mode) print it to make
Packit 577717
  sure it works.
Packit 577717
Packit 577717
  * 9c54840e src/extras.c src/extras.h src/papi_internal.c...: Add new
Packit 577717
  ntv_code_to_info vector  This will allow components to return the extended
Packit 577717
  event_info data for native events.  If a component doesn't implement
Packit 577717
  ntv_code_to_info then get_event_info falls back to the old way of just
Packit 577717
  reporting symbol name and long description.
Packit 577717
Packit 577717
  * c4579559 src/papi.h: Add new event_info fields  New fields are added to
Packit 577717
  event_info that allow passing on extended information.  This includes things
Packit 577717
  such as measurement units, data type, location, timescope, etc.
Packit 577717
Packit 577717
  * 17533e4e src/ctests/all_events.c src/ctests/derived.c
Packit 577717
  src/ctests/kufrin.c...: Restore fields to event_info structure  The changes
Packit 577717
  made were probably too ambitious, even for a 5.0 release.  In the end it
Packit 577717
  looks like we can remain API compatible while just using up a little more
Packit 577717
  memory.  We can still save space by shrinking preset_t behind the scenes.
Packit 577717
Packit 577717
  * 6f13a5f6 src/aix.c src/components/coretemp/linux-coretemp.c
Packit 577717
  src/components/coretemp_freebsd/coretemp_freebsd.c...: Remove
Packit 577717
  ->ntv_bits_to_info vector from component interface  We weren't using it
Packit 577717
  anymore, and many of the components were just setting it to NULL
Packit 577717
  unncessarily.  We'll be replacing the functionality soon with
Packit 577717
  ntv_code_to_info
Packit 577717
Packit 577717
  * 401f37bc src/components/example/example.c src/ctests/subinfo.c src/papi.h:
Packit 577717
  Remove invert and edge_detect fields from component info  These fields were
Packit 577717
  there to indicate if a CPU component supported these attributes (for Intel
Packit 577717
  processors) but in the end we never used these.  The proper way to export
Packit 577717
  this info is during event enumeration.
Packit 577717
Packit 577717
  * f32fe481 src/papi_events.csv: We had the PAPI_VEC_INS preset wrong on amd
Packit 577717
  fam12h llano
Packit 577717
Packit 577717
  * 38a8d8a7 src/ctests/multiplex2.c src/papi_preset.c: Fix preset adding code
Packit 577717
  to be more robust.  If an invalid event is in a preset definition, we'd
Packit 577717
  currently add it with an eventcode of 0 to the preset, which would break if
Packit 577717
  you tried to use the event.  This change properly prints a warning in this
Packit 577717
  case, and sets the preset to be unavailable.
Packit 577717
Packit 577717
  * 2591a546 src/ctests/val_omp.c src/ctests/zero_omp.c: Remove the hw_info
Packit 577717
  field from add_two_events calls.  Two ctests missed the bus when Vince
Packit 577717
  reworked the add_two_events call.
Packit 577717
Packit 577717
  * 358a2e32 src/papi_internal.c src/papi_preset.c: Fix segfault seen on an AMD
Packit 577717
  fusion machine  With the recent preset and component hanges, we were not
Packit 577717
  properly resetting papi_num_components if PAPI_library_init()/PAPI_shutdown()
Packit 577717
  was called multiple times.
Packit 577717
Packit 577717
2012-03-07  
Packit 577717
Packit 577717
  * 7751f5d8 src/ftests/zeronamed.F: Fix a compile error on aix.  Dan ran over
Packit 577717
  72 characters on a single line. xlf actually enforced that part the Fortran
Packit 577717
  spec.
Packit 577717
Packit 577717
2012-03-06  
Packit 577717
Packit 577717
  * 1c87d89c src/ftests/Makefile src/ftests/zeronamed.F src/papi_fwrappers.c:
Packit 577717
  Add support for {add, remove, query}_named to Fortran interface; add zero
Packit 577717
  named.F test case; modify ftests Makefile to support "all" tag.
Packit 577717
Packit 577717
  * 71bd4fdd src/configure src/configure.in: Modify configure to define the
Packit 577717
  default FTEST_TARGETS as "all"
Packit 577717
Packit 577717
  * 54e39855 src/components/vmware/vmware.c: Changed tri8ggering environment
Packit 577717
  variable to PAPI_VMWARE_PSEUDOPERFORMANCE per Vince's earlier email. This
Packit 577717
  should complete all the VMware component changes.
Packit 577717
Packit 577717
2012-03-05  
Packit 577717
Packit 577717
  * 845503fb src/Makefile.inc: Add missing MISCSRCS line to Makefile.inc  This
Packit 577717
  was breaking the shared library build
Packit 577717
Packit 577717
2012-02-01  
Packit 577717
Packit 577717
  * 11be8e4b .../appio/tests/appio_test_fread_fwrite.c
Packit 577717
  src/components/appio/tests/appio_test_pthreads.c
Packit 577717
  src/components/appio/tests/appio_test_read_write.c: updated these tests to
Packit 577717
  print timing information
Packit 577717
Packit 577717
  * 9ad62ab1 src/components/appio/README src/components/appio/appio.c
Packit 577717
  src/components/appio/appio.h...: Added support for timing I/O calls. Updated
Packit 577717
  tests and README.
Packit 577717
Packit 577717
2012-01-31  
Packit 577717
Packit 577717
  * beaa5ff0 src/components/appio/tests/iozone/Changes.txt
Packit 577717
  src/components/appio/tests/iozone/Generate_Graphs
Packit 577717
  src/components/appio/tests/iozone/Gnuplot.txt...: added the latest stable
Packit 577717
  iozone to the appio tests.
Packit 577717
Packit 577717
  * 4af58174 src/components/appio/README src/components/appio/tests/Makefile
Packit 577717
  src/components/appio/tests/init_fini.c: added a hook to run the appio test
Packit 577717
  for iozone.
Packit 577717
Packit 577717
2012-01-21  
Packit 577717
Packit 577717
  * 15c733cf src/components/appio/CHANGES src/components/appio/README
Packit 577717
  src/components/appio/appio.c...: Removed stray 'net' references. All
Packit 577717
  remaining references are only for the purpose of giving credit. Updated
Packit 577717
  change log.
Packit 577717
Packit 577717
2012-01-20  
Packit 577717
Packit 577717
  * ca4b6785 src/components/appio/README src/components/appio/appio.c
Packit 577717
  src/components/appio/tests/appio_list_events.c...: - general cleanup -
Packit 577717
  improved tests to be quiet and be conform to other PAPI tests - replaced
Packit 577717
  hardwire constants in appio.c with symbolic ones - tests will now write to
Packit 577717
  /dev/null to avoid filling the terminal screen with useless text - more
Packit 577717
  comments added - @author added to files - updated README
Packit 577717
Packit 577717
2012-01-18  
Packit 577717
Packit 577717
  * bb22ed9f src/components/appio/README src/components/appio/Rules.appio
Packit 577717
  src/components/appio/appio.c...: - Added support to measure
Packit 577717
  bytes/calls/eof/short calls for read/write calls. - Interception of
Packit 577717
  read/write and fread/fwrite calls. - Works for static and dynamic linkage
Packit 577717
  (without need for LD_PRELOAD) - Tested OK on 32-bit i686 Linux 2.6.38. 
Packit 577717
  Tushar
Packit 577717
Packit 577717
2011-12-03  
Packit 577717
Packit 577717
  * d58b34b6 src/components/appio/tests/Makefile
Packit 577717
  src/components/appio/tests/appio_list_events.c
Packit 577717
  src/components/appio/tests/appio_values_by_code.c...: *** empty log message
Packit 577717
  ***
Packit 577717
Packit 577717
  * cd7d7acc src/components/appio/tests/appio_values_by_name.c: file
Packit 577717
  appio_values_by_name.c was added on branch appio on 2011-12-03 05:22:06 +0000
Packit 577717
Packit 577717
  * 425e4d09 src/components/appio/tests/appio_values_by_code.c: file
Packit 577717
  appio_values_by_code.c was added on branch appio on 2011-12-03 05:22:06 +0000
Packit 577717
Packit 577717
  * 596ad9bb src/components/appio/tests/appio_list_events.c: file
Packit 577717
  appio_list_events.c was added on branch appio on 2011-12-03 05:22:06 +0000
Packit 577717
Packit 577717
  * 119543dc src/components/appio/tests/Makefile: file Makefile was added on
Packit 577717
  branch appio on 2011-12-03 05:22:06 +0000
Packit 577717
Packit 577717
2012-03-05  
Packit 577717
Packit 577717
  * ba748a41 src/components/vmware/configure: Remove old configuration
Packit 577717
  parameters from vmware/configure
Packit 577717
Packit 577717
2012-03-02  
Packit 577717
Packit 577717
  * 2b7e2abb src/ctests/Makefile src/ctests/max_multiplex.c: Add a new
Packit 577717
  max_multiplex test  This tries to use the maximum number of multiplexed
Packit 577717
  events.  This was written in response to the 32/64 perf_event multiplexed
Packit 577717
  event limit reported by Mohammad j. Ranji
Packit 577717
Packit 577717
  * a0985ff5 src/multiplex.c src/papi_internal.c src/papi_libpfm4_events.c...:
Packit 577717
  Fix issue when using more than 32 multiplexed events on perf_event  On
Packit 577717
  perf_event we were setting num_mpx_cntrs to 64.  This broke, as the
Packit 577717
  MPX_EventSet struct only allocates room for PAPI_MPX_DEF_DEG events, which is
Packit 577717
  32.  This patch makes perf_event use a value of 32 for num_mpx_cntrs,
Packit 577717
  especially as 64 was arbitrarily chosen at some point (the actual value
Packit 577717
  perf_event can support is static, but I'm pretty sure it is higher than 64).
Packit 577717
Packit 577717
  * 331c516c src/ctests/acpi.c: Remove the acpi.c file from ctests  It wasn't
Packit 577717
  being built, and we removed the ACPI component a while ago.
Packit 577717
Packit 577717
  * 73e7d191 src/components/vmware/vmware.c: Removed all old references to
Packit 577717
  #define VMWARE_PSEUDO_PPERF and switched over to getenv
Packit 577717
Packit 577717
2012-03-01  
Packit 577717
Packit 577717
  * 969b8aa9 src/ctests/Makefile src/ctests/zero_named.c src/papi.c: Three new
Packit 577717
  APIs: PAPI_query_named_event PAPI_add_named_event PAPI_remove_named_event and
Packit 577717
  a new test: zero_named Still to do: maybe test named native events and
Packit 577717
  support Fortran
Packit 577717
Packit 577717
  * 97bf9bf8 src/papi.c src/papi.h: First pass implementation of {add, remove,
Packit 577717
  query}_named_event
Packit 577717
Packit 577717
  * 2416af88 src/components/vmware/vmware.c: Add functionality to getenv
Packit 577717
  selectors
Packit 577717
Packit 577717
  * 297f9cd6 src/papi.c: Fix possible race in _papi_hwi_gather_all_thrspec_data
Packit 577717
   The valgrind helgrind tool noticed this with the thrspecific test
Packit 577717
Packit 577717
  * be599976 src/papi_internal.c: Add some locking in
Packit 577717
  _papi_hwi_shutdown_global_internal  This caused a glibc double-free warning,
Packit 577717
  and was caught by the Valgrind helgrind tool in krentel_pthreads  There are
Packit 577717
  some other potential locking issues in PAPI_shutdown, especially when debug
Packit 577717
  is enabled.
Packit 577717
Packit 577717
  * 8444d577 src/utils/clockres.c src/utils/command_line.c: Cleanup the oxygen
Packit 577717
  markup for the utilities.
Packit 577717
Packit 577717
  * 7144394f doc/Doxyfile-html: Missed a recursive tag for the html config
Packit 577717
  file.
Packit 577717
Packit 577717
  * 63b2efc4 src/papi_preset.c: Fix segfaults in tests on AMD machines  The
Packit 577717
  papi_preset code was wrongly calling papi_free() on some code that was
Packit 577717
  allocated with strdup()  (not with papi_malloc).  We were only noticing this
Packit 577717
  on AMD machines because it was the code for freeing developer notes in
Packit 577717
  presets, and currently only AMD events have developer notes.
Packit 577717
Packit 577717
  * 0b1350df src/linux-common.c: Touch 'virtual_vendor_name' to cleanup a
Packit 577717
  warning on bluegrass.
Packit 577717
Packit 577717
2012-02-29  
Packit 577717
Packit 577717
  * 1f17b571 src/Makefile.inc src/Rules.perfctr-pfm src/Rules.pfm4_pe...: Merge
Packit 577717
  the contents of papi_libpfm_presets.c into papi_preset.c  The code isn't
Packit 577717
  libpfm specific at all anymore, it's the generic "read presets from a file"
Packit 577717
  code.  It makes more sense to find it in papi_presets.c
Packit 577717
Packit 577717
  * d087d49f src/papi_fwrappers.c: Fix Fortran breakage after the preset event
Packit 577717
  changes
Packit 577717
Packit 577717
  * 156141ec src/papi_libpfm_presets.c src/papi_preset.c src/papi_preset.h:
Packit 577717
  Simplify papi_libpfm_presets.c  Previously adding presets from
Packit 577717
  papi_events.csv was a three step process.  1.  Load the presets from the
Packit 577717
  file, put in temporary structure. 2.  Convert this temporary structure to a
Packit 577717
  "findem" dense structure 3.  Pass this dense structure to
Packit 577717
  _papi_hwi_setup_all_presets for final assignment.  This change creates the
Packit 577717
  final assignment directly without the intermediate two steps.
Packit 577717
Packit 577717
  * 8bc2bafd src/papi.c src/papi.h src/papi_common_strings.h...: Make the
Packit 577717
  internal preset_info match the one exported by papi.h  There were a lot of
Packit 577717
  cases where the same structure fields were available, just with different
Packit 577717
  names.  That was confusing.  Also, this allows using a pointer to the preset
Packit 577717
  info instead of having to copy values out of the structure when gathering
Packit 577717
  event info for presets.
Packit 577717
Packit 577717
  * 8fda68cb src/genpapifdef.c src/papi.c src/papi_common_strings.h...: Merge
Packit 577717
  the 4 separate preset structs into one.  _papi_hwi_presets was a structure
Packit 577717
  containing pointers to 4 other arrays of structures which held the actual
Packit 577717
  preset data.  This change merges all of these into one big structure.
Packit 577717
Packit 577717
2012-02-28  
Packit 577717
Packit 577717
  * e69815d7 src/linux-bgp.c src/papi_internal.c src/papi_internal.h...:
Packit 577717
  Removing remaining vestiges of references to bipartite routines. Now the only
Packit 577717
  references are in papi_bipartite.h, perfctr-x86.c and winpmc-p3.c.
Packit 577717
Packit 577717
  * 5766b641 src/papi_bipartite.h src/perfctr-x86.c
Packit 577717
  src/win2k/substrate/winpmc-p3.c: These changes implement the bipartite
Packit 577717
  allocation routine as a header file to be included in whatever cpu component
Packit 577717
  needs it. Right now, that's just perfecter-x86 and windows. Both components
Packit 577717
  have been modified and perfecter-86 compiles cleanly. Neither has been tested
Packit 577717
  since I don't have access to a test bed.
Packit 577717
Packit 577717
  * 7f444b76 src/papi_libpfm_presets.c src/papi_preset.c src/papi_preset.h:
Packit 577717
  Merge the hwi_dev_notes structure into hwi_preset_data
Packit 577717
Packit 577717
  * 21a1d197 src/components/vmware/vmware.c: add getenv
Packit 577717
Packit 577717
  * 08c1b474 src/perfctr-x86.c: Merge bipartite routine into perfecter-x86
Packit 577717
  component, since this is effectively the only place it is used.
Packit 577717
Packit 577717
  * 9ed9b1f5 src/papi.c: Remove a reference to PAPI_set_event_info() which was
Packit 577717
  removed for PAPI 4
Packit 577717
Packit 577717
  * c626f064 src/ctests/all_events.c src/ctests/derived.c
Packit 577717
  src/ctests/kufrin.c...: Convert PAPI_event_info_t to separate preset event
Packit 577717
  info  This moves the preset event info to its own separate structure, which
Packit 577717
  reduces greatly the large string overhead that is not used by the native
Packit 577717
  events.
Packit 577717
Packit 577717
  * 787d6822 src/perfctr-x86.c: Move bipartite stuff to perfctr_x86 since
Packit 577717
  that's really the only place it's currently used.
Packit 577717
Packit 577717
  * 229c8b41 src/components/vmware/vmware.h: Add env_var definition to vmware.h
Packit 577717
Packit 577717
  * 46aaf6ca src/components/vmware/vmware.c: Remove all unneeded cases
Packit 577717
Packit 577717
  * 874a5718 src/freebsd.c src/perfctr-ppc64.c: Remove more unused references
Packit 577717
  to .bpt_ routines in preparation for refactoring.
Packit 577717
Packit 577717
  * 74e5a5fd src/components/vmware/vmware.h: Remove uneeded defines from
Packit 577717
  vmware.h header
Packit 577717
Packit 577717
  * 58b51367 src/components/coretemp_freebsd/coretemp_freebsd.c
Packit 577717
  src/components/vmware/vmware.c src/solaris-niagara2.c...: Remove unused
Packit 577717
  references to .bpt_ routines in preparation for refactoring.
Packit 577717
Packit 577717
2012-02-27  
Packit 577717
Packit 577717
  * 6b184158 src/Makefile.inc src/components/coretemp/linux-coretemp.c
Packit 577717
  src/configure...: Have separate concept of "compiled-in" versus "active"
Packit 577717
  components  With this change, the _papi_hwd[] component info array only
Packit 577717
  contains a null-terminated list of _active_ components.  The
Packit 577717
  _papi_compiled_components[] array has the original full list.  At
Packit 577717
  init_substrate[] time a pointer to a component is only put in the _papi_hwd[]
Packit 577717
  list if it is successfully initialized.  In addition the
Packit 577717
  PAPI_num_compiled_components() and PAPI_get_compiled_component_info() calls
Packit 577717
  have been added, but this is probably a confusing interface so they might
Packit 577717
  only be temporary additions.
Packit 577717
Packit 577717
  * 042bfd5b src/Makefile.inc src/papi.c src/papi_data.c...: Split the contents
Packit 577717
  of papi_data.c to various other files.  The data declarations in papi_data.c
Packit 577717
  were mostly used in other files. Move these into more relevant locations.
Packit 577717
Packit 577717
  * 1877862c src/papiStdEventDefs.h src/papi_common_strings.h: Remove the BGL
Packit 577717
  and BGP specific pre-defined events.  They can be better replaced by
Packit 577717
  user-events, and we also had already removed BGL support completely a while
Packit 577717
  back.  This removes some ifdefs from the pre-defined event list and keeps
Packit 577717
  future pre-defined events from having different eventcodes on different
Packit 577717
  platforms.
Packit 577717
Packit 577717
  * c3986b79 src/components/coretemp/linux-coretemp.c
Packit 577717
  src/components/cuda/linux-cuda.c
Packit 577717
  src/components/infiniband/linux-infiniband.c...: Add names and descriptions
Packit 577717
  for components.  Also fixes cuda and lmsensors build issues introduced by
Packit 577717
  vector.h cleanup
Packit 577717
Packit 577717
  * 2c84f920 src/aix.c src/freebsd.c src/perf_events.c...: Add names and
Packit 577717
  descriptions to all of the CPU substrates.
Packit 577717
Packit 577717
  * 9f3e634a src/components/example/example.c src/papi.h src/utils/component.c:
Packit 577717
  Add new "description" and "short_name" fields to .cmp_info structure  This
Packit 577717
  description field allows components to provide extra information on what they
Packit 577717
  do.  The short_name field will eventually be used to pre-pend event names. 
Packit 577717
  The papi_component_avail utility has been updated to print the description. 
Packit 577717
  The example component was updated to fill in these values.
Packit 577717
Packit 577717
  * ab61c9a7 src/Makefile.inc src/genpapifdef.c src/papi_common_strings.h...:
Packit 577717
  Split papi_data.c into two parts  papi_data.c was half data structure
Packit 577717
  definitions for all of PAPI and half string definitions used by both PAPI
Packit 577717
  *and* genpapifdef  This splits the common string definitions to
Packit 577717
  papi_common_strings.h so that genpapifdef can still be built w/o linking
Packit 577717
  libpapi.a while making the code a lot easier to follow.
Packit 577717
Packit 577717
  * b8e6294c src/solaris-ultra.c: Remove unncessary extern declarations from
Packit 577717
  solaris-ultra.c.
Packit 577717
Packit 577717
  * 5ddaff91 src/sys_perf_event_open.c: Remove unncessary extern declarations
Packit 577717
  from sys_perf_event_open.c
Packit 577717
Packit 577717
  * a6c463b7 doc/Doxyfile-common.config: Create a common config file for
Packit 577717
  doxygen.  As part of streamlining the doxygen process, this is a new template
Packit 577717
  doxygen config files. This is a blank template file generated by doxygen
Packit 577717
  1.7.4 (the version currently mandated by the release procedure )
Packit 577717
Packit 577717
  * dc2c11fa src/aix.c src/aix.h src/perfmon.c...: The vector pre-definition
Packit 577717
  should be in the .c file, not the .h file
Packit 577717
Packit 577717
  * 0b3c83c3 src/perf_events.c: Remove unnecessary extern declarations in
Packit 577717
  perf_events.c
Packit 577717
Packit 577717
  * b93efca0 src/perfmon.c src/perfmon.h: Remove unnecessary extern
Packit 577717
  declarations in perfmon.c
Packit 577717
Packit 577717
  * 7f7a2359 src/papi_preset.c: Remove unnecessary extern declarations from
Packit 577717
  papi_preset.c
Packit 577717
Packit 577717
  * ecec03ad src/papi_libpfm_presets.c: Remove extraneous extern declarations
Packit 577717
  from papi_libpfm_presets.c
Packit 577717
Packit 577717
  * 7b5f3991 src/extras.c: remove extraneous extern declarations from extras.c
Packit 577717
Packit 577717
  * f6470e4d src/aix-memory.c src/aix.c src/aix.h: Remove unncessary extern
Packit 577717
  declarations from aix.c
Packit 577717
Packit 577717
  * f197d4ab src/papi_data.h src/papi_internal.c: Remove unncessary extern
Packit 577717
  declarations in papi_internal.c
Packit 577717
Packit 577717
  * e7b39d48 src/papi.c src/papi_data.c src/papi_data.h...: remove unnecessary
Packit 577717
  extern definitions from papi.c
Packit 577717
Packit 577717
2012-02-24  
Packit 577717
Packit 577717
  * 92689f62 src/configure src/configure.in src/linux-common.c...: Add a
Packit 577717
  --with-pthread-mutexes option to enable using pthread mutexes rather than
Packit 577717
  PAPI custom locks  This is useful when running on new architectures that
Packit 577717
  don't have a custom PAPI lock coded yet, and also for running valgrind
Packit 577717
  deadlock detection utilities that only work with pthread based locking.
Packit 577717
Packit 577717
  * ca51ae67 src/papi_events.csv: Fix broken Pentium 4 Prescott support  We
Packit 577717
  were missing the netbusrt_p declaration in papi_events.csv
Packit 577717
Packit 577717
  * f6460736 src/linux-common.c: Fix build on POWER, broken by the
Packit 577717
  virtualization change.
Packit 577717
Packit 577717
  * 91d32585 src/perfctr-x86.c src/perfmon.c: Fix some warnings that have
Packit 577717
  appeared due to recent changes.
Packit 577717
Packit 577717
  * ae0cf00f src/linux-common.c src/papi_libpfm3_events.c
Packit 577717
  src/papi_libpfm4_events.c...: Clean up the Linux lock files  The locking
Packit 577717
  primitives for some reason were spread among the libpfm code and the
Packit 577717
  substrate codes.  This change moves them into linux-common and has them part
Packit 577717
  of the OS code.  This way they will get properly initialized even if the perf
Packit 577717
  counter or libpfm code isn't being used.
Packit 577717
Packit 577717
2012-02-23  
Packit 577717
Packit 577717
  * 88847e52 src/papi.c src/papi_memory.h: Remove _papi_cleanup_all_memory
Packit 577717
  define from papi_memory.h  The code in papi_memory.h said:  /* define an
Packit 577717
  alternate entry point for compatibility with papi.c for 3.1.x*/ /* this line
Packit 577717
  should be deleted for the papi 4.0 head */  Since we are post papi-4.0 I
Packit 577717
  thought it was time to act on this. Of course papi.c was still using the old
Packit 577717
  name in one place.
Packit 577717
Packit 577717
  * 1d29dfc6 src/papi_libpfm_presets.c src/perfctr.c src/perfmon.c: Fix some
Packit 577717
  missing includes found after the header cleanup.
Packit 577717
Packit 577717
  * b425a9f4 src/Makefile.inc src/extras.c src/extras.h...: Header file cleanup
Packit 577717
   The papi_protos.h file contained a lot of no-longer in use exports.  I split
Packit 577717
  up the ones that are still relevant to header files corresponding to the C
Packit 577717
  file that the functions are defined in.
Packit 577717
Packit 577717
  * 07199b41 src/extras.c src/papi_vector.c src/papi_vector.h: Clean up the
Packit 577717
  papi_vector code.  Remove things no longer being used, mark static functions
Packit 577717
  as static.
Packit 577717
Packit 577717
  * d7496311 src/linux-common.c src/x86_cpuid_info.c src/x86_cpuid_info.h: Fix
Packit 577717
  a missing "return 1" which meant that the virtualization flag wasn't being
Packit 577717
  set right.  With this fix, on saturn-vm1 we now get:  Running in a VM        
Packit 577717
   : yes VM Vendor:               : VMwareVMware  in the papi_native_avail
Packit 577717
  header
Packit 577717
Packit 577717
  * 8da36222 src/freebsd.c src/linux-bgp.c src/papi.c...: Remove the
Packit 577717
  ->add_prog_event function vector  As far as I can tell this is a PAPI 2.0
Packit 577717
  remnant that was never properly removed.  This also removes
Packit 577717
  PAPI_add_pevent(), PAPI_save(), and PAPI_restore(), none of which were
Packit 577717
  exported in papi.h so in theory no one could have been using them.  Also
Packit 577717
  removes _papi_hwi_add_pevent()
Packit 577717
Packit 577717
  * a5f3c8b5 src/aix.c src/freebsd.c src/linux-timer.c...: Reduce the usage of
Packit 577717
  MY_VECTOR whenever possible.  This is an attempt to make the cpu-counter
Packit 577717
  components to be as similar as possible to external components.
Packit 577717
Packit 577717
  * abbcbf29 src/any-null.h: Missed removing any-null.h during the any-null
Packit 577717
  removal.
Packit 577717
Packit 577717
  * 665d4c5c src/linux-common.c: Somehow missed an include during the
Packit 577717
  virtualization addition.
Packit 577717
Packit 577717
  * 0c06147b src/perfctr-2.6.x/usr.lib/event_set_centaur.os
Packit 577717
  src/perfctr-2.6.x/usr.lib/event_set_p5.os
Packit 577717
  src/perfctr-2.6.x/usr.lib/event_set_p6.os: Removes the last of the binary
Packit 577717
  files from perfctr2.6.x  Some binary files were left out in the cold after a
Packit 577717
  mishap trying to configure perfctr for the build test.
Packit 577717
Packit 577717
  * 3acb7d57 src/Makefile.inc src/configure src/configure.in...: Add support
Packit 577717
  for reporting if we are running in a virtualized environment to the
Packit 577717
  PAPI_hw_info_t structure.  This currently only works on x86.  it works by
Packit 577717
  looking at bit 31 of ecx after a cpuid (the "in a VM" bit) and then using
Packit 577717
  leaf 0x40000000 to get the name of the VM software (this works for VMware and
Packit 577717
  Xen at least)  x86_cache_info.c was renamed to x86_cpuid_info.c to better
Packit 577717
  reflect what goes on in that file (it does various things based on the cpuid
Packit 577717
  instruction).  the testlib header was updated to report virtualization status
Packit 577717
  in the papi header (printed for things like papi_native_avail).
Packit 577717
Packit 577717
2012-02-22  
Packit 577717
Packit 577717
  * 9c7659b5 src/Makefile.inc src/freq.c: Remove the freq.c file as nothing
Packit 577717
  seemed to be using it.
Packit 577717
Packit 577717
  * d205e2d3 src/perfctr-x86.c: Made a stupid typo when converting perfctr to
Packit 577717
  call libpfm functions with the component id.
Packit 577717
Packit 577717
  * 25b41779 src/papi_libpfm3_events.c src/papi_libpfm4_events.c
Packit 577717
  src/papi_libpfm_events.h...: When updating the preset code to take a
Packit 577717
  component index I missed a few callers.
Packit 577717
Packit 577717
  * a713ffb1 src/papi_internal.c src/papi_vector.c: Remove any-null component
Packit 577717
Packit 577717
  * 27e1c2c5 src/any-null-memory.c src/any-null.c src/any-proc-null.c...:
Packit 577717
  Remove the any-null component.
Packit 577717
Packit 577717
  * 25779ae0 PAPI_FAQ.html: Saving another version of the FAQ after adding a
Packit 577717
  git section, and removing several obsolete sections. These questions still
Packit 577717
  need detailed review for relevance and timeliness.
Packit 577717
Packit 577717
  * 449a1a61 src/ctests/overflow_allcounters.c: Fix overflow_allcounters which
Packit 577717
  was making assumptions about component 0 existing.
Packit 577717
Packit 577717
  * f21be742 src/ctests/hwinfo.c: Make the hwinfo test not bail out if no
Packit 577717
  counters are available.
Packit 577717
Packit 577717
  * ebc675e6 src/ctests/memory.c: Make sure the memory ctest runs even if no
Packit 577717
  components are available.
Packit 577717
Packit 577717
  * 9b3de551 src/linux-common.c src/perf_events.c src/perfmon-ia64.c...: Make
Packit 577717
  sure the system info init happens at os init time.  Otherwise the system info
Packit 577717
  never gets set if a perfcounter component isn't available.
Packit 577717
Packit 577717
  * 59e47e12 src/papi_internal.c: Make sure that _papi_hwi_assign_eventset()
Packit 577717
  does the right thing if no components are available.
Packit 577717
Packit 577717
  * dd51e5d6 src/ctests/api.c: The api test would fail in the no cpu component
Packit 577717
  case.  Fix it to properly check for errors before attempting to run
Packit 577717
  high-level PAPI tests.
Packit 577717
Packit 577717
  * 069e9d2f src/aix.c src/papi.c src/papi_internal.h...: Fix code that was
Packit 577717
  depending on _papi_hwd[0] existing.  Most of this was in the presets code. 
Packit 577717
  The preset code had many assumptions so that you can only code presets with
Packit 577717
  component[0]. This fixes some of them by passing the component index around.
Packit 577717
Packit 577717
  * 7259eaec src/papi_vector.c: Fix up papi_vector to get rid of some warnings
Packit 577717
  introduced on AIX.
Packit 577717
Packit 577717
  * 16fe0a61 src/aix.c src/solaris-ultra.c: Fix two last substrates where I
Packit 577717
  missed some fields in the OS structure conversion.
Packit 577717
Packit 577717
  * 625871ec src/perfmon.c: Missed a cmp_info field in perfmon.c
Packit 577717
Packit 577717
  * 680919d9 PAPI_FAQ.html: Saving the latest version of the FAQ before
Packit 577717
  undertaking major revisions.
Packit 577717
Packit 577717
  * 3d4fa2e5 src/linux-timer.c src/perfctr-x86.h: Fix the perfctr code to
Packit 577717
  compile if configured with --with-virtualtimer=perfctr
Packit 577717
Packit 577717
  * bbd7871f src/perfctr.c: Missed two OS vector calls in the perfctr code
Packit 577717
  during the conversion.
Packit 577717
Packit 577717
  * bc6d1713 src/Makefile.inc: Removed one of the two instances of MISCOBJS
Packit 577717
  listed in Makefile.inc.
Packit 577717
Packit 577717
2012-02-21  
Packit 577717
Packit 577717
  * 40bc4c57 src/papi_vector.c src/papi_vector.h: Remove now-unused OS vectors
Packit 577717
  from the main papi vector table.
Packit 577717
Packit 577717
  * 3c6a0f7b src/aix.c src/freebsd.c src/linux-bgp.c...: Convert PAPI to use
Packit 577717
  the _papi_os_vector for the operating-system specific function vectors.
Packit 577717
Packit 577717
  * 568abad5 src/papi_vector.h: Add new _papi_os_vector structure to hold
Packit 577717
  operating-system specific function vectors.
Packit 577717
Packit 577717
  * a39d2373 src/ctests/subinfo.c: Missed removing a field from the subinfo
Packit 577717
  ctest.
Packit 577717
Packit 577717
  * 1d930868 src/papi.h: Remove fields now in PAPI_os_info_t from the
Packit 577717
  component_info_t struct.
Packit 577717
Packit 577717
  * d397d74a src/components/example/example.c: Remove fields now in
Packit 577717
  PAPI_os_info_t from the example component.
Packit 577717
Packit 577717
  * 8cd5c8e0 src/aix.c src/freebsd.c src/linux-bgp.c...: Modify all the
Packit 577717
  substrates to use _papi_os_info. instead of _papi_hwd[0]->cmp_info for the
Packit 577717
  values moved to the OS struct
Packit 577717
Packit 577717
  * 58855d3a src/papi_internal.h: Add padding for future expansion to
Packit 577717
  PAPI_os_info_t  Add _papi_hwi_init_os(void); definition
Packit 577717
Packit 577717
  * ea1930e1 src/papi_internal.h: Add new PAPI_os_info_t structure to
Packit 577717
  papi_internal.h
Packit 577717
Packit 577717
  * 0eac1b29 src/utils/multiplex_cost.c: Modify multiplex_cost to properly use
Packit 577717
  the API_get_opt() interface to get itimer data, rather than directly
Packit 577717
  accessing the fields from the cmp_info structure.  This would have broken
Packit 577717
  after the OS split.
Packit 577717
Packit 577717
  * 87c2aa2f src/ctests/subinfo.c: subinfo was printing itimer data from the
Packit 577717
  cmpinfo structure.  These values will not be in cmpinfo once the OS split
Packit 577717
  happens.
Packit 577717
Packit 577717
  * f2c62d50 src/components/vmware/vmware.h: Clean up the VMware Header a bit
Packit 577717
Packit 577717
2012-02-17  
Packit 577717
Packit 577717
  * 6f0c1230 src/aix.c src/components/coretemp/linux-coretemp.c
Packit 577717
  src/components/coretemp_freebsd/coretemp_freebsd.c...: The git conversion
Packit 577717
  reset all of the CVS $Id$ lines to just $Id$  Since we depend on the $Id$
Packit 577717
  lines for the component names, I had to go back and fix all of them to be the
Packit 577717
  component names again.
Packit 577717
Packit 577717
  * 2d208d0e src/perfctr-2.6.x/usr.lib/event_set_centaur.o
Packit 577717
  src/perfctr-2.6.x/usr.lib/event_set_p5.o
Packit 577717
  src/perfctr-2.6.x/usr.lib/event_set_p6.o: Remove a few binary files in
Packit 577717
  perfctr-2.6.x
Packit 577717
Packit 577717
  * f78bf1af src/libpfm-3.y/Makefile src/libpfm-3.y/README
Packit 577717
  src/libpfm-3.y/docs/Makefile...: More cleanups from the migration, latest
Packit 577717
  version of libpfm-3.y perfctr-2.[6,7]  Version numbers got really confused in
Packit 577717
  cvs and the git cvsimport didn't know that eg 1.1.1.28 > 1.1 ( see
Packit 577717
  perfctr-2.6.x/CHANGES revision 1.1.1.28.6.1 :~)
Packit 577717
Packit 577717
  * e8aa2e61 INSTALL.txt: Explicitly state that 3.7 was the last version of
Packit 577717
  PAPI with good windows support.
Packit 577717
Packit 577717
  * 546901fa src/components/cuda/linux-cuda.c: Modified CUDA component so that
Packit 577717
  a PAPI version - that was configured with CUDA - will successfully build on a
Packit 577717
  machine that does not have GPUs.
Packit 577717
Packit 577717
2012-02-16  
Packit 577717
Packit 577717
  * 49d9f71c src/.gitignore: Add a .gitignore file with the files that PAPI
Packit 577717
  autogenerates.  This way they won't clutter up "git status" messages
Packit 577717