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-hackers
mailing list