|
From: William M. <ma...@ot...> - 2006-09-20 18:02:49
|
I'm trying to profile a multithreaded appication using callgrind on a plain vanilla SMP linux. If I limit the stress it seems to work but under load I'm not getting any results. The following is the entire output. valgrind --tool=callgrind /bin/filter ==170== Callgrind, a call-graph generating cache profiler. ==170== Copyright (C) 2002-2006, and GNU GPL'd, by Josef Weidendorfer et al. ==170== Using LibVEX rev 1658, a library for dynamic binary translation. ==170== Copyright (C) 2004-2006, and GNU GPL'd, by OpenWorks LLP. ==170== Using valgrind-3.2.1, a dynamic binary instrumentation framework. ==170== Copyright (C) 2000-2006, and GNU GPL'd, by Julian Seward et al. ==170== For more details, rerun with: -v ==170== ==170== For interactive control, run 'callgrind_control -h'. ==173== (none) BB# 261918673 Callgrind: threads.c:273 (vgCallgrind_post_signal): Assertion '*(vgCallgrind_current_fn_stack.top) == 0' failed. ==173== at 0x38019BE2: report_and_quit (m_libcassert.c:136) ==173== by 0xDEADBEEE: ??? ==173== by 0x6415655B: ??? ==173== by 0x64156583: ??? ==173== by 0x64156633: ??? ==173== by 0x6415655B: ??? ==173== by 0x38029A61: vgPlain_do_syscall (m_syscall.c:258) ==173== by 0x64156583: ??? ==173== by 0x59: ??? ==173== by 0x64156633: ??? ==173== by 0x59: ??? sched status: running_tid=0 Note: see also the FAQ.txt in the source distribution. It contains workarounds to several common problems. If that doesn't help, please report this bug to: www.valgrind.org In the bug report, send all the above text, the valgrind version, and what Linux distro you are using. Thanks. |
|
From: Josef W. <Jos...@gm...> - 2006-09-20 18:43:29
|
On Wednesday 20 September 2006 20:02, William MacBain wrote: > I'm trying to profile a multithreaded appication using callgrind on a > plain vanilla SMP linux. > ... > Callgrind: threads.c:273 (vgCallgrind_post_signal): Assertion > '*(vgCallgrind_current_fn_stack.top) == 0' failed. This looks like a similar bug I fixed a year ago: callgrinds internal shadow stack is not in sync. with reality at the end of a signal handler... Can you please file a bug report (see valgrinds webpage for details)? What programming language/compiler/thread library are you using? It would be good if you can try to reduce your program to a small test program to be able to reproduce this bug. Otherwise it is almost impossible to find the bug. Josef |
|
From: Julian S. <js...@ac...> - 2006-09-21 00:09:19
|
Does the program work under load if you use --tool=none? What about --tool=memcheck? I remember someone reported a race to do with signals on an SMP box a while back, and so far that bug has not been fixed. So I'd like to know if this is a callgrind-specific bug or not. J On Wednesday 20 September 2006 19:02, William MacBain wrote: > I'm trying to profile a multithreaded appication using callgrind on a > plain vanilla SMP linux. > If I limit the stress it seems to work but under load I'm not getting > any results. > The following is the entire output. > > valgrind --tool=callgrind /bin/filter > ==170== Callgrind, a call-graph generating cache profiler. > ==170== Copyright (C) 2002-2006, and GNU GPL'd, by Josef Weidendorfer et > al. ==170== Using LibVEX rev 1658, a library for dynamic binary > translation. ==170== Copyright (C) 2004-2006, and GNU GPL'd, by OpenWorks > LLP. > ==170== Using valgrind-3.2.1, a dynamic binary instrumentation framework. > ==170== Copyright (C) 2000-2006, and GNU GPL'd, by Julian Seward et al. > ==170== For more details, rerun with: -v > ==170== > ==170== For interactive control, run 'callgrind_control -h'. > ==173== > (none) > BB# 261918673 > > Callgrind: threads.c:273 (vgCallgrind_post_signal): Assertion > '*(vgCallgrind_current_fn_stack.top) == 0' failed. > ==173== at 0x38019BE2: report_and_quit (m_libcassert.c:136) > ==173== by 0xDEADBEEE: ??? > ==173== by 0x6415655B: ??? > ==173== by 0x64156583: ??? > ==173== by 0x64156633: ??? > ==173== by 0x6415655B: ??? > ==173== by 0x38029A61: vgPlain_do_syscall (m_syscall.c:258) > ==173== by 0x64156583: ??? > ==173== by 0x59: ??? > ==173== by 0x64156633: ??? > ==173== by 0x59: ??? > > sched status: > running_tid=0 > > > Note: see also the FAQ.txt in the source distribution. > It contains workarounds to several common problems. > > If that doesn't help, please report this bug to: www.valgrind.org > > In the bug report, send all the above text, the valgrind > version, and what Linux distro you are using. Thanks. > > > ------------------------------------------------------------------------- > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to share > your opinions on IT & business topics through brief surveys -- and earn > cash > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > _______________________________________________ > Valgrind-users mailing list > Val...@li... > https://lists.sourceforge.net/lists/listinfo/valgrind-users |
|
From: William M. <ma...@ot...> - 2006-09-21 13:24:51
|
It seems to be callgrind specific. I've used massif and memcheck quite a bit and haven't had any problems. I was attempting to find a bottleneck by using callgrind when the problem first occurred. Julian Seward wrote: >Does the program work under load if you use --tool=none? What about >--tool=memcheck? I remember someone reported a race to do with >signals on an SMP box a while back, and so far that bug has not been >fixed. So I'd like to know if this is a callgrind-specific bug or not. > >J > >On Wednesday 20 September 2006 19:02, William MacBain wrote: > > >>I'm trying to profile a multithreaded appication using callgrind on a >>plain vanilla SMP linux. >>If I limit the stress it seems to work but under load I'm not getting >>any results. >>The following is the entire output. >> >>valgrind --tool=callgrind /bin/filter >>==170== Callgrind, a call-graph generating cache profiler. >>==170== Copyright (C) 2002-2006, and GNU GPL'd, by Josef Weidendorfer et >>al. ==170== Using LibVEX rev 1658, a library for dynamic binary >>translation. ==170== Copyright (C) 2004-2006, and GNU GPL'd, by OpenWorks >>LLP. >>==170== Using valgrind-3.2.1, a dynamic binary instrumentation framework. >>==170== Copyright (C) 2000-2006, and GNU GPL'd, by Julian Seward et al. >>==170== For more details, rerun with: -v >>==170== >>==170== For interactive control, run 'callgrind_control -h'. >>==173== >>(none) >>BB# 261918673 >> >>Callgrind: threads.c:273 (vgCallgrind_post_signal): Assertion >>'*(vgCallgrind_current_fn_stack.top) == 0' failed. >>==173== at 0x38019BE2: report_and_quit (m_libcassert.c:136) >>==173== by 0xDEADBEEE: ??? >>==173== by 0x6415655B: ??? >>==173== by 0x64156583: ??? >>==173== by 0x64156633: ??? >>==173== by 0x6415655B: ??? >>==173== by 0x38029A61: vgPlain_do_syscall (m_syscall.c:258) >>==173== by 0x64156583: ??? >>==173== by 0x59: ??? >>==173== by 0x64156633: ??? >>==173== by 0x59: ??? >> >>sched status: >> running_tid=0 >> >> >> Note: see also the FAQ.txt in the source distribution. >> It contains workarounds to several common problems. >> >> If that doesn't help, please report this bug to: www.valgrind.org >> >> In the bug report, send all the above text, the valgrind >> version, and what Linux distro you are using. Thanks. >> >> >>------------------------------------------------------------------------- >>Take Surveys. Earn Cash. Influence the Future of IT >>Join SourceForge.net's Techsay panel and you'll get the chance to share >>your opinions on IT & business topics through brief surveys -- and earn >>cash >>http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV >>_______________________________________________ >>Valgrind-users mailing list >>Val...@li... >>https://lists.sourceforge.net/lists/listinfo/valgrind-users >> >> > >------------------------------------------------------------------------- >Take Surveys. Earn Cash. Influence the Future of IT >Join SourceForge.net's Techsay panel and you'll get the chance to share your >opinions on IT & business topics through brief surveys -- and earn cash >http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV >_______________________________________________ >Valgrind-users mailing list >Val...@li... >https://lists.sourceforge.net/lists/listinfo/valgrind-users > > |