You can subscribe to this list here.
2004 |
Jan
|
Feb
(2) |
Mar
(2) |
Apr
|
May
|
Jun
(1) |
Jul
(6) |
Aug
(3) |
Sep
|
Oct
(1) |
Nov
|
Dec
(2) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2005 |
Jan
(2) |
Feb
(2) |
Mar
|
Apr
(6) |
May
|
Jun
(4) |
Jul
(3) |
Aug
|
Sep
|
Oct
(2) |
Nov
(12) |
Dec
(10) |
2006 |
Jan
(27) |
Feb
(4) |
Mar
(3) |
Apr
(5) |
May
(5) |
Jun
(1) |
Jul
(2) |
Aug
|
Sep
(7) |
Oct
(5) |
Nov
(11) |
Dec
(5) |
2007 |
Jan
(15) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(3) |
Sep
(1) |
Oct
|
Nov
(1) |
Dec
|
2008 |
Jan
(7) |
Feb
(9) |
Mar
(2) |
Apr
(1) |
May
|
Jun
(6) |
Jul
(2) |
Aug
|
Sep
|
Oct
(1) |
Nov
(3) |
Dec
(1) |
2009 |
Jan
(11) |
Feb
|
Mar
(2) |
Apr
(1) |
May
(8) |
Jun
(11) |
Jul
(9) |
Aug
(12) |
Sep
(1) |
Oct
(3) |
Nov
(10) |
Dec
|
2010 |
Jan
(3) |
Feb
(1) |
Mar
(5) |
Apr
|
May
|
Jun
|
Jul
|
Aug
(2) |
Sep
(1) |
Oct
(1) |
Nov
|
Dec
|
2011 |
Jan
(2) |
Feb
(2) |
Mar
(1) |
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
(1) |
Sep
|
Oct
(2) |
Nov
|
Dec
|
2012 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2013 |
Jan
(1) |
Feb
|
Mar
|
Apr
(3) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(1) |
Nov
(1) |
Dec
(1) |
2014 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
|
2015 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
(2) |
Nov
|
Dec
|
From: Rick K. <rk...@nc...> - 2005-12-21 14:11:15
|
MeMo, On Wed, 21 Dec 2005, Mehmet Belgin wrote: > Hello everyone, > > I just installed PerfSuite, but psrun gives the following error: > > #psrun ./ps_test > ERROR: ld.so: object 'libpsrun.so.0' from LD_PRELOAD cannot be preloaded: > ignored. I recall seeing this at some point but am embarrassed to say that I don't remember what the particular source of the ld.so complaint was. Can you say anything more about what the contents of ps_test are? That might help reproduce/diagnose the case. > > I installed PerfSuite with PAPI and tDOM support. I already had a recompiled > kernel for perfctr support with PAPI installed. I can see 'libpsrun.so.0' under > /usr/local/lib. I have /usr/local/lib listed in /etc/ld.so.conf (as usual) > and I ran ldconfig after the installation just to be sure. This is all I can > do, so I need your help please! > This sounds as though you have set up everything properly. I should mention that the current PerfSuite releases (0.6.1 or 0.6.2a2) do not support the 2.6 kernel, so you may run into problems related to that if you are running that kernel version. "uname -r" should report your kernel version. 2.6.x support is on its way - there have been a few inquiries/reports to this list about it - plans had been to release prior to year end, however some activities at NCSA have reduced available time in the short term, so it's looking like early January is a good bet for the first release (0.6.2a3) with 2.6 support. It is a substantial release with numerous changes. Thanks to all for your patience on this. Rick > Thank you in advance... > > MeMo > |
From: Mehmet B. <meh...@gm...> - 2005-12-21 08:26:24
|
Hello everyone, I just installed PerfSuite, but psrun gives the following error: #psrun ./ps_test ERROR: ld.so: object 'libpsrun.so.0' from LD_PRELOAD cannot be preloaded: ignored. I installed PerfSuite with PAPI and tDOM support. I already had a recompile= d kernel for perfctr support with PAPI installed. I can see 'libpsrun.so.0' u= nder /usr/local/lib. I have /usr/local/lib listed in /etc/ld.so.conf (as usual) and I ran ldconfig after the installation just to be sure. This is all I ca= n do, so I need your help please! Thank you in advance... MeMo |
From: Rick K. <rk...@nc...> - 2005-12-15 01:13:57
|
> If you add calls to pshwpc (as you have done): > > -lpshwpc -lperfsuite -lpapi > > If you do not, and it is an MPI program: > > -lpshwpc_mpi -lpshwpc -lperfsuite -lpapi Giuseppe, I neglected to mention one other library that may be necessary when linking: it is the Expat parser that is used for parsing XML documents. If you still have missing external routines, with names like XML_ParserCreate, then this indicates that Expat is needed. To include it in your link line, try adding -lexpat at the end. Apologies - I think much of this confusion is due to the need for better documentation of PerfSuite. Rick |
From: Rick K. <rk...@nc...> - 2005-12-14 22:45:28
|
Giuseppe, You will want to include -lpshwpc and -lperfsuite in your link line, after the -lpshwpc_mpi. Those libraries have the externals that are missing. Also, just to clarify, libpshwpc_mpi is a PMPI-based interface. There is no need to add any calls to PerfSuite if you link with that (it's likely it will result in a runtime error, actually). So in summary: If you add calls to pshwpc (as you have done): -lpshwpc -lperfsuite -lpapi If you do not, and it is an MPI program: -lpshwpc_mpi -lpshwpc -lperfsuite -lpapi Plus you may need to adjust the MPI libraries linked in for the MPI profiling interface, which is independent of PerfSuite. Good luck, Rick On Wed, 14 Dec 2005, Giuseppe Grieco wrote: > Dear Rick, > > I am following to try to use perfsuite with mpi, but without success. > What I do is editing the file cpi-mpif.f present in the folder > /examples/cpi/ by inserting calls to the four subroutine of psrun. It > makes the object file but does not links correctly. What I am doing is > the following > > % /usr/local/mpich-1.2.7/build/linux_intel/bin/mpif90 cpi-mpif.f > -static -o cpi -I/opt/perfsuite_intel/include -L/opt/perfsuite_intel/lib > -L/usr/local/lib -lpshwpc_mpi -lpapi > > The answer is > > IPO Error: unresolved : psf_hwpc_init_ > Referenced in cpi-mpif.o > IPO Error: unresolved : psf_hwpc_start_ > Referenced in cpi-mpif.o > IPO Error: unresolved : psf_hwpc_stop_ > Referenced in cpi-mpif.o > IPO Error: unresolved : psf_hwpc_shutdown_ > Referenced in cpi-mpif.o > IPO Error: unresolved : ps_hwpc_init > Referenced in libpshwpc_mpi.a(libpshwpc_mpi_a-hwpc-mpi.o) > IPO Error: unresolved : ps_hwpc_start > Referenced in libpshwpc_mpi.a(libpshwpc_mpi_a-hwpc-mpi.o) > IPO Error: unresolved : _ps_malloc > Referenced in libpshwpc_mpi.a(libpshwpc_mpi_a-hwpc-mpi.o) > IPO Error: unresolved : ps_hwpc_stop > Referenced in libpshwpc_mpi.a(libpshwpc_mpi_a-hwpc-mpi.o) > IPO Error: unresolved : ps_hwpc_shutdown > Referenced in libpshwpc_mpi.a(libpshwpc_mpi_a-hwpc-mpi.o) > IPO Error: unresolved : _ps_getargs > Referenced in libpshwpc_mpi.a(libpshwpc_mpi_a-hwpc-mpi.o) > cpi-mpif.o(.text+0x3d): In function `MAIN__': > : undefined reference to `psf_hwpc_init_' > cpi-mpif.o(.text+0x10e): In function `MAIN__': > : undefined reference to `psf_hwpc_start_' > cpi-mpif.o(.text+0x1a7): In function `MAIN__': > : undefined reference to `psf_hwpc_stop_' > cpi-mpif.o(.text+0x1c0): In function `MAIN__': > : undefined reference to `psf_hwpc_shutdown_' > /opt/perfsuite_intel/lib/libpshwpc_mpi.a(libpshwpc_mpi_a-hwpc-mpi.o)(.text+0x2d): > In function `MPI_Init': > /opt/perfsuite-0.6.1/src/libpshwpc/hwpc-mpi.c:88: undefined reference to > `ps_hwpc_init' > /opt/perfsuite_intel/lib/libpshwpc_mpi.a(libpshwpc_mpi_a-hwpc-mpi.o)(.text+0x36):/opt/perfsuite-0.6.1/src/libpshwpc/hwpc-mpi.c:90: > undefined reference to `ps_hwpc_start' > /opt/perfsuite_intel/lib/libpshwpc_mpi.a(libpshwpc_mpi_a-hwpc-mpi.o)(.text+0xc3): > In function `MPI_Finalize': > /opt/perfsuite-0.6.1/src/libpshwpc/hwpc-mpi.c:122: undefined reference > to `_ps_malloc' > /opt/perfsuite_intel/lib/libpshwpc_mpi.a(libpshwpc_mpi_a-hwpc-mpi.o)(.text+0xf0):/opt/perfsuite-0.6.1/src/libpshwpc/hwpc-mpi.c:131: > undefined reference to `ps_hwpc_stop' > /opt/perfsuite_intel/lib/libpshwpc_mpi.a(libpshwpc_mpi_a-hwpc-mpi.o)(.text+0x10d):/opt/perfsuite-0.6.1/src/libpshwpc/hwpc-mpi.c:133: > undefined reference to `ps_hwpc_shutdown' > /opt/perfsuite_intel/lib/libpshwpc_mpi.a(libpshwpc_mpi_a-hwpc-mpi.o)(.text+0x137): > In function `mpi_init_': > /opt/perfsuite-0.6.1/src/libpshwpc/hwpc-mpi.c:155: undefined reference > to `_ps_getargs' > > Thanks, Giuseppe. > > > > > ------------------------------------------------------- > This SF.net email is sponsored by: Splunk Inc. Do you grep through log files > for problems? Stop! Download the new AJAX search engine that makes > searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! > http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click > _______________________________________________ > PerfSuite-users mailing list > Per...@li... > https://lists.sourceforge.net/lists/listinfo/perfsuite-users > |
From: Giuseppe G. <gg9...@un...> - 2005-12-14 16:29:29
|
Dear Rick, I am following to try to use perfsuite with mpi, but without success. What I do is editing the file cpi-mpif.f present in the folder /examples/cpi/ by inserting calls to the four subroutine of psrun. It makes the object file but does not links correctly. What I am doing is the following % /usr/local/mpich-1.2.7/build/linux_intel/bin/mpif90 cpi-mpif.f -static -o cpi -I/opt/perfsuite_intel/include -L/opt/perfsuite_intel/lib -L/usr/local/lib -lpshwpc_mpi -lpapi The answer is IPO Error: unresolved : psf_hwpc_init_ Referenced in cpi-mpif.o IPO Error: unresolved : psf_hwpc_start_ Referenced in cpi-mpif.o IPO Error: unresolved : psf_hwpc_stop_ Referenced in cpi-mpif.o IPO Error: unresolved : psf_hwpc_shutdown_ Referenced in cpi-mpif.o IPO Error: unresolved : ps_hwpc_init Referenced in libpshwpc_mpi.a(libpshwpc_mpi_a-hwpc-mpi.o) IPO Error: unresolved : ps_hwpc_start Referenced in libpshwpc_mpi.a(libpshwpc_mpi_a-hwpc-mpi.o) IPO Error: unresolved : _ps_malloc Referenced in libpshwpc_mpi.a(libpshwpc_mpi_a-hwpc-mpi.o) IPO Error: unresolved : ps_hwpc_stop Referenced in libpshwpc_mpi.a(libpshwpc_mpi_a-hwpc-mpi.o) IPO Error: unresolved : ps_hwpc_shutdown Referenced in libpshwpc_mpi.a(libpshwpc_mpi_a-hwpc-mpi.o) IPO Error: unresolved : _ps_getargs Referenced in libpshwpc_mpi.a(libpshwpc_mpi_a-hwpc-mpi.o) cpi-mpif.o(.text+0x3d): In function `MAIN__': : undefined reference to `psf_hwpc_init_' cpi-mpif.o(.text+0x10e): In function `MAIN__': : undefined reference to `psf_hwpc_start_' cpi-mpif.o(.text+0x1a7): In function `MAIN__': : undefined reference to `psf_hwpc_stop_' cpi-mpif.o(.text+0x1c0): In function `MAIN__': : undefined reference to `psf_hwpc_shutdown_' /opt/perfsuite_intel/lib/libpshwpc_mpi.a(libpshwpc_mpi_a-hwpc-mpi.o)(.text+0x2d): In function `MPI_Init': /opt/perfsuite-0.6.1/src/libpshwpc/hwpc-mpi.c:88: undefined reference to `ps_hwpc_init' /opt/perfsuite_intel/lib/libpshwpc_mpi.a(libpshwpc_mpi_a-hwpc-mpi.o)(.text+0x36):/opt/perfsuite-0.6.1/src/libpshwpc/hwpc-mpi.c:90: undefined reference to `ps_hwpc_start' /opt/perfsuite_intel/lib/libpshwpc_mpi.a(libpshwpc_mpi_a-hwpc-mpi.o)(.text+0xc3): In function `MPI_Finalize': /opt/perfsuite-0.6.1/src/libpshwpc/hwpc-mpi.c:122: undefined reference to `_ps_malloc' /opt/perfsuite_intel/lib/libpshwpc_mpi.a(libpshwpc_mpi_a-hwpc-mpi.o)(.text+0xf0):/opt/perfsuite-0.6.1/src/libpshwpc/hwpc-mpi.c:131: undefined reference to `ps_hwpc_stop' /opt/perfsuite_intel/lib/libpshwpc_mpi.a(libpshwpc_mpi_a-hwpc-mpi.o)(.text+0x10d):/opt/perfsuite-0.6.1/src/libpshwpc/hwpc-mpi.c:133: undefined reference to `ps_hwpc_shutdown' /opt/perfsuite_intel/lib/libpshwpc_mpi.a(libpshwpc_mpi_a-hwpc-mpi.o)(.text+0x137): In function `mpi_init_': /opt/perfsuite-0.6.1/src/libpshwpc/hwpc-mpi.c:155: undefined reference to `_ps_getargs' Thanks, Giuseppe. |
From: Rick K. <rk...@nc...> - 2005-12-08 00:26:50
|
On Wed, 7 Dec 2005, Giuseppe Grieco wrote: > Dear Rick, > I tried to run =A0 >=20 > % /usr/local/mpich-1.2.7/bin/mpirun -np 2 /usr/local/bin/psrun cpi-mpi >=20 > as I have ch_p4 device for MPICH installed. As soon as I will try the o= ther way you suggested me, I will let you know the result. > Now I would like to make you another question: > in an old mail I asked you if it was possible install perfsuite with di= fferent fortran compilers and part of your answer was: >=20 > [ ... ] >=20 > I receive errors. I try to install perfsuite with mpich that has differ= ent installation for GNU compilers and intel compilers. So when I set MPI= CPPFLAGS for step 4 is different than for step 1. Does it cause problems?= If yes, is it possible to install different versions of perfsuite, as fo= r mpich? > Always thanks for your support. Giuseppe, Since you are using MPICH ch_p4, I would guess that psrun will not be=20 effective for you for the reasons that I mentioned previously (command=20 line getting mangled). Regarding how to install multiple versions of PerfSuite on one system,=20 each using different configuration options: PerfSuite uses GNU Autotools=20 for its build system, and that is quite flexible, so most combinations ar= e=20 possible and should work with multiple Fortran compilers, multiple MPI=20 implementations, etc. The primary limitation is on how much disk space=20 you can afford to use for each additional installation. We routinely use multiple compiler vendors (GNU, Intel, Open64), and=20 multiple MPI implementations (MPICH ch_p4/GM, ChaMPIon/Pro), so it is=20 definitely possible to do this, but does take some planning and=20 familiarity with software installation, calling conventions, etc.=20 Probably the most straightforward way to maintain different versions of=20 PerfSuite is to use a distinct "--prefix" option for each variant. For=20 example, let's say you want GNU and Intel compiler support with MPICH and= =20 LAM as MPI layers and you want to mix and match. This would be a total o= f=20 4 combinations. You could do: ./configure --prefix=3D/opt/perfsuite-gnu-mpich --enable-mpi \ MPICPPFLAGS=3D"-I/opt/mpich/include" make && make install ./configure --prefix=3D/opt/perfsuite-gnu-lam --enable-mpi \ MPICPPFLAGS=3D"-I/opt/lam/include" make && make install ./configure --prefix=3D/opt/perfsuite-intel-mpich --enable-mpi \ MPICPPFLAGS=3D"-I/opt/mpich/include" F77=3Difort make && make install ./configure --prefix=3D/opt/perfsuite-intel-lam --enable-mpi \ MPICPPFLAGS=3D"-I/opt/lam/include" F77=3Difort make && make install To use any one of these versions, you would then have to make sure you=20 have "source"d the proper "psenv" script and probably have to arrange for= =20 PATH/LD_LIBRARY_PATH settings so that remote MPI tasks, when launched=20 through rsh or ssh are set properly. There are numerous site-specific=20 things that are likely to crop up, and for that you have to use some=20 investigative skills to resolve. Please note that it is <mpi.h> and the setting of F77 that is most=20 relevant to the PerfSuite library. It is up to the user and/or the mpicc= =20 or mpif77 command to select the proper MPI library itself when building a= n=20 MPI application. That is, nothing in the PerfSuite build actually links=20 with an existing MPI library... this is deferred until the MPI applicatio= n=20 is actually built or run. I would say that, for the person just getting started using PerfSuite,=20 it's probably easiest to choose just one preferred Fortran compiler and=20 MPI installation and work exclusively with that first, so that you can ge= t=20 familiar with PerfSuite and MPI without worrying about multiple installat= ions. =20 Then once you have the basics down, expand to additional versions as=20 needed. Good luck, Rick |
From: Rick K. <rk...@nc...> - 2005-12-07 04:35:32
|
Giuseppe, There is one other thing I forgot to mention here: > /usr/local/mpich-1.2.7/bin/mpirun -np 2 /usr/local/bin/psrun cpi-mpi If this option still doesn't work for you, it might be that the MPI implementation is changing the command-line arguments supplied to psrun when the MPI program actually starts on the remote nodes. This would be the case, for example, if you are using the "ch_p4" version of MPICH as supplied by Argonne. What is happening there is that psrun isn't actually seeing the command "cpi-mpi", but something else altogether that is put back in order by the MPI routine MPI_Init. However, that is too late for psrun to be able to do its work. The only workarounds available for this problem are: 1. link the MPI application with the PMPI version of PerfSuite's libpshwpc library, which is built if you supplied the configure-time option --enable-mpi. The library is called "libpshwpc_mpi" and will be installed in the standard PerfSuite library directory. 2. Insert calls to libpshwpc in the MPI application itself. Both of these workarounds eliminate the need for using psrun altogether, so you should omit psrun in your mpirun command line if you use them. This topic was discussed some months back in this mailing list but I thought it would be helpful to recap. Thanks, Rick |
From: Rick K. <rk...@nc...> - 2005-12-07 03:14:22
|
On Tue, 6 Dec 2005 gg...@un... wrote: > I am using perfsuite-0.6.1 with GNU compilers gcc and g77 and with mpich.1.2.7. > It seems that all works properly, but when I run > > % /usr/local/mpich-1.2.7/bin/mpirun -np 2 psrun cpi-mpi > > the answer is > > Unrecognized argument psrun ignored. > Process 0 on gemelli > Process 1 on gemelli > pi is approximately 3.1415926535899814, Error is 0.0000000000001883 > wall clock time = 1.040470 > > What happens? Thanks in advance. Giuseppe, This is a situation that depends on the version of MPI you are using and is a common problem. The output "Unrecognized argument" implies that the MPI launch command mpirun is interpreting psrun as an option (which it doesn't recognize and therefore ignores). You might try supplying the full pathname to psrun, for example: /usr/local/mpich-1.2.7/bin/mpirun -np 2 /usr/local/bin/psrun cpi-mpi Hope this helps, Rick p.s. I am redirecting your question from perfsuite-bugs to perfsuite-users because I think this is of general interest. |
From: <gg...@un...> - 2005-12-07 02:24:03
|
I am using perfsuite-0.6.1 with GNU compilers gcc and g77 and with mpich.= 1.2.7. It seems that all works properly, but when I run % /usr/local/mpich-1.2.7/bin/mpirun -np 2 psrun cpi-mpi the answer is Unrecognized argument psrun ignored. Process 0 on gemelli Process 1 on gemelli pi is approximately 3.1415926535899814, Error is 0.0000000000001883 wall clock time =3D 1.040470 What happens? Thanks in advance. Dr. Giuseppe Grieco DIFA Universit=E0 della Basilicata |
From: Rick K. <rk...@nc...> - 2005-11-24 14:35:41
|
Giuseppe, On Thu, 24 Nov 2005 gg...@un... wrote: > Dear all, > I installed perfsuite successfully, but when I run the examples in matvec folder, > after > > % psrun ./matvec-r4 > > I receive the following message > > forrtl: severe (168): Program Exception - illegal instruction > Image PC Routine Line Source > matvec-r4 0804A335 Unknown Unknown Unknown > matvec-r4 0804A2C5 Unknown Unknown Unknown > libc.so.6 40243A07 Unknown Unknown Unknown > matvec-r4 0804A1F1 Unknown Unknown Unknown > > I do not know what it happens. Is there somebody who can help me? Thanks in > advance, Giuseppe. > It's a little hard to tell what's going on without some additional information, such as the type of system on which you are running (processor, OS), the version of the Fortran compiler you are using (I'm guessing Intel, if so you can use the "-V" option of the compiler to retrieve compiler version). If running with PAPI, then version info there might also be useful. Lastly, the output of the PerfSuite test suite can have some useful information (the result of "make check"). If using the Intel compiler, we have seen that for some versions (not all), standard profiling is broken and generates a run-time error. If that's the case with your version, then psrun using the "profil" style of profiling will also fail. You can check on this by compiling the example program for profiling and seeing if it runs properly. Check the "-help" output of the compiler for the flags to use for compilation with gprof-style profiling enabled. Configuration options used when building PerfSuite are stored at the beginning of the file "config.log" after running the "configure" script, that can also help provide details for diagnosing. If you can send that info along, we can see what might be happening. You can send to per...@li... if you like, to minimize traffic here. Thanks, Rick |
From: Rick K. <rk...@nc...> - 2005-11-24 14:12:11
|
Harry, > Apologies for the somewhat OT post, but failing to be able to run perfsuite, > I've had to fall back for now on oprofile. This may be of interest here as > well. Advice and RTFM's welcome as long as they come with URLs. > Not a problem, but I see that the best source of advice for this one (the OProfile people themselves), have responded with some info. For those who are interested, the mail thread is available here: http://sourceforge.net/mailarchive/forum.php?thread_id=9050286&forum_id=3252 As an aside, I think the OProfile manual is a good source of information, not only for that project but on the general topic of sampling profilers and some things to consider when working with one and interpreting the results (PerfSuite uses statistical sampling also). Rick |
From: <gg...@un...> - 2005-11-24 11:42:05
|
Dear all, I installed perfsuite successfully, but when I run the examples in matvec= folder, after=20 % psrun ./matvec-r4 =20 I receive the following message forrtl: severe (168): Program Exception - illegal instruction Image PC Routine Line Source matvec-r4 0804A335 Unknown Unknown Unknown matvec-r4 0804A2C5 Unknown Unknown Unknown libc.so.6 40243A07 Unknown Unknown Unknown matvec-r4 0804A1F1 Unknown Unknown Unknown I do not know what it happens. Is there somebody who can help me? Thanks = in advance, Giuseppe. Dr. Giuseppe Grieco DIFA Universit=E0 della Basilicata |
From: Harry M. <hj...@ta...> - 2005-11-23 20:29:04
|
Apologies for the somewhat OT post, but failing to be able to run perfsuite, I've had to fall back for now on oprofile. This may be of interest here as well. Advice and RTFM's welcome as long as they come with URLs. In examining the oprofile output for several related programs, I was struck by how much time as being wasted in 'poll_idle'. Because these apps typically consumed very large (1GB) files, I originally thought that this was all due to disk i/o, but now I'm not so sure. In trying to grasp how different programs behaved in terms of I/O and how that related to 'poll_idle', I ran a few other apps. Below are the oprofile outputs for 3 of them, one is for a compilation of a fairly large lib, 2 others are bioinformatics apps with which I'm familiar. Especially notable is the oprofile output for clustalw. It ingested and egested relatively tiny files, ran for about 8 minutes, but oprofile suggests that 50% of the time, the CPU was idle. This cannot be disk I/O (the system was essentially idle except for this test), so can memory operations account for this much idle time (cache misses, moving data to & from main mem, page faults, etc)? And if so, how would I go about quantifying this? Is this the point where I have to dive into tau? 1) compilation of the hdf5 library (which I needed to do anyway). CPU: AMD64 processors, speed 1990.96 MHz (estimated) Counted CPU_CLK_UNHALTED events (Cycles outside of halt state) with a unit mask of 0x00 (No unit mask) count 100000 samples % app name symbol name 1495583 30.8198 cc1 (no symbols) 870380 17.9361 vmlinux poll_idle 486332 10.0219 libc-2.3.2.so (no symbols) 241578 4.9782 bash (no symbols) 197392 4.0677 vmlinux unmap_vmas 160895 3.3156 vmlinux copy_page_range 127658 2.6307 vmlinux copy_page 108131 2.2283 ld-2.3.2.so (no symbols) 101516 2.0920 as (no symbols) 99807 2.0567 vmlinux clear_page 49755 1.0253 libbfd-2.15.so (no symbols) 48223 0.9937 vmlinux page_fault 2) a run of clustalw, a multiple alignment app from bioinformatics which takes a small amount of data (227KB) and performs a large amount of integer computation on it, and then emits a relatively small amount of data (3 files totalling 180KB). The program is fairly chatty tho (lots of screen output, redirected to a file in this case, but the total is included in the 180K output). samples % app name symbol name 8950726 48.0420 vmlinux poll_idle 7498500 40.2473 clustalw forward_pass 832632 4.4691 clustalw prfscore 382780 2.0545 clustalw pdiff 247423 1.3280 clustalw reverse_pass 99006 0.5314 clustalw diff 77909 0.4182 vmlinux timer_interrupt 77141 0.4140 clustalw open_penalty2 73940 0.3969 clustalw calc_prf1 59589 0.3198 clustalw open_penalty1 49189 0.2640 clustalw ext_penalty1 47153 0.2531 clustalw ext_penalty2 3) a run of tacg, another bioinformatics sequence matching app that consumes a larger amount of data (~5MB) and performs a fair amount of integer arithmetic on it and then emits a file of ~117MB) samples % app name symbol name 212135 53.1937 vmlinux poll_idle 111922 28.0649 libc-2.3.2.so (no symbols) 17894 4.4870 tacg hash 7601 1.9060 tacg Anti_Par 6468 1.6219 tacg Translate 3451 0.8654 tacg Cutting 2421 0.6071 tacg Degen_Cmp 2292 0.5747 libm-2.3.2.so (no symbols) 2034 0.5100 tacg HorribleAccounting 1913 0.4797 tacg LinearMap 1847 0.4631 tacg GetSequence2 1638 0.4107 vmlinux timer_interrupt -- Cheers, Harry Harry J Mangalam - 949 856 2847 (vox; email for fax) - hj...@ta... <<plain text preferred>> |
From: Rick K. <rk...@nc...> - 2005-11-22 14:26:46
|
> ..And while waiting for the 2.6 version of perfsuite, what opensource tool > would you suggest using to approximate the functionality of perfsuite? ie > Name your top competitor ;) That's a loaded question :) I'm less concerned about talking about alternatives than I am about leaving someone out... It seems to me that for profiling, oprofile is very widely used and maintained. There is a project called TAU, based at the University of Oregon, that is also a very good alternative for portable profiling. Additionally, there has been an ongoing project at Rice for statistical profiling that is called HPC Toolkit (I believe it uses PAPI and/or oprofile for the actual sampling). For aggregate counting, you'll find a utility called papiex, written by Phil Mucci, that does similar things to what psrun in counting mode does. You can find pointers to some of these at the NCSA site: http://perfsuite.ncsa.uiuc.edu/perftools/ SGI also announced an open source version of their OpenSpeedShop tool set, but I don't have any experience with it, so can't comment (the IRIX version worked very well). I'd be curious to hear what other people think on this subject. Thanks again, Rick |
From: Rick K. <rk...@nc...> - 2005-11-22 14:13:33
|
Harry, > Thanks for the zippy reply - much appreciated. You're very welcome, although I'm sorry the reply didn't exactly offer a current fix! > Just a suggestion - one of the tests that should run (maybe it does and I > missed it) is one that checks for the kernel version. It seems odd that NONE > of the tests fail (I thought that originally the threads test failed, but in > the output below, they pass). Seems like a pretty good test result for > something that won't run :) That's a good idea and as you point out, no such check exists in the 0.6.2a2 releases or earlier. The upcoming version does have a check for kernel major and minor versions in the configure script, not only to possibly bail on error but also because there are a few things for which a different code path has to be taken based on kernel-specific things (like in /proc). > I read the Linux Journal article which had no mention of the 2.6 kernel > prohibition and I must have missed the part where this was noted. In the > INSTALL, it mentions: > > 124 Currently, the latest 2.6.x release of perfctr is the best > choice of > 125 versions for new installations of the driver. Please read the > 126 instructions in the perfctr distribution carefully. > > which implies that the 2.6 kernel is supported. Yes, this is kind of confusing. The release numbers of perfctr, which is what is being referred to in the INSTALL file, are not in lockstep with the kernel versions. That is, you can run perfctr 2.6.x on a 2.4.x kernel. Also, you didn't miss anything in the LJ article... it just wasn't addressed :( > I can't argue with free SW, and I'm trembling with antici.....pation :) for > the 2.6 supporting version, but it might have been made clearer. I agree. The web sites *and* the INSTALL instructions need a revisit. And, of course, a newer release for current kernels will solve the real issue :) > If there's currently a cvs/svn version of perfsuite, I'd be willing to give it > a try. Thanks much for the offer. There isn't a publicly-accessible CVS tree, but the next (hopefully final alpha) release is on its way. What is going on right now are updates for the Perfmon (IA-64) driver (which *is* tied to the kernel major version). Other generic 2.6 updates are in place but it makes sense to package it all together. > Also, the difference between root and user was only due to permissions > on /dev/perfctr. changing to a+r allowed a normal user to obtain the same > results. Ah, that's good to know. Thanks for clarifying. > Do you have any idea if the new version of PAPI will allow perfsuite to run on > 2.6 (ie is the reason it won't run due to PAPI or due to perfsuite?) It's not a PAPI-specific thing, it's in PerfSuite. Specifically, necessary mods are in libperfsuite, not libpshwpc. It is possible that psrun, in counting mode, might run OK on a 2.6 kernel with PAPI 3, but it's been a while since I checked. I'm certain that profiling would be affected, though, and that would be the case whether profiling with hardware counters or with interval timers or profil(). Counting with Perfmon directly also would fail (but that is not applicable to Opteron at this point in time). I've lopped off your test suite results (thanks for sending though). The test suite is best at detecting fatal (core dump-inducing) type errors and has to be a little generic, because it has to be able to run whether or not the kernel has been patched and PAPI is installed. But you can check whether you're getting anything meaningful at all through PAPI like this: $ cd src/libpshwpc/tests $ ./testsuite -v -k count You should get "verbose" output from the test cases that try to count events, and if the results are reasonable (non-zero), you might be OK (again, for counting only... not profiling). Thanks again for the feedback, Rick |
From: Harry M. <hj...@ta...> - 2005-11-22 04:07:01
|
..And while waiting for the 2.6 version of perfsuite, what opensource tool would you suggest using to approximate the functionality of perfsuite? ie Name your top competitor ;) Thanks! -- Cheers, Harry Harry J Mangalam - 949 856 2847 (vox; email for fax) - hj...@ta... <<plain text preferred>> |
From: Harry M. <hj...@ta...> - 2005-11-22 04:02:20
|
Hi Rick, Thanks for the zippy reply - much appreciated. Just a suggestion - one of the tests that should run (maybe it does and I missed it) is one that checks for the kernel version. It seems odd that NONE of the tests fail (I thought that originally the threads test failed, but in the output below, they pass). Seems like a pretty good test result for something that won't run :) I read the Linux Journal article which had no mention of the 2.6 kernel prohibition and I must have missed the part where this was noted. In the INSTALL, it mentions: 124 Currently, the latest 2.6.x release of perfctr is the best choice of 125 versions for new installations of the driver. Please read the 126 instructions in the perfctr distribution carefully. which implies that the 2.6 kernel is supported. I can't argue with free SW, and I'm trembling with antici.....pation :) for the 2.6 supporting version, but it might have been made clearer. If there's currently a cvs/svn version of perfsuite, I'd be willing to give it a try. Also, the difference between root and user was only due to permissions on /dev/perfctr. changing to a+r allowed a normal user to obtain the same results. Do you have any idea if the new version of PAPI will allow perfsuite to run on 2.6 (ie is the reason it won't run due to PAPI or due to perfsuite?) FYI, below is the output of the perfsuite tests on my system. hjm 19:42:49 hjm@clay ~/perfsuite-0.6.2a2 502 $ sudo make -s check Password: Making check in src Making check in libperfsuite Making check in . Making check in tests ## ------------------------------------------- ## ## PerfSuite 0.6.2a2 test suite: Core Library. ## ## ------------------------------------------- ## 1: Hello, world! ok 2: CPU identification ok 3: CPU speed information ok 4: CPU speed information (Fortran) ok 5: CPU usage ok 6: error reporting ok 7: error reporting (Fortran) ok 8: argument processing ok 9: proc filesystem ok 10: memory usage reporting ok 11: memory usage reporting (Fortran) ok 12: dynamic memory usage reporting ok 13: hash tables ok 14: load map address inquiry ok ## ------------- ## ## Test results. ## ## ------------- ## All 14 tests were successful. Making check in libpshwpc Making check in . Making check in arch-defaults Making check in doc Making check in xml Making check in css Making check in dtds Making check in xsl Making check in tests ## ----------------------------------------------------------- ## ## PerfSuite 0.6.2a2 test suite: Hardware Performance Library. ## ## ----------------------------------------------------------- ## 1: base PAPI functionality ok 2: PAPI compatibility ok 3: PAPI to PerfSuite conversion (C/Fortran) ok 4: PAPI with POSIX threads (non-multiplexed) ok 5: PAPI with POSIX threads (multiplexed) ok 6: XML input document parsing (counting) ok 7: XML input document parsing (profiling) ok 8: inquiry (numevents) ok 9: inquiry (numevents) error handling ok 10: inquiry (numevents = 0) ok 11: serial program (counting) ok 12: serial program (profiling) ok 13: serial program (profil) ok 14: serial program (itimer) ok 15: serial program (counting auto) ok 16: serial program (profiling auto) ok 17: serial program (profil auto) ok 18: serial program (itimer auto) ok 19: serial program (counting Fortran) ok 20: serial program (profiling Fortran) ok 21: serial program (profil Fortran) ok 22: serial program (counting Fortran auto) ok 23: serial program (profiling Fortran auto) ok 24: serial program (profil Fortran auto) ok 25: serial program (itimer Fortran auto) ok 26: fork (counting) ok 27: fork (profiling) ok 28: POSIX threads program (counting) ok 29: POSIX threads program (profiling) ok ## ------------- ## ## Test results. ## ## ------------- ## All 29 tests were successful. Making check in tcllib Making check in psutils Making check in pshwpc Making check in metrics Making check in xml Making check in dtds Making check in papi Making check in msgs Making check in perfmon Making check in psxml Generating top-level PerfSuite Tcl package index Making check in tools Making check in psenv Making check in doc Making check in psinv Making check in . Making check in doc Making check in tests ## ------------------------------------ ## ## PerfSuite 0.6.2a2 test suite: psinv. ## ## ------------------------------------ ## 1: psinv (basic) ok 2: psinv (features) ok 3: psinv (hardware performance events) ok 4: psinv (verbose) ok 5: psinv (version) ok 6: psinv (help) ok ## ------------- ## ## Test results. ## ## ------------- ## All 6 tests were successful. Making check in psprocess Making check in tcl Making check in doc Making check in msgs Making check in tests ## ---------------------------------------- ## ## PerfSuite 0.6.2a2 test suite: psprocess. ## ## ---------------------------------------- ## 1: psprocess (help) ok ## ------------- ## ## Test results. ## ## ------------- ## 1 test was successful. Making check in PSConfig Making check in doc Making check in psrun Making check in . Making check in doc Making check in xml Making check in dtds Making check in tests ## ------------------------------------ ## ## PerfSuite 0.6.2a2 test suite: psrun. ## ## ------------------------------------ ## 1: psrun (basic) ok 2: psrun (profil) ok 3: psrun (itimer) ok 4: psrun (count) ok 5: psrun (count text) ok 6: psrun (profile) ok 7: psrun (resource) ok 8: psrun (resource text) ok ## ------------- ## ## Test results. ## ## ------------- ## All 8 tests were successful. Making check in ext Making check in tklib Making check in plotchart Making check in examples Making check in cpi Making check in hl Making check in matvec Making check in misc Making check in psrun-raw Making check in pstcl Making check in threadrun On Monday 21 November 2005 06:38 pm, Rick Kufrin wrote: > Harry, > > > Like a recent poster here on the list, I cannot get psrun to work. > > > > I'm running Kubuntu on a dual opteron, have patched the kernel (2.6.11) > > for both oprofile & papi and all PAPI tests pass. All the perfsuite > > tests pass as well (except the thread tests, which I'm not concerned > > about just now). > > Thanks for forging ahead with trying to get things running. It sounds > like you've gotten all the prerequisites going just fine. But I would > guess that the reason why you are running into problems is that you are > working with a 2.6 kernel. To date, there hasn't been a PerfSuite release > meant for use with anything but 2.4. > > That's the bad news, but the good news is that an updated release should > be coming out shortly, and that is being developed against 2.6. So I'd > advise you to wait until available, and try again. > > The different behavior when run as a normal user and as root is a little > worrisome, though, as there should be no need to have any special > privileges to run psrun (unless you are working with things like SUID > binaries). > > The "hardware event not available" error message means pretty much what it > says - that the event listed in the configuration file is not available on > that platform. There have been a few updates to PAPI over the past > several months and a new release out just today, for which events listed > in the configuration files will be checked against the current PAPI > support before the next PerfSuite release. > > Thanks much for the report, > Rick -- Cheers, Harry Harry J Mangalam - 949 856 2847 (vox; email for fax) - hj...@ta... <<plain text preferred>> |
From: Rick K. <rk...@nc...> - 2005-11-22 02:38:30
|
Harry, > Like a recent poster here on the list, I cannot get psrun to work. > > I'm running Kubuntu on a dual opteron, have patched the kernel (2.6.11) for > both oprofile & papi and all PAPI tests pass. All the perfsuite tests pass > as well (except the thread tests, which I'm not concerned about just now). Thanks for forging ahead with trying to get things running. It sounds like you've gotten all the prerequisites going just fine. But I would guess that the reason why you are running into problems is that you are working with a 2.6 kernel. To date, there hasn't been a PerfSuite release meant for use with anything but 2.4. That's the bad news, but the good news is that an updated release should be coming out shortly, and that is being developed against 2.6. So I'd advise you to wait until available, and try again. The different behavior when run as a normal user and as root is a little worrisome, though, as there should be no need to have any special privileges to run psrun (unless you are working with things like SUID binaries). The "hardware event not available" error message means pretty much what it says - that the event listed in the configuration file is not available on that platform. There have been a few updates to PAPI over the past several months and a new release out just today, for which events listed in the configuration files will be checked against the current PAPI support before the next PerfSuite release. Thanks much for the report, Rick |
From: Harry M. <hj...@ta...> - 2005-11-22 00:33:23
|
Like a recent poster here on the list, I cannot get psrun to work. I'm running Kubuntu on a dual opteron, have patched the kernel (2.6.11) for both oprofile & papi and all PAPI tests pass. All the perfsuite tests pass as well (except the thread tests, which I'm not concerned about just now). Both PAPI and perfsuite libs have been installed in the /usr/local/lib tree and ldconfig -v finds them appropriately The problem comes when trying to run psrun on anything except itself. As a user, I get: $ psrun ls psrun fatal error: error reported by performance software layer And as root, I get: $ sudo psrun ls psrun fatal error: hardware event not available Any suggestions? -- Cheers, Harry Harry J Mangalam - 949 856 2847 (vox; email for fax) - hj...@ta... <<plain text preferred>> |
From: Rick K. <rk...@nc...> - 2005-11-10 13:24:20
|
Giuseppe, Sorry to hear you are experiencing problems but hopefully they are nothing too serious. Here is some feedback: > 1. I am using PerfSuite 0.6.1 on double processor Intel Pentium III, OS > RedHat/Linux 7.1, kernel 2.4.20-18.9 whit patch perfctr 2.6.0. I tried to > install PAPI but no one seems to be compatible with may OS. Do you have a > solution for me? This is a problem best directed to the PAPI mailing list, but I think you already know since I see that you sent a mail to the PAPI team as well. I think you'll get good advice from that source. For anyone on this list who is not aware of the PAPI lists, there is an archive of postings that can be very helpful in seeing about problems and questions regarding PAPI here: http://www.ptools.org/archive/perfapi/maillist.html > 2. I tried to use psrun because the INSTALL file says that it is possible to use > it without PAPI. I used it in the example matvec. I changed the compiler in > Makefile.matvec because I have just g77 and not ifc. > In my prompt I digit the following line > > psrun matvec-r4 > > and the answer is > > matvec-r4: error while loading shared libraries: libpsrun_r.so: cannot open > shared object file: No such file or directory > > What is happening? Thank you in advance. Giuseppe Grieco. This usually means that the runtime linker cannot find shared libraries that it is looking for, in this case a PerfSuite shared library called "libpsrun_r.so". On Linux, the environment variable LD_LIBRARY_PATH is what's used to provide additional directories to search (see the man page for ld.so). PerfSuite includes two convenience scripts that are meant to set up environment variables like LD_LIBRARY_PATH properly for your installation based on the configure-time "--prefix" option. There is one script for Bourne (bash) like shells called psenv.sh, and another for C (tcsh) like shells called psenv.csh. Choose the one according to the shell you use and execute "source FILENAME" to incorporate the settings. Another point to make is that this assumes that you have actually installed PerfSuite after building it by executing "make install". It's not easy to get things set up properly from within the build directories. Finally, please keep in mind that without hardware counter support such as through PAPI, you will only get time-based (gprof-like) profiling from psrun and libpshwpc. Hope this helps and good luck, Rick |
From: <gg9...@un...> - 2005-11-10 11:07:21
|
Hi, my name is Giuseppe I have some problems with PerfSuite: 1. I am using PerfSuite 0.6.1 on double processor Intel Pentium III, OS RedHat/Linux 7.1, kernel 2.4.20-18.9 whit patch perfctr 2.6.0. I tried to install PAPI but no one seems to be compatible with may OS. Do you have a solution for me? 2. I tried to use psrun because the INSTALL file says that it is possible to use it without PAPI. I used it in the example matvec. I changed the compiler in Makefile.matvec because I have just g77 and not ifc. In my prompt I digit the following line psrun matvec-r4 and the answer is matvec-r4: error while loading shared libraries: libpsrun_r.so: cannot open shared object file: No such file or directory What is happening? Thank you in advance. Giuseppe Grieco. |
From: Rick K. <rk...@nc...> - 2005-10-14 21:36:14
|
Frederique, > I am trying to use Perfsuite to profile a multi-threaded program on a=20 > quadripro. I am particularly interested in knowing how much time a=20 > thread is spending on each processor. I believe that perfsuite can do=20 > that but I can't install PAPI (I am not root on the quadripro and so I= =20 > can't path the kernel with perfctr). You're right in thinking that PerfSuite (psrun and libpshwpc) should be=20 able to do this, however you are also right in thinking that it requires=20 some other mechanism for sampling than the basic support that is availabl= e=20 in the absence of access to the performance counters. I am guessing that= =20 you are on an x86 system since you mention perfctr. PerfSuite (version 0.6.2) can access performance counters using either=20 PAPI or Perfmon, the latter being relevant to Itanium (IA-64) systems. So if you're on an Itanium system, you don't need PAPI, you can get by=20 with using Perfmon directly. On x86, though, you need the kernel patched= =20 with perfctr and PAPI installed (I am guessing you know this, but just=20 clarifying). Without any counter support, you can only do profiling and that only in=20 one of two ways: either by the profil() routine available in glibc (this=20 would be the default in such an installation, using a configuration file=20 that is called "profil.xml"), or through interval timers and interrupt handlers that PerfSuite installs. The itimer approach is more flexible and can be selected using a sample XML configuration file called=20 "itimer.xml" that should be installed in PREFIX/share/perfsuite/xml/pshwp= c These two methods use signals to trigger the interrupt, though, and=20 signals are a process-wide mechanism, and so they are really not useful i= n=20 the case of a multithreaded application (at least not in the present=20 versions of PerfSuite). The counter-based techniques interrupt on counte= r=20 overflow, and that can be kept isolated within a particular thread since=20 the underlying drivers support this. I am guessing that this is the major problem you are running into, and=20 unfortunately I don't have a solution apart from having to patch your=20 kernel. The other issue (not getting file/line information) I think might be=20 related to not compiling the application with symbols enabled (-g option). Finally, about resource collection: that is done, when using the -r optio= n=20 to psrun, for the main thread only, and does not track time spent on a=20 per-CPU basis. So I am afraid that again, it is not what you might=20 have been hoping for. Sorry for the bad news - please let me know if I have misunderstood the=20 question.... Rick >=20 > I then installed perfsuite without PAPI. And I am getting some results=20 > running: >=20 > $ psrun -r -p myprogram >=20 > The resulting files are for example myprogram.*.19416.mymachine.xml and= =20 > also myprogram.19416.mymachine.res.xml. >=20 > When I watch the results with psprocess >=20 > $ psprocess -e myprogram myprogram.*.19416.mymachine.xml >=20 > I get this: >=20 >=20 > File Summary > -----------------------------------------------------------------------= ---------Samples=20 > Self % Total % File >=20 > 1519 100.00% 100.00% ?? >=20 > Function Summary > -----------------------------------------------------------------------= ---------Samples=20 > Self % Total % Function >=20 > 1519 100.00% 100.00% ?? >=20 > Function:File:Line Summary > -----------------------------------------------------------------------= ---------Samples=20 > Self % Total % Function:File:Line >=20 > 1519 100.00% 100.00% ??:??:0 >=20 > So there is no detail. >=20 > And when I watched the resource utilization, I get this: >=20 > $ psprocess myprogram.19416.mymachine.res.xml > CPU time (user, seconds) : 3.69 > CPU time (system, seconds) : 0.10 >=20 > but there is no distinction between CPUs and no distinction between thr= eads. >=20 > Is there any way for me to get more information using perfsuite without= =20 > PAPI than what I already have now? Especially with the names of files,=20 > functions and the function lines? >=20 > Is there a way to get the time spent by each thread on each processor? >=20 > Thank you, > Fr=E9d=E9rique. >=20 |
From: Frederique Silber-C. <fre...@in...> - 2005-10-14 14:44:32
|
Hello, I am trying to use Perfsuite to profile a multi-threaded program on a=20 quadripro. I am particularly interested in knowing how much time a=20 thread is spending on each processor. I believe that perfsuite can do=20 that but I can't install PAPI (I am not root on the quadripro and so I=20 can't path the kernel with perfctr). I then installed perfsuite without PAPI. And I am getting some results=20 running: $ psrun -r -p myprogram The resulting files are for example myprogram.*.19416.mymachine.xml and=20 also myprogram.19416.mymachine.res.xml. When I watch the results with psprocess $ psprocess -e myprogram myprogram.*.19416.mymachine.xml I get this: File Summary -------------------------------------------------------------------------= -------Samples=20 Self % Total % File 1519 100.00% 100.00% ?? Function Summary -------------------------------------------------------------------------= -------Samples=20 Self % Total % Function 1519 100.00% 100.00% ?? Function:File:Line Summary -------------------------------------------------------------------------= -------Samples=20 Self % Total % Function:File:Line 1519 100.00% 100.00% ??:??:0 So there is no detail. And when I watched the resource utilization, I get this: $ psprocess myprogram.19416.mymachine.res.xml CPU time (user, seconds) : 3.69 CPU time (system, seconds) : 0.10 but there is no distinction between CPUs and no distinction between threa= ds. Is there any way for me to get more information using perfsuite without=20 PAPI than what I already have now? Especially with the names of files,=20 functions and the function lines? Is there a way to get the time spent by each thread on each processor? Thank you, Fr=E9d=E9rique. --=20 Fr=E9d=E9rique Silber-Chaussumier T=E9l: +33(0)160764565 D=E9partement INFormatique - =C9quipe Parall=E9lisme INT - 9 rue C. Fourier 91011 Evry - France=09 |
From: Rick K. <rk...@nc...> - 2005-07-25 00:04:44
|
The paper "PerfSuite: An Accessible, Open Source, Performance Analysis Environment for Linux", presented at the 6th International Conference on Linux Clusters (LCI-2005) in April 2005, is now available online. This overview paper describes the motivation, implementation, and design of PerfSuite's libraries and tools. http://perfsuite.ncsa.uiuc.edu/publications/LCI-2005.pdf This is the first formal technical paper about the software and gives information about internals and organization that may be of interest to anyone who wonders how it works. Rick |
From: Rick K. <rk...@nc...> - 2005-07-24 20:21:16
|
Alex (and others), Here's a followup on your question below regarding using PerfSuite with 32-bit binaries on AMD64. In general, it seems that it won't be too difficult to incorporate this in an upcoming release although the current versions won't build cleanly as-is and will have a few adjustments made to deal with things better. As far as I can tell, there isn't a standard for filesystem names for 32- or 64-bit libraries, so it'll be the choice of the person building it ("--libdir=" configure-time option). I'm working on RHEL4 (Nahant Update 1), Opteron 248, and currently have run into an issue that I'm hoping you or others on this list might be able to offer a suggestion/workaround. Specifically, linking a program compiled for 32-bit fails in finding the Expat library (-lexpat, which is actually present in both of /usr/lib and /usr/lib64). It seems to me that the linker search path isn't what it should be, even though -m32 is on the compile/link line. This, in turn, is messing up a creation of the "libpshwpc" shared library which is where Expat is used in PerfSuite. What I'm after are any suggestions that would successfully compile and link the following program as a 32-bit app on AMD64. Once this gets solved, things should be on their way. If there isn't a clean way to fix it, I think it'll still be possible to have 32-bit support but would require hand-editing automake-generated makefiles, which is naturally not too pleasant... Thanks in advance for any suggestions! Rick Error output from the link is: # gcc -m32 -o expattest expattest.c -lexpat /usr/bin/ld: skipping incompatible /usr/lib64/libexpat.so when searching for -lexpat /usr/bin/ld: skipping incompatible /usr/lib64/libexpat.a when searching for -lexpat /usr/bin/ld: cannot find -lexpat collect2: ld returned 1 exit status Explicitly adding -L/usr/lib or setting LDEMULATION don't seem to do the trick for me. The only thing I've found that works is to add /usr/lib/libexpat.so.0 on the link line instead of -lexpat :( ----------------------------- #include <stdlib.h> #include <stdio.h> #include <expat.h> main(int argc, char **argv) { XML_Parser p; p = XML_ParserCreate(NULL); if ( ! p ) { fputs("Error in creating parser\n", stderr); exit(1); } exit(0); } On Mon, 18 Jul 2005, Alex Mericas wrote: > I am running Suse on an Athlon64. I can use psrun without problems on binaries compiled for 64bit, but if I try to run 32bit binaries psrun cannot find its runtime library. I'm guessing psrun would need both a 32bit and a 64bit library to work this way. Is this possible? Do you have plans to implement? Thanks! > |