You can subscribe to this list here.
| 2003 |
Jan
|
Feb
|
Mar
(58) |
Apr
(261) |
May
(169) |
Jun
(214) |
Jul
(201) |
Aug
(219) |
Sep
(198) |
Oct
(203) |
Nov
(241) |
Dec
(94) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2004 |
Jan
(137) |
Feb
(149) |
Mar
(150) |
Apr
(193) |
May
(95) |
Jun
(173) |
Jul
(137) |
Aug
(236) |
Sep
(157) |
Oct
(150) |
Nov
(136) |
Dec
(90) |
| 2005 |
Jan
(139) |
Feb
(130) |
Mar
(274) |
Apr
(138) |
May
(184) |
Jun
(152) |
Jul
(261) |
Aug
(409) |
Sep
(239) |
Oct
(241) |
Nov
(260) |
Dec
(137) |
| 2006 |
Jan
(191) |
Feb
(142) |
Mar
(169) |
Apr
(75) |
May
(141) |
Jun
(169) |
Jul
(131) |
Aug
(141) |
Sep
(192) |
Oct
(176) |
Nov
(142) |
Dec
(95) |
| 2007 |
Jan
(98) |
Feb
(120) |
Mar
(93) |
Apr
(96) |
May
(95) |
Jun
(65) |
Jul
(62) |
Aug
(56) |
Sep
(53) |
Oct
(95) |
Nov
(106) |
Dec
(87) |
| 2008 |
Jan
(58) |
Feb
(149) |
Mar
(175) |
Apr
(110) |
May
(106) |
Jun
(72) |
Jul
(55) |
Aug
(89) |
Sep
(26) |
Oct
(96) |
Nov
(83) |
Dec
(93) |
| 2009 |
Jan
(97) |
Feb
(106) |
Mar
(74) |
Apr
(64) |
May
(115) |
Jun
(83) |
Jul
(137) |
Aug
(103) |
Sep
(56) |
Oct
(59) |
Nov
(61) |
Dec
(37) |
| 2010 |
Jan
(94) |
Feb
(71) |
Mar
(53) |
Apr
(105) |
May
(79) |
Jun
(111) |
Jul
(110) |
Aug
(81) |
Sep
(50) |
Oct
(82) |
Nov
(49) |
Dec
(21) |
| 2011 |
Jan
(87) |
Feb
(105) |
Mar
(108) |
Apr
(99) |
May
(91) |
Jun
(94) |
Jul
(114) |
Aug
(77) |
Sep
(58) |
Oct
(58) |
Nov
(131) |
Dec
(62) |
| 2012 |
Jan
(76) |
Feb
(93) |
Mar
(68) |
Apr
(95) |
May
(62) |
Jun
(109) |
Jul
(90) |
Aug
(87) |
Sep
(49) |
Oct
(54) |
Nov
(66) |
Dec
(84) |
| 2013 |
Jan
(67) |
Feb
(52) |
Mar
(93) |
Apr
(65) |
May
(33) |
Jun
(34) |
Jul
(52) |
Aug
(42) |
Sep
(52) |
Oct
(48) |
Nov
(66) |
Dec
(14) |
| 2014 |
Jan
(66) |
Feb
(51) |
Mar
(34) |
Apr
(47) |
May
(58) |
Jun
(27) |
Jul
(52) |
Aug
(41) |
Sep
(78) |
Oct
(30) |
Nov
(28) |
Dec
(26) |
| 2015 |
Jan
(41) |
Feb
(42) |
Mar
(20) |
Apr
(73) |
May
(31) |
Jun
(48) |
Jul
(23) |
Aug
(55) |
Sep
(36) |
Oct
(47) |
Nov
(48) |
Dec
(41) |
| 2016 |
Jan
(32) |
Feb
(34) |
Mar
(33) |
Apr
(22) |
May
(14) |
Jun
(31) |
Jul
(29) |
Aug
(41) |
Sep
(17) |
Oct
(27) |
Nov
(38) |
Dec
(28) |
| 2017 |
Jan
(28) |
Feb
(30) |
Mar
(16) |
Apr
(9) |
May
(27) |
Jun
(57) |
Jul
(28) |
Aug
(43) |
Sep
(31) |
Oct
(20) |
Nov
(24) |
Dec
(18) |
| 2018 |
Jan
(34) |
Feb
(50) |
Mar
(18) |
Apr
(26) |
May
(13) |
Jun
(31) |
Jul
(13) |
Aug
(11) |
Sep
(15) |
Oct
(12) |
Nov
(18) |
Dec
(13) |
| 2019 |
Jan
(12) |
Feb
(29) |
Mar
(51) |
Apr
(22) |
May
(13) |
Jun
(20) |
Jul
(13) |
Aug
(12) |
Sep
(21) |
Oct
(6) |
Nov
(9) |
Dec
(5) |
| 2020 |
Jan
(13) |
Feb
(5) |
Mar
(25) |
Apr
(4) |
May
(40) |
Jun
(27) |
Jul
(5) |
Aug
(17) |
Sep
(21) |
Oct
(1) |
Nov
(5) |
Dec
(15) |
| 2021 |
Jan
(28) |
Feb
(6) |
Mar
(11) |
Apr
(5) |
May
(7) |
Jun
(8) |
Jul
(5) |
Aug
(5) |
Sep
(11) |
Oct
(9) |
Nov
(10) |
Dec
(12) |
| 2022 |
Jan
(7) |
Feb
(13) |
Mar
(8) |
Apr
(7) |
May
(12) |
Jun
(27) |
Jul
(14) |
Aug
(27) |
Sep
(27) |
Oct
(17) |
Nov
(17) |
Dec
|
| 2023 |
Jan
(10) |
Feb
(18) |
Mar
(9) |
Apr
(26) |
May
|
Jun
(13) |
Jul
(18) |
Aug
(5) |
Sep
(6) |
Oct
|
Nov
|
Dec
|
| S | M | T | W | T | F | S |
|---|---|---|---|---|---|---|
|
|
|
1
(6) |
2
(16) |
3
(3) |
4
(11) |
5
(2) |
|
6
(4) |
7
(11) |
8
(4) |
9
(6) |
10
(25) |
11
(10) |
12
(1) |
|
13
(2) |
14
(6) |
15
(16) |
16
(19) |
17
(16) |
18
(5) |
19
|
|
20
(4) |
21
(5) |
22
(21) |
23
(4) |
24
(14) |
25
(3) |
26
(9) |
|
27
(3) |
28
(13) |
29
(6) |
30
(16) |
|
|
|
|
From: Julian S. <js...@ac...> - 2003-04-08 21:25:00
|
Sefer,
I tested the program you sent me (below) and it behaves
identically running on V from normal; no timing anomalies.
This is running on a 1133Mhz PIII-T (desktop) machine.
I suspect Jeremy may be right about the power management thing;
he's had a patch available for that for a while. Can you
clarify the situation re power management on your platform?
Thanks.
J
#include <pthread.h>
#include <stdio.h>
#include <unistd.h>
void *start(void *p)
{
printf("Hi!\n");
sleep(1);
printf("Here\n");
sleep(1);
return 0;
}
int main()
{
pthread_t tid;
void *p;
int i;
for ( i = 0; i < 5; ++i ) {
pthread_create(&tid, 0, start, 0);
}
pthread_join(tid, &p);
return 0;
}
On Tuesday 08 April 2003 10:12 am, Jeremy Fitzhardinge wrote:
> Quoting Sefer Tov <se...@ho...>:
> > Hi!
> >
> > I've been testing a short threaded program, and I noticed that sleep(x),
> >
> > although utilizes no cpu, it schdules poorly (the program slows down
> > almost
> > to a halt).
>
> Is your machine a laptop, or a desktop with power management enabled?
> Valgrind uses the TSC register as its timebase, and I've noticed on my
> laptop the TSC doesn't advance when the machine is idle. You can easily
> tell if this is the case: if you run a CPU-bound program at the same time,
> then the TSC advances at near full speed and the sleeps are for the right
> time.
>
> J
|
|
From: Jeremy F. <je...@go...> - 2003-04-08 10:13:01
|
Quoting Sefer Tov <se...@ho...>: > Hi! > > I've been testing a short threaded program, and I noticed that sleep(x), > > although utilizes no cpu, it schdules poorly (the program slows down > almost > to a halt). Is your machine a laptop, or a desktop with power management enabled? Valgrind uses the TSC register as its timebase, and I've noticed on my laptop the TSC doesn't advance when the machine is idle. You can easily tell if this is the case: if you run a CPU-bound program at the same time, then the TSC advances at near full speed and the sleeps are for the right time. J |
|
From: Sefer T. <se...@ho...> - 2003-04-08 07:54:51
|
Hi!
I've been testing a short threaded program, and I noticed that sleep(x),
although utilizes no cpu, it schdules poorly (the program slows down almost
to a halt).
This is a simple threaded queue handler program, which sleeps 2 sec. between
each update to the queue, however, after 2-3 such updates, the sleep seems
to triple (or worse) waiting often 10 seconds or more (while being
completely idle).
This happens to me on Mandrake 9.1 on i686 running valgrind both 1.9.4 and a
recent snapshot from the CVS.
This might indicate some problem in scheduling blocking commands in general
(or sleep in particular), after all, why should a sleep(2) wait for 10
seconds (while the cpu is entirely idle).
If anyone has any ideas or can offer an explanation, I'd appreciate your
comments.
Thanks,
Sefer.
#### Makefile
all:
gcc -g -Wall -D_REENTRANT -o go *.c -lpthread
#### test.c
#include <pthread.h>
#include <unistd.h>
#include <stdio.h>
#include <string.h>
#define MAXT 4
#define MAXD 10
typedef struct
{
pthread_mutex_t my_mutex;
pthread_cond_t my_cond;
int count;
} data_t;
static data_t gdata[MAXT];
static void data_add(data_t *data)
{
pthread_mutex_lock(&data->my_mutex);
while ( data->count >= MAXD ) {
pthread_cond_wait(&data->my_cond, &data->my_mutex);
}
if ( !data->count )
pthread_cond_signal(&data->my_cond);
++data->count;
pthread_mutex_unlock(&data->my_mutex);
}
static void data_remove(data_t *data)
{
pthread_mutex_lock(&data->my_mutex);
while ( data->count == 0 ) {
pthread_cond_wait(&data->my_cond, &data->my_mutex);
}
if ( data->count >= MAXD ) pthread_cond_signal(&data->my_cond);
--data->count;
pthread_mutex_unlock(&data->my_mutex);
}
static void *thread_proc(void *ptr)
{
printf("Thread created!\n");
for ( ; ; ) {
data_remove((data_t *) ptr);
printf("Got some data.\n");
}
return NULL;
}
static void run()
{
int i, rc;
pthread_t tid;
for ( i = 0; i < MAXT; ++i ) {
pthread_mutex_init(&gdata[i].my_mutex, NULL);
pthread_cond_init(&gdata[i].my_cond, NULL);
gdata[i].count = 0;
rc = pthread_create(&tid, NULL, thread_proc, gdata + i);
}
for ( ; ; ) {
data_add(gdata + 0);
data_add(gdata + 1);
sleep(2);
}
}
int main()
{
run();
return 0;
}
_________________________________________________________________
Tired of spam? Get advanced junk mail protection with MSN 8.
http://join.msn.com/?page=features/junkmail
|
|
From: Nicholas N. <nj...@ca...> - 2003-04-08 00:11:44
|
On Tue, 18 Mar 2003, Nicholas Nethercote wrote: > I've just hacked up support for automatic suppression generation. If > everyone likes it, I will commit it to the HEAD. I just committed it along with some other changes. I hope I haven't broken anything. Please try it out. > Some notes: > - option name is --gen-suppressions=yes N |