You can subscribe to this list here.
| 2002 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
(122) |
Nov
(152) |
Dec
(69) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2003 |
Jan
(6) |
Feb
(25) |
Mar
(73) |
Apr
(82) |
May
(24) |
Jun
(25) |
Jul
(10) |
Aug
(11) |
Sep
(10) |
Oct
(54) |
Nov
(203) |
Dec
(182) |
| 2004 |
Jan
(307) |
Feb
(305) |
Mar
(430) |
Apr
(312) |
May
(187) |
Jun
(342) |
Jul
(487) |
Aug
(637) |
Sep
(336) |
Oct
(373) |
Nov
(441) |
Dec
(210) |
| 2005 |
Jan
(385) |
Feb
(480) |
Mar
(636) |
Apr
(544) |
May
(679) |
Jun
(625) |
Jul
(810) |
Aug
(838) |
Sep
(634) |
Oct
(521) |
Nov
(965) |
Dec
(543) |
| 2006 |
Jan
(494) |
Feb
(431) |
Mar
(546) |
Apr
(411) |
May
(406) |
Jun
(322) |
Jul
(256) |
Aug
(401) |
Sep
(345) |
Oct
(542) |
Nov
(308) |
Dec
(481) |
| 2007 |
Jan
(427) |
Feb
(326) |
Mar
(367) |
Apr
(255) |
May
(244) |
Jun
(204) |
Jul
(223) |
Aug
(231) |
Sep
(354) |
Oct
(374) |
Nov
(497) |
Dec
(362) |
| 2008 |
Jan
(322) |
Feb
(482) |
Mar
(658) |
Apr
(422) |
May
(476) |
Jun
(396) |
Jul
(455) |
Aug
(267) |
Sep
(280) |
Oct
(253) |
Nov
(232) |
Dec
(304) |
| 2009 |
Jan
(486) |
Feb
(470) |
Mar
(458) |
Apr
(423) |
May
(696) |
Jun
(461) |
Jul
(551) |
Aug
(575) |
Sep
(134) |
Oct
(110) |
Nov
(157) |
Dec
(102) |
| 2010 |
Jan
(226) |
Feb
(86) |
Mar
(147) |
Apr
(117) |
May
(107) |
Jun
(203) |
Jul
(193) |
Aug
(238) |
Sep
(300) |
Oct
(246) |
Nov
(23) |
Dec
(75) |
| 2011 |
Jan
(133) |
Feb
(195) |
Mar
(315) |
Apr
(200) |
May
(267) |
Jun
(293) |
Jul
(353) |
Aug
(237) |
Sep
(278) |
Oct
(611) |
Nov
(274) |
Dec
(260) |
| 2012 |
Jan
(303) |
Feb
(391) |
Mar
(417) |
Apr
(441) |
May
(488) |
Jun
(655) |
Jul
(590) |
Aug
(610) |
Sep
(526) |
Oct
(478) |
Nov
(359) |
Dec
(372) |
| 2013 |
Jan
(467) |
Feb
(226) |
Mar
(391) |
Apr
(281) |
May
(299) |
Jun
(252) |
Jul
(311) |
Aug
(352) |
Sep
(481) |
Oct
(571) |
Nov
(222) |
Dec
(231) |
| 2014 |
Jan
(185) |
Feb
(329) |
Mar
(245) |
Apr
(238) |
May
(281) |
Jun
(399) |
Jul
(382) |
Aug
(500) |
Sep
(579) |
Oct
(435) |
Nov
(487) |
Dec
(256) |
| 2015 |
Jan
(338) |
Feb
(357) |
Mar
(330) |
Apr
(294) |
May
(191) |
Jun
(108) |
Jul
(142) |
Aug
(261) |
Sep
(190) |
Oct
(54) |
Nov
(83) |
Dec
(22) |
| 2016 |
Jan
(49) |
Feb
(89) |
Mar
(33) |
Apr
(50) |
May
(27) |
Jun
(34) |
Jul
(53) |
Aug
(53) |
Sep
(98) |
Oct
(206) |
Nov
(93) |
Dec
(53) |
| 2017 |
Jan
(65) |
Feb
(82) |
Mar
(102) |
Apr
(86) |
May
(187) |
Jun
(67) |
Jul
(23) |
Aug
(93) |
Sep
(65) |
Oct
(45) |
Nov
(35) |
Dec
(17) |
| 2018 |
Jan
(26) |
Feb
(35) |
Mar
(38) |
Apr
(32) |
May
(8) |
Jun
(43) |
Jul
(27) |
Aug
(30) |
Sep
(43) |
Oct
(42) |
Nov
(38) |
Dec
(67) |
| 2019 |
Jan
(32) |
Feb
(37) |
Mar
(53) |
Apr
(64) |
May
(49) |
Jun
(18) |
Jul
(14) |
Aug
(53) |
Sep
(25) |
Oct
(30) |
Nov
(49) |
Dec
(31) |
| 2020 |
Jan
(87) |
Feb
(45) |
Mar
(37) |
Apr
(51) |
May
(99) |
Jun
(36) |
Jul
(11) |
Aug
(14) |
Sep
(20) |
Oct
(24) |
Nov
(40) |
Dec
(23) |
| 2021 |
Jan
(14) |
Feb
(53) |
Mar
(85) |
Apr
(15) |
May
(19) |
Jun
(3) |
Jul
(14) |
Aug
(1) |
Sep
(57) |
Oct
(73) |
Nov
(56) |
Dec
(22) |
| 2022 |
Jan
(3) |
Feb
(22) |
Mar
(6) |
Apr
(55) |
May
(46) |
Jun
(39) |
Jul
(15) |
Aug
(9) |
Sep
(11) |
Oct
(34) |
Nov
(20) |
Dec
(36) |
| 2023 |
Jan
(79) |
Feb
(41) |
Mar
(99) |
Apr
(169) |
May
(48) |
Jun
(16) |
Jul
(16) |
Aug
(57) |
Sep
(19) |
Oct
|
Nov
|
Dec
|
| S | M | T | W | T | F | S |
|---|---|---|---|---|---|---|
|
|
1
(20) |
2
(10) |
3
(18) |
4
(10) |
5
(16) |
6
(8) |
|
7
|
8
(17) |
9
(22) |
10
(10) |
11
(9) |
12
(21) |
13
(15) |
|
14
(10) |
15
(11) |
16
(9) |
17
(13) |
18
(9) |
19
(11) |
20
(11) |
|
21
(23) |
22
(20) |
23
(10) |
24
(11) |
25
(20) |
26
(20) |
27
(21) |
|
28
(8) |
29
(7) |
30
(7) |
31
(9) |
|
|
|
|
From: Julian S. <js...@ac...> - 2006-05-01 01:42:59
|
> This explains the huge memory requirements of self-hosting > with outer callgrind. Using the new option should get rid of this. Excellent. > Should I add a tip to use "--pop-on-jump" with callgrind in the > self-hosting section of README_DEVELOPERS? Yes. > I will not document it otherwise, because it makes callgrind quite > unstable (something to investigate). Ok. If --pop-on-jump is not used, then callgrind's stability is unchanged, right? > --- m_dispatch/dispatch-x86-linux.S (Revision 5868) > +++ m_dispatch/dispatch-x86-linux.S (Arbeitskopie) > @@ -51,6 +51,7 @@ > */ > .text > .globl VG_(run_innerloop) > +.type VG_(run_innerloop), @function > VG_(run_innerloop): > /* 4(%esp) holds guest_state */ > /* 8(%esp) holds do_profiling */ > @@ -251,8 +252,8 @@ > popl %ecx > popl %ebx > ret > +.size VG_(run_innerloop), .-VG_(run_innerloop) Sounds good. Please commit it. J |
|
From: <sv...@va...> - 2006-05-01 01:38:35
|
Author: weidendo
Date: 2006-05-01 02:38:32 +0100 (Mon, 01 May 2006)
New Revision: 5870
Log:
Callgrind: Fix for callgrind_control
Modified:
trunk/callgrind/callgrind_control.in
Modified: trunk/callgrind/callgrind_control.in
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/callgrind/callgrind_control.in 2006-05-01 00:55:54 UTC (rev 586=
9)
+++ trunk/callgrind/callgrind_control.in 2006-05-01 01:38:32 UTC (rev 587=
0)
@@ -54,7 +54,7 @@
close INFO;
=20
if ($mversion{$pid} > 1) {
- print " $pid: Unsupported command interface (version $mversion) ?!=
\n\n";
+ print " PID $pid: Unsupported command interface (version $mversion=
{$pid}) ?!\n\n";
next;
}
=20
|
|
From: Nicholas N. <nj...@cs...> - 2006-05-01 01:29:36
|
On Mon, 1 May 2006, Josef Weidendorfer wrote: > Should I add a tip to use "--pop-on-jump" with callgrind in the > self-hosting section of README_DEVELOPERS? Yes! Thanks. Nick |
|
From: <js...@ac...> - 2006-05-01 01:25:53
|
Nightly build on phoenix ( SuSE 10.0 ) started at 2006-05-01 03:30:01 BST Checking out vex source tree ... done Building vex ... done Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 234 tests, 6 stderr failures, 0 stdout failures, 0 posttest failures == memcheck/tests/leak-tree (stderr) memcheck/tests/stack_switch (stderr) memcheck/tests/x86/scalar (stderr) memcheck/tests/x86/scalar_supp (stderr) none/tests/x86/faultstatus (stderr) none/tests/x86/int (stderr) |
|
From: Josef W. <Jos...@gm...> - 2006-05-01 01:17:14
|
On Monday 01 May 2006 02:55, sv...@va... wrote:
> Callgrind: Improve self-hosting with outer callgrind tool
> ...
> The default behaviour is _bad_ for using callgrind with
> self-hosting. Valgrinds inner loop VG_(run_innerloop)
> jumps to generated code, and this code jumps back to
> the inner loop. Thus, every executed BB adds 2 calls
> to an ever increasing shadow call stack, leading to
> memory consumption increasing with runtime :-(
This explains the huge memory requirements of self-hosting
with outer callgrind. Using the new option should get rid of this.
Should I add a tip to use "--pop-on-jump" with callgrind in the
self-hosting section of README_DEVELOPERS?
I will not document it otherwise, because it makes callgrind quite
unstable (something to investigate).
Note that this does not change the embarrasing slow loading time
of resulting profile data files with KCachegrind, which currently
has time complexity quadratic to the maximum number of callers and
callees of a function (to be fixed with KCachegrind in KDE 3.5.3).
"run_thread_for_a_while" will have the same number of callees as
there are instrumented BBs. However, such call graphs are quite
unusual...
I noted that a lot of Valgrinds assembler functions like
VG_(run_innerloop) do not show up as function symbols with
self-hosting. This is because of missing ".type ..., @function" and
.size directives. I think this should be fixed. Attached
is such a fix for the x86 version of VG_(run_innerloop).
Josef
--- m_dispatch/dispatch-x86-linux.S (Revision 5868)
+++ m_dispatch/dispatch-x86-linux.S (Arbeitskopie)
@@ -51,6 +51,7 @@
*/
.text
.globl VG_(run_innerloop)
+.type VG_(run_innerloop), @function
VG_(run_innerloop):
/* 4(%esp) holds guest_state */
/* 8(%esp) holds do_profiling */
@@ -251,8 +252,8 @@
popl %ecx
popl %ebx
ret
+.size VG_(run_innerloop), .-VG_(run_innerloop)
|
|
From: <sv...@va...> - 2006-05-01 00:56:04
|
Author: weidendo
Date: 2006-05-01 01:55:54 +0100 (Mon, 01 May 2006)
New Revision: 5869
Log:
Callgrind: Improve self-hosting with outer callgrind tool
This adds an option to change the default handling of jumps
between functions. Usually, a jump between functions is
interpreted as call, because such jumps are typically
generated by compilers on tail recursion optimization, and
we want to present this as call to the user. Thus, such
a jump pushes a call onto callgrinds shadow stack.
The option "--pop-on-jump" changes this to pop+push the
shadow callstack: then, a jump between functions is seen
as a return to the caller and a new call.
The default behaviour is _bad_ for using callgrind with
self-hosting. Valgrinds inner loop VG_(run_innerloop)
jumps to generated code, and this code jumps back to
the inner loop. Thus, every executed BB adds 2 calls
to an ever increasing shadow call stack, leading to
memory consumption increasing with runtime :-(
So: For self-hosting valgrind with an outer callgrind,
always use option "--pop-on-jump" for the outer callgrind.=20
Modified:
trunk/callgrind/clo.c
trunk/callgrind/fn.c
trunk/callgrind/global.h
Modified: trunk/callgrind/clo.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/callgrind/clo.c 2006-04-29 18:03:14 UTC (rev 5868)
+++ trunk/callgrind/clo.c 2006-05-01 00:55:54 UTC (rev 5869)
@@ -527,7 +527,10 @@
else if (0 =3D=3D VG_(strncmp)(arg, "--separate-recs=3D", 16))
CLG_(clo).separate_recursions =3D (Int)VG_(atoll)(&arg[16]);
=20
- /* workaround to find runtime_resolve (needs special handling) */
+ /* change handling of a jump between functions to ret+call */
+ else if (0 =3D=3D VG_(strcmp)(arg, "--pop-on-jump")) {
+ CLG_(clo).pop_on_jump =3D True;
+ }
else if (0 =3D=3D VG_(strncmp)(arg, "--pop-on-jump=3D", 14)) {
fn_config* fnc =3D get_fnc(arg+14);
fnc->pop_on_jump =3D CONFIG_TRUE;
@@ -758,6 +761,9 @@
CLG_(clo).instrument_atstart =3D True;
CLG_(clo).simulate_cache =3D False;
=20
+ /* Call graph */
+ CLG_(clo).pop_on_jump =3D False;
+
#if CLG_ENABLE_DEBUG
CLG_(clo).verbose =3D 0;
CLG_(clo).verbose_start =3D 0;
Modified: trunk/callgrind/fn.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/callgrind/fn.c 2006-04-29 18:03:14 UTC (rev 5868)
+++ trunk/callgrind/fn.c 2006-05-01 00:55:54 UTC (rev 5869)
@@ -295,7 +295,7 @@
new->zero_before =3D False;
new->toggle_collect =3D False;
new->skip =3D False;
- new->pop_on_jump =3D False;
+ new->pop_on_jump =3D CLG_(clo).pop_on_jump;
new->is_malloc =3D False;
new->is_realloc =3D False;
new->is_free =3D False;
Modified: trunk/callgrind/global.h
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/callgrind/global.h 2006-04-29 18:03:14 UTC (rev 5868)
+++ trunk/callgrind/global.h 2006-05-01 00:55:54 UTC (rev 5869)
@@ -89,6 +89,9 @@
Bool instrument_atstart; /* Instrument at start? */
Bool simulate_cache; /* Call into cache simulator ? */
=20
+ /* Call graph generation */
+ Bool pop_on_jump; /* Handle a jump between functions as ret+call=
*/
+
#if CLG_ENABLE_DEBUG
Int verbose;
ULong verbose_start;
|