|
Packit Service |
a1973e |
2011-01-17
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/configure: Ran autoconf to generate updated configure file.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
2011-01-16
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/components/README: Adding a component for the FreeBSD OS that
|
|
Packit Service |
a1973e |
reports the value of the thermal sensors available in the Intel
|
|
Packit Service |
a1973e |
Core processors. There are as many counters as cores, and the
|
|
Packit Service |
a1973e |
value reported by each counter is in Kelvin degrees.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/freebsd.c: Implemented missing
|
|
Packit Service |
a1973e |
_papi_freebsd_ntv_name_to_code.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/: Makefile.in, Makefile.inc, configure.in, ctests/Makefile:
|
|
Packit Service |
a1973e |
Fix dependency on -ldl
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
Now configure checks if dl* symbols are in the base system
|
|
Packit Service |
a1973e |
libraries (i.e., no -ldl needed). If so, avoid adding -ldl to
|
|
Packit Service |
a1973e |
shlib example.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
If dl* symbols are not find in the base system libraries, then
|
|
Packit Service |
a1973e |
check for -ldl, and if it exists, pass it to ctests/Makefile
|
|
Packit Service |
a1973e |
through Makefile. If -ldl is not found, fail at configure time.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/ctests/multiattach.c: Fix to compile in FreeBSD.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/: freebsd-memory.c, freebsd.c: Code cleanup.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
2011-01-14
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/: perf_events.c, perfmon.c: [PATCH 18/18] papi: make
|
|
Packit Service |
a1973e |
_perfmon2_pfm_pmu_type variable static
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
In perf_events.c and perfmon.c the variable
|
|
Packit Service |
a1973e |
_perfmon2_pfm_pmu_type is used locally only, making it static.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
Signed-off-by: Robert Richter <robert.richter at amd.com>
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/: linux-bgp.c, linux-ia64.c, perf_events.c, perfctr.c,
|
|
Packit Service |
a1973e |
perfmon.c: [PATCH 17/18] papi: remove inline_static macro in
|
|
Packit Service |
a1973e |
Linux only code
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
We better replace the macro with 'static inline'. Not sure if
|
|
Packit Service |
a1973e |
this works for all compilers, so doing it for Linux only files.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
Signed-off-by: Robert Richter <robert.richter at amd.com>
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/x86_cache_info.c: [PATCH 16/18] papi: remove static inline
|
|
Packit Service |
a1973e |
function declaration
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
By moving the static inline function cpuid() to the begin of the
|
|
Packit Service |
a1973e |
file we may remove its declaration.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
Signed-off-by: Robert Richter <robert.richter at amd.com>
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/linux.h: [PATCH 15/18] papi: remove unused linux.h header
|
|
Packit Service |
a1973e |
file
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
This file is included nowhere, removing it.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
Signed-off-by: Robert Richter <robert.richter at amd.com>
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/linux-ia64.c: [PATCH 14/18] papi: fix array out of bounds
|
|
Packit Service |
a1973e |
access
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
Fixing the following warning:
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
linux-ia64.c: In function ?_ia64_init_substrate?:
|
|
Packit Service |
a1973e |
linux-ia64.c:1123:22: warning: array subscript is above array
|
|
Packit Service |
a1973e |
bounds
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
Signed-off-by: Robert Richter <robert.richter at amd.com>
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/: configure, configure.in: [PATCH 13/18] papi: remove
|
|
Packit Service |
a1973e |
unnecassary checks in configure.in
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
The check is obsolete and covered by default.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
Signed-off-by: Robert Richter <robert.richter at amd.com>
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/: papi_pfm_events.c, perf_events.c, perfmon.c, perfmon.h:
|
|
Packit Service |
a1973e |
[PATCH 12/18] papi: include perfmon header files only where
|
|
Packit Service |
a1973e |
necessary
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
This patch includes perfmon header files only where necessary.
|
|
Packit Service |
a1973e |
Declarations in perfmon/perfmon.h are never used, removing its
|
|
Packit Service |
a1973e |
inclusion. Itanium header files are needed only in perfmon.c and
|
|
Packit Service |
a1973e |
perf_events.c.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
Signed-off-by: Robert Richter <robert.richter at amd.com>
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/: papi_pfm_events.c, perfctr-x86.c: [PATCH 11/18] papi: make
|
|
Packit Service |
a1973e |
some functions in papi_pfm_events.c static
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
Functions _pfm_decode_native_event() and _pfm_convert_umask() are
|
|
Packit Service |
a1973e |
internally used only. Remove export declaration and make it
|
|
Packit Service |
a1973e |
static.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
Signed-off-by: Robert Richter <robert.richter at amd.com>
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/: Rules.pfm, linux-ia64-pfm.h, linux-ia64.c, pfmwrap.h:
|
|
Packit Service |
a1973e |
[PATCH 10/18] papi: rename pfmwrap.h -> linux-ia64-pfm.h
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
pfmwrap.h actually only contains IA64 code included by
|
|
Packit Service |
a1973e |
linux-ia64.c. Rename it to linux-ia64-pfm.h.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
Signed-off-by: Robert Richter <robert.richter at amd.com>
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/: linux-ia64.c, pfmwrap.h: [PATCH 09/18] papi, linux-ia64:
|
|
Packit Service |
a1973e |
make inline functions static
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
Inline functions should be static. Fixing it.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
Signed-off-by: Robert Richter <robert.richter at amd.com>
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/: linux-ia64.c, papi_pfm_events.c: [PATCH 08/18] papi: fix
|
|
Packit Service |
a1973e |
_papi_pfm_ntv_name_to_code() function interface
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
The function is supposed to return a PAPI error code which is an
|
|
Packit Service |
a1973e |
integer. Make the function's return code an integer too.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
Signed-off-by: Robert Richter <robert.richter at amd.com>
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/perfctr-ppc64.c: [PATCH 07/18] papi: fix spelling modifer ->
|
|
Packit Service |
a1973e |
modifier
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
Fix spelling: modifer -> modifier
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
Signed-off-by: Robert Richter <robert.richter at amd.com>
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/: linux-ia64.c, papi_pfm_events.c, papi_pfm_events.h,
|
|
Packit Service |
a1973e |
perf_events.c, perfctr-x86.c, perfmon.c: [PATCH 06/18] papi:
|
|
Packit Service |
a1973e |
define function interface in papi_pfm_events.h
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
The header file should define the interface that
|
|
Packit Service |
a1973e |
papi_pfm_events.c provides. Declarations used internally only in
|
|
Packit Service |
a1973e |
papi_pfm_events.c are moved there. Now papi_pfm_events.h only
|
|
Packit Service |
a1973e |
contains the prototype functions. Remapping of definitions is
|
|
Packit Service |
a1973e |
removed too. This cleanup removes duplicate code and better
|
|
Packit Service |
a1973e |
defines the interface.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
Signed-off-by: Robert Richter <robert.richter at amd.com>
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/: Rules.perfctr, Rules.perfctr-pfm, linux.c, multiplex.c,
|
|
Packit Service |
a1973e |
papi_vector.c, perfctr-x86.c, perfctr.c, ctests/test_utils.c:
|
|
Packit Service |
a1973e |
[PATCH 05/18] papi: rename linux.c -> perfctr.c
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
The name of linux.c is misleading, it only implements perfctr
|
|
Packit Service |
a1973e |
functionality. Thus renaming it to perfctr.c.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
Signed-off-by: Robert Richter <robert.richter at amd.com>
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/: papi_pfm_events.c, perfctr-x86.c: [PATCH 04/18] papi: make
|
|
Packit Service |
a1973e |
_papi_pfm_init() static by moving it to perfctr-x86.c
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
_papi_pfm_init() is only used in perfctr-x86.c but implemented in
|
|
Packit Service |
a1973e |
papi_pfm_events.c. Move it to perfctr-x86.c and make it static.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
Signed-off-by: Robert Richter <robert.richter at amd.com>
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/perfmon.c: [PATCH 03/18] papi: make some functions static in
|
|
Packit Service |
a1973e |
perfmon.c
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
The functions are only used in perfmon.c, making it static.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
Signed-off-by: Robert Richter <robert.richter at amd.com>
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/: Rules.pfm, Rules.pfm_pe: [PATCH 02/18] papi: do not compile
|
|
Packit Service |
a1973e |
libpfm examples to support cross compilation
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
Signed-off-by: Robert Richter <robert.richter at amd.com>
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/Rules.pfm: To cross compile papi we need to pass the
|
|
Packit Service |
a1973e |
architecture to libpfm. Otherwise it will be confused and tries
|
|
Packit Service |
a1973e |
to build the host's make targets with the cross compiler ending
|
|
Packit Service |
a1973e |
up in the following error:
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
pfmlib_amd64.c: In function ?cpuid?:
|
|
Packit Service |
a1973e |
pfmlib_amd64.c:166:3: error: impossible register constraint in
|
|
Packit Service |
a1973e |
?asm?
|
|
Packit Service |
a1973e |
pfmlib_amd64.c:172:1: error: impossible register constraint in
|
|
Packit Service |
a1973e |
?asm?
|
|
Packit Service |
a1973e |
make[2]: *** [pfmlib_amd64.o] Error 1
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
Signed-off-by: Robert Richter <robert.richter at amd.com>
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/ctests/Makefile: Temporarily back out the FreeBSD makefile
|
|
Packit Service |
a1973e |
change that breaks the build so that I can properly test some
|
|
Packit Service |
a1973e |
other changes.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/papi_events.csv: Change the Core2 L1_TCM preset to be
|
|
Packit Service |
a1973e |
LLC_REFERENCES
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
The current event (L2_RQSTS:SELF:MESI) returns an event
|
|
Packit Service |
a1973e |
equivelent to LLC_REFERENCES on libpfm3, but in libpfm4
|
|
Packit Service |
a1973e |
L2_RQSTS:SELF:MESI maps instead to L2_RQSTS:SELF:MESI:ALL which
|
|
Packit Service |
a1973e |
counts prefetches too.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
By moving to LLC_REFERENCES both libpfm3 and libpfm4 count the
|
|
Packit Service |
a1973e |
proper value. This also makes the "tenth" benchmark pass when
|
|
Packit Service |
a1973e |
using PAPI/libpfm4.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/configure: Update to match current configure.in
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/ctests/Makefile: Fix the if / fi syntax of the last change.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
2011-01-13
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/: Makefile.inc, configure.in, freebsd-memory.c, freebsd.c,
|
|
Packit Service |
a1973e |
ctests/Makefile, ctests/zero_attach.c: Changes from Harald Servat
|
|
Packit Service |
a1973e |
for freebsd support. Note that configure has not been regenerated
|
|
Packit Service |
a1973e |
from this version of configure.in.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* papi.spec, doc/Doxyfile, doc/Doxyfile-everything,
|
|
Packit Service |
a1973e |
src/Makefile.in, src/configure.in, src/papi.h: Change version
|
|
Packit Service |
a1973e |
numbers to 4.1.2 in preparation for a release.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
2011-01-12
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/ctests/code2name.c: The code2name test was assuming that the
|
|
Packit Service |
a1973e |
native events start right at PAPI_NATIVE_MASK. We specifically
|
|
Packit Service |
a1973e |
document elsewhere this might not be the case, and indeed for the
|
|
Packit Service |
a1973e |
libpfm4 code this fails.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
This fix changes the code to properly enunmerate the native
|
|
Packit Service |
a1973e |
events for the test.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
2011-01-06
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/: papi.c, papi_internal.c: Fix a long-standing bug where we
|
|
Packit Service |
a1973e |
were walking off the end of the EventInfoArray in
|
|
Packit Service |
a1973e |
remap_event_position().
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
This was noticed by Richard Strong when instrumenting some of the
|
|
Packit Service |
a1973e |
PARSEC benchmarks.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
In papi_internal.c in the remap_event_position() function we have
|
|
Packit Service |
a1973e |
the loop
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
for ( i = 0; i <= total_events; i++ ) {
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
It seems weird that we are doing a <= compare, and in fact this
|
|
Packit Service |
a1973e |
is why we
|
|
Packit Service |
a1973e |
walk off the end of the array sometimes. But why only somtimes?
|
|
Packit Service |
a1973e |
If I
|
|
Packit Service |
a1973e |
change that <= to a < then many of the regression tests fail.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
It turns out that the two calls to remap_event_position() in
|
|
Packit Service |
a1973e |
papi_internal.c are called with ESI->NumberOfEvents being one
|
|
Packit Service |
a1973e |
less
|
|
Packit Service |
a1973e |
than it should be, as it is incremented after the
|
|
Packit Service |
a1973e |
remap_event_position()
|
|
Packit Service |
a1973e |
call (though the new events are added before the call). This is
|
|
Packit Service |
a1973e |
why
|
|
Packit Service |
a1973e |
<= is used.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
However the call in PAPI_start() happens with
|
|
Packit Service |
a1973e |
ESI->NumberOfEvents
|
|
Packit Service |
a1973e |
with the right value. In this case < should be used.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
The fix I've come up with has a NumberOfEvents value passed in
|
|
Packit Service |
a1973e |
as a
|
|
Packit Service |
a1973e |
parameter to remap_event_position(). This way the value+1 can
|
|
Packit Service |
a1973e |
be passed in the former cases.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
2010-12-20
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/aix.c: Problem on POWER6 with AIX: pm_initialize() cannot be
|
|
Packit Service |
a1973e |
called multiple times with PM_CURRENT. Instead, use the actual
|
|
Packit Service |
a1973e |
proc type - here PM_POWER6 - and multiple invocations are no
|
|
Packit Service |
a1973e |
longer a problem. Ctests/multiplex1.c passes now.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
2010-12-15
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/run_tests.sh: If we don't run any tests, get buildbot's
|
|
Packit Service |
a1973e |
attention.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
2010-12-14
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/aix.c: number_of_nodes var was set to zero in
|
|
Packit Service |
a1973e |
_aix_get_system_info. This caused the papi utilities to report
|
|
Packit Service |
a1973e |
that the number of total CPUs is zero. This also caused
|
|
Packit Service |
a1973e |
ctests/hwinfo to fail on POWER6 with AIX.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
2010-12-13
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/papi_internal.h: Slight re-ordering of the no_vararg_macro
|
|
Packit Service |
a1973e |
debug statements. (I actually tested the changes with
|
|
Packit Service |
a1973e |
--with-debug and without on aix)
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
2010-12-10
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/run_tests.sh: Change the syntax on our find command to be
|
|
Packit Service |
a1973e |
more posix compliant.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
GNU is Not UNIX, cute acronym or massive compatibility
|
|
Packit Service |
a1973e |
conspiracy. I fall back to posix, you decide!
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/: configure, configure.in: Update configure file to be aware
|
|
Packit Service |
a1973e |
of the existence of AIX-Power7.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
PAPI still won't build, but it gets further than before.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
2010-12-09
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/run_tests.sh: Make our grep invocation posix compliant.
|
|
Packit Service |
a1973e |
(--invert-match == -v & --regex == -e )
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/ctests/overflow_allcounters.c: Separate 'indent' check-in so
|
|
Packit Service |
a1973e |
that the previous modifications are comprehensible :)
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/ctests/overflow_allcounters.c: The overflow_allcounters test
|
|
Packit Service |
a1973e |
failed on Power6 with AIX (pmapi) but passes on Power6 with linux
|
|
Packit Service |
a1973e |
(perf_events | perfctr). Therefore detect if we're running on
|
|
Packit Service |
a1973e |
AIX, print a warning, but still pass the test.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/run_tests.sh: Move away from echo -n to the shell builtin
|
|
Packit Service |
a1973e |
printf (echo -n is not portable)
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
non-argumented instances of echo are fine.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/run_tests_exclude.txt: Skip the non-test ctests/burn
|
|
Packit Service |
a1973e |
executable.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/Matlab/: PAPI_Matlab.c, PAPI_Matlab.readme: Change
|
|
Packit Service |
a1973e |
documentation for matlab integration to reflect the need to link
|
|
Packit Service |
a1973e |
to the libpapi.so library and not the static one.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
Also listed me and the ptools-perfapi list as points of contact
|
|
Packit Service |
a1973e |
for future questions *gulp*
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
2010-12-08
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/: configure, configure.in, run_tests.sh: Clean up (purge)
|
|
Packit Service |
a1973e |
references to libpfm-2.x in configure and run_tests.sh
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/Matlab/PAPI_Matlab.c: MATLAB fixups: Calls to PAPI('stop')
|
|
Packit Service |
a1973e |
now stop counting even if we ignore the return values.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/Matlab/PAPI_Matlab.c: Fixup for papi matlab integration.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
Calls to PAPI('stop') don't cause errors now. If you call
|
|
Packit Service |
a1973e |
PAPI('stop') with out capturing its return value, it does
|
|
Packit Service |
a1973e |
nothing.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/Matlab/PAPI_Matlab.c: mex does not like c++ style comments
|
|
Packit Service |
a1973e |
(double-backslash)
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
2010-12-06
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/solaris-ultra.c: Resolved a couple type cast warnings. Also
|
|
Packit Service |
a1973e |
initialized a variable and enabled GET_OVERFLOW_ADDRESS code in
|
|
Packit Service |
a1973e |
two places. The overflow test suite still has a number of
|
|
Packit Service |
a1973e |
failures and is disabled in configure.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
2010-11-24
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/papi_internal.h: That last commit was lacking in
|
|
Packit Service |
a1973e |
creativity... By having the debug function names still a macro,
|
|
Packit Service |
a1973e |
we get all the goodness of __FILE__ etc bing in the right place
|
|
Packit Service |
a1973e |
and still not using variadic macros.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
#define SUBDBG do{ if (_papi_hwi_debug & DEBUG_SUBSTRATE )
|
|
Packit Service |
a1973e |
print_the_label; } while (0); _SUBDBG was the clever line that
|
|
Packit Service |
a1973e |
eluded me yesterday.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
2010-11-23
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/papi_internal.h: Turns out that when DEBUG and
|
|
Packit Service |
a1973e |
NO_VARARG_MACRO are true, we didn't correctly implement
|
|
Packit Service |
a1973e |
component-level debug functions. This change uses variable
|
|
Packit Service |
a1973e |
argument lists ( man stdarg) to correctly handle this case. (
|
|
Packit Service |
a1973e |
papi_internal.h defines these)
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
Note that debugging information is not completly useful; due to
|
|
Packit Service |
a1973e |
functions which use variable argument lists not being inlinable (
|
|
Packit Service |
a1973e |
the inline keyword is afterall only a sugestion), all messages
|
|
Packit Service |
a1973e |
appear to come from papi_internal.h:PAPIDEBUG:525:22619 and I am
|
|
Packit Service |
a1973e |
not clever enough to get around that in general right now.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
Thanks to Maynard Johnson for reporting.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/papi_events.csv: Enable the PAPI_HW_INT event on Nehalem, as
|
|
Packit Service |
a1973e |
tests show the HW_INT:RCV event is the proper one to use here.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
2010-11-22
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/papi_events.csv: Update the preset events for Nehalem, as
|
|
Packit Service |
a1973e |
contributed by Michel Brown.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
2010-11-19
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/: perf_events.h, perf_events.c: Address problem with overflow
|
|
Packit Service |
a1973e |
handler continuing to count events. Add overflow status field to
|
|
Packit Service |
a1973e |
determine if an event set has any events enabled for overflow.
|
|
Packit Service |
a1973e |
Use IOC_REFRESH instead of IOC_ENABLE when overflowing.
|
|
Packit Service |
a1973e |
Implement IOC_REFRESH at end of overflow handler. None of this
|
|
Packit Service |
a1973e |
worked. Also implemented an IOC_DISABLE at top of overflow
|
|
Packit Service |
a1973e |
handler. That worked, even though it's suboptimal.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
2010-11-17
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/utils/command_line.c: test_fail_exit() substituted for
|
|
Packit Service |
a1973e |
test_fail(). This became necessary because
|
|
Packit Service |
a1973e |
PAPI_event_name_to_code now returns a PAPI_EATTR error if the
|
|
Packit Service |
a1973e |
base name matches but attribute names don't. This utility was
|
|
Packit Service |
a1973e |
producing an error message and then running the test. Perfctr
|
|
Packit Service |
a1973e |
implementations will happily add a base name with no umasks and
|
|
Packit Service |
a1973e |
then generate 0 counts. This fix prevents that behavior.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/ctests/test_utils.c: Rewrite of test_fail_exit() to call
|
|
Packit Service |
a1973e |
test_fail(). It should be noted that test_fail_exit() behaves the
|
|
Packit Service |
a1973e |
way test_fail() used to behave, i.e. it exits after printing the
|
|
Packit Service |
a1973e |
fail message. However, test_fail no longer exits as that was
|
|
Packit Service |
a1973e |
causing problems with multi-threaded tests not freeing memory. In
|
|
Packit Service |
a1973e |
those cases where an exit is desired, calls to test_fail_exit()
|
|
Packit Service |
a1973e |
should be substituted for calls to test_fail().
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/: papi.h, papi_data.c, papi_pfm_events.c, perfmon.c: Added 3
|
|
Packit Service |
a1973e |
new error codes: PAPI_EATTR, PAPI_ECOUNT, and PAPI_ECOMBO. These
|
|
Packit Service |
a1973e |
map onto equivalent errors in libpfm and are provided to give
|
|
Packit Service |
a1973e |
more detail on failures in libpfm calls. A new error mapping
|
|
Packit Service |
a1973e |
function has been added to papi_pfm_events.c to map libpfm errors
|
|
Packit Service |
a1973e |
to PAPI errors, and this function is employed in the
|
|
Packit Service |
a1973e |
compute_kernel_args function in perfmon.c. It could also be
|
|
Packit Service |
a1973e |
deployed elsewhere, but so far is not.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
2010-11-09
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/x86_cache_info.c: The cpuid change yesterday broke
|
|
Packit Service |
a1973e |
compilation on a 32-bit Pentium 3. Fix the inline assembly to
|
|
Packit Service |
a1973e |
compile properly there too.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
2010-11-08
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/: configure, configure.in: Fix configure script to properly
|
|
Packit Service |
a1973e |
detect Pentium M machines.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/x86_cache_info.c: Add cpuid leaf4 cache detection support.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
This has been available on intel processors since Late model P4s
|
|
Packit Service |
a1973e |
and all Core2 and newer. It returns cache info in a different
|
|
Packit Service |
a1973e |
way than the older leaf2 method.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
Currently we only use leaf4 data if the leaf2 results tell us to
|
|
Packit Service |
a1973e |
(apparently Westmere does that). Otherwise we use the old
|
|
Packit Service |
a1973e |
method.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
It might be interesting to use more of the leaf4 info. It can
|
|
Packit Service |
a1973e |
tell us things such as how many processors share a socket, how
|
|
Packit Service |
a1973e |
many processors share a cache, and info on the inclusivity of a
|
|
Packit Service |
a1973e |
cache.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/: linux.c, perfctr-x86.c: Add perfctr Westmere support.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/perfctr-2.6.x/: patches/aliases, usr.lib/Makefile: Fix
|
|
Packit Service |
a1973e |
conflicts from perfctr merge.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
2010-11-06
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/perf_events.c: Replace KERNEL_CHECKS_SCHEDUABILITY_UPON_OPEN
|
|
Packit Service |
a1973e |
with the proper dynamic kernel version number checking. This
|
|
Packit Service |
a1973e |
should be the last place in our perf_events code that was using a
|
|
Packit Service |
a1973e |
hard-coded rather than dynamic check for a kernel-version related
|
|
Packit Service |
a1973e |
bugfix.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/perf_events.c: This patch allows PAPI to read multiple events
|
|
Packit Service |
a1973e |
at a time out of the kernel when the kernel is new enough (2.6.34
|
|
Packit Service |
a1973e |
or newer). The previous code required setting a #define by hand
|
|
Packit Service |
a1973e |
to get this behavior, this new code picks the proper way to do
|
|
Packit Service |
a1973e |
things based on the kernel version number.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
The patch was supplied by Gary Mohr
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
2010-11-04
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/: linux.c, perfctr-x86.c: Replace occurrances of
|
|
Packit Service |
a1973e |
PERFCTR_X86_INTEL_COREI7 with PERFCTR_X86_INTEL_NHLM as the
|
|
Packit Service |
a1973e |
former has been documented as being deprecated as of perfctr
|
|
Packit Service |
a1973e |
2.6.41.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
2010-11-03
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/cycle.h: Change "unicos" to "CLE" since "unicos" no longer
|
|
Packit Service |
a1973e |
exists.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
2010-10-26
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/examples/locks_pthreads.c: Add a call to PAPI_thread_init(),
|
|
Packit Service |
a1973e |
Thanks to Martin Schindewolf for pointing this out.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
2010-10-21
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/: papi.c, components/lmsensors/linux-lmsensors.h: Fixup url's
|
|
Packit Service |
a1973e |
that checkbot was finding in error.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
2010-10-05
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/ctests/: multiattach.c, zero_attach.c: The zero_attach and
|
|
Packit Service |
a1973e |
multiattach were forking before off children before testing
|
|
Packit Service |
a1973e |
that PAPI in fact is available. Then when PAPI_init() failed
|
|
Packit Service |
a1973e |
the children weren't being cleaned up properly. This was
|
|
Packit Service |
a1973e |
confusing build bot. This changeset moves the fork to after the
|
|
Packit Service |
a1973e |
check plus do a fail_exit() on failure.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/: configure, configure.in: Solaris build will fail if
|
|
Packit Service |
a1973e |
/usr/ccs/bin isn't in the path. Have it check there for "ar" on
|
|
Packit Service |
a1973e |
Solaris systems if it can't be found by normal methods.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/: configure, configure.in: Only run the EAR tests on itanium
|
|
Packit Service |
a1973e |
systems.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
* src/: configure, configure.in: Pentium4-perfctr was skipping most
|
|
Packit Service |
a1973e |
of the CTESTS. Make sure they are all run.
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
|