testers wanted for PAPI / FreeBSD

Harald Servat redcrash at gmail.com
Wed Jun 6 10:54:19 UTC 2007


2007/6/6, Nikolay Pavlov <quetzal at zone3000.net>:
>
> On Monday,  4 June 2007 at 21:33:54 +0200, Harald Servat wrote:
> >    Hello,
> >
> >    What is the result of dmesg | grep hwpmc?
>
> hwpmc: TSC/1/0x20<REA> P6/2/0x1ff<INT,USR,SYS,EDG,THR,REA,WRI,INV,QUA>
>
>
> >
> >    Regards,
> >
> >    2007/6/4, Nikolay Pavlov <[1]quetzal at zone3000.net>:
> >
> >      On Sunday, 20 May 2007 at 12:29:23 +0200, Harald Servat wrote:
> >      > Hello,
> >      >
> >      >  I'm porting PAPI to FreeBSD.  I was wondering if you could give
> a try
> >      to
> >      > the package I'm porting. It would be great to have more feedback
> than
> >      just
> >      > that my laptop is able to provide me :)
> >      >
> >      >  First of all, you can download the code at
> >      >
> >      >  [2]http://code.google.com/p/papi-for-freebsd
> >      >
> >      >  Next, see man hwpmc(4) and compile a kernel with
> >      >  options HWPMC_HOOKS
> >      >  device hwpmc
> >      >
> >      >  (you'll require device apic if you're running on i386 machines).
> >      >
> >      >  When you boot your dmesg should print something like
> >      >  hwpmc: TSC/1/0x20<REA>
> P6/2/0x1fe<USR,SYS,EDG,THR,REA,WRI,INV,QUA>
> >      >
> >      >  Once the machine is up and running, just untar the file you've
> >      downloaded,
> >      > run ./configure and just run make (not make install).
> >      >
> >      >  Could you send me the output of the following commands?
> >      >
> >      >  # dmesg | grep hwpmc
> >      >  # utils/papi_avail
> >      >  # utils/papi_decode
> >      >  # utils/papi_native_avail
> >      >  # ctests/low-level
> >      >  # ctests/high-level
> >      >
> >      > Thank you very much,
> >
> >      Hi Harald. I have an error while running configure script:
> >
> >      root at orion:~/papi/papi-3.5.0/src#
>
> >      ./configure                                                                                                        <796>
> >      as_func_failure succeeded.
> >      as_func_failure succeeded.
> >      No shell found that supports shell functions.
> >      Please tell [3]autoconf at gnu.org about your system,
> >      including any error possibly output before this
> >      message
> >      checking for architecture... i386
> >      checking for OS... freebsd
> >      checking for OS version... 7.0-CURRENT
> >      checking for CPU type...
> >      checking for 32 or 64 bit mode... 32
> >      checking for debugging build... no
> >      checking for gawk... no
> >      checking for mawk... no
> >      checking for nawk... nawk
> >      checking for gcc... gcc
> >      checking for C compiler default output file name... a.out
> >      checking whether the C compiler works... yes
> >      checking whether we are cross compiling... no
> >      checking for suffix of executables...
> >      checking for suffix of object files... o
> >      checking whether we are using the GNU C compiler... yes
> >      checking whether gcc accepts -g... yes
> >      checking for gcc option to accept ISO C89... none needed
> >      checking for g77... no
> >      checking for xlf... no
> >      checking for f77... f77
> >      checking whether we are using the GNU Fortran 77 compiler... yes
> >      checking whether f77 accepts -g... yes
> >      checking whether we are using the GNU C compiler... (cached) yes
> >      checking whether gcc accepts -g... (cached) yes
> >      checking for gcc option to accept ISO C89... (cached) none needed
> >      checking whether we are using the GNU Fortran 77 compiler...
> (cached)
> >      yes
> >      checking whether f77 accepts -g... (cached) yes
> >      checking how to run the C preprocessor... gcc -E
> >      checking whether ln -s works... yes
> >      checking whether make sets $(MAKE)... yes
> >      checking for ranlib... ranlib
> >      checking for grep that handles long lines and -e... /usr/bin/grep
> >      checking for egrep... /usr/bin/grep -E
> >      checking for ANSI C header files... yes
> >      checking for ffsll... no
> >      checking for working MMTIMER... no
> >      checking for working CLOCK_REALTIME_HR POSIX 1b timer... no
> >      checking for working CLOCK_REALTIME POSIX 1b timer... no
> >      checking for real time clock or cycle counter... cycle
> >      checking for working __thread... yes
> >      checking for high performance thread local storage... __thread
> >      checking for working CLOCK_THREAD_CPUTIME_ID POSIX 1b timer... no
> >      checking for working per-thread times() timer... no
> >      checking for thread virtual clock or cycle counter... default
> >      checking for /sys/class/perfctr... no
> >      checking for /dev/perfctr... no
> >      checking for /sys/kernel/perfmon/version... no
> >      checking for /proc/perfmon... no
> >      checking for perfctr version... none
> >      checking for perfmon version... none
> >      checking for Makefile to use... configure: error: Error! HWPMC
> module
> >      seems not to be on the kernel. Have you compiled the kernel with
> HWPMC?
> >      (see hwpmc(4))
> >
> >      However module is there:
> >
> >      quetzal at viking:~/bugs> cat
> >      papi.bug
> >      <1959>
> >      root at orion:~/papi# kldstat -v | grep
> >      hwpmc
> >      <848>
> >                      135 hwpmc
> >
> >      root at orion:~/bugs# uname
>
> >      -a                                                                                                                          <853>
> >      FreeBSD [4]orion.zone3000.net 7.0-CURRENT FreeBSD 7.0-CURRENT #0:
> Mon
> >      Jun
> >      4 19:33:59 EEST 2007
> >      root at orion.zone3000.net:/usr/obj/usr/src/sys/GENERIC-PMC  i386
> >
> >      And i have all required options in kernel config:
> >
> >      quetzal at orion:~/bugs> grep -i PMC
> >      /sys/i386/conf/GENERIC-PMC
> >      <890>
> >      device    hwpmc     # Driver (also a loadable module)
> >      options   HWPMC_HOOKS   # Other necessary kernel hooks
> >
> >      --
>
> >      ======================================================================
> >      - Best regards, Nikolay Pavlov.
> <<<-----------------------------------
>
> >      ======================================================================
> >
> >    --
> >    _________________________________________________________________
> >    Empty your memory,
> >    with a free()...
> >    like a pointer!
> >
> >    If you cast a pointer to an integer,
> >    it becomes an integer,
> >    if you cast a pointer to a struct,
> >    it becomes a struct.
> >
> >    The pointer can crash...,
> >    and can overflow.
> >
> >    Be a pointer my friend...
> >
> > References
> >
> >    Visible links
> >    1. mailto:quetzal at zone3000.net
> >    2. http://code.google.com/p/papi-for-freebsd
> >    3. mailto:autoconf at gnu.org
> >    4. http://orion.zone3000.net/
>
> --
> ======================================================================
> - Best regards, Nikolay Pavlov. <<<-----------------------------------
> ======================================================================
>
>

Hello Nikolay,

  could you try to remove lines 1018 - 1022 from  configure.in, run autoconf
and rerun the configure?

Regards,
-- 
_________________________________________________________________
Empty your memory,
with a free()...
like a pointer!

If you cast a pointer to an integer,
it becomes an integer,
if you cast a pointer to a struct,
it becomes a struct.

The pointer can crash...,
and can overflow.

Be a pointer my friend...


More information about the freebsd-performance mailing list