clock() et threads
Le
JKB
Bonjour à tous,
Je cherche depuis ce matin une information que je n'arrive pas à
trouver. Pourtant, ça doit être trivial.
J'ai une fonction qui utilise getrusage() et qui n'est pas implanté
sur un système cible. Je suis en train de la remplacer par des
clock() mais j'ai un énorme doute. La doc de clock() me parle
d'estimation du temps CPU pour le programme. Dans le cas d'un
programme multithreadé, est-ce qu'on entend le temps CPU consommé
par le groupe de threads ou par le thread seul ? J'aurais tendance à
penser qu'il s'agit du groupe de thread, mais ma doc n'est vraiment
pas claire
Cordialement,
JKB
--
Si votre demande me parvient sur carte perforée, je titiouaillerai très
volontiers une réponse
=> http://grincheux.de-charybde-en-scylla.fr
Je cherche depuis ce matin une information que je n'arrive pas à
trouver. Pourtant, ça doit être trivial.
J'ai une fonction qui utilise getrusage() et qui n'est pas implanté
sur un système cible. Je suis en train de la remplacer par des
clock() mais j'ai un énorme doute. La doc de clock() me parle
d'estimation du temps CPU pour le programme. Dans le cas d'un
programme multithreadé, est-ce qu'on entend le temps CPU consommé
par le groupe de threads ou par le thread seul ? J'aurais tendance à
penser qu'il s'agit du groupe de thread, mais ma doc n'est vraiment
pas claire
Cordialement,
JKB
--
Si votre demande me parvient sur carte perforée, je titiouaillerai très
volontiers une réponse
=> http://grincheux.de-charybde-en-scylla.fr

Poser une question


Tu n'as pas clock_gettime() ? Là tu peux choisir.
Je suppose que tu veux le temps par thread, sinon il y a times()...
--
LL
Selon la page man de FreeBSD
DESCRIPTION
The clock() function determines the amount of processor time used
since the invocation of the calling process, measured in CLOCKS_PER_SECs
of a second.
ce qui dit clairement qu'il s'agit de processus et non de thread.
--
Michel TALON
Lucas Levrel
Non, je n'ai pas clock_gettime().
Non plus, je veux le temps par processus comme donné par getrusage.
Cordialement,
JKB
--
Si votre demande me parvient sur carte perforée, je titiouaillerai très
volontiers une réponse...
=> http://grincheux.de-charybde-en-scylla.fr
Michel Talon
Sous FreeBSD, peut-être. Sous les Unix que j'ai sous la main, on
parle toujours de programme (Tru64 et Linux) :
DESCRIPTION
The clock() function returns an approximation of processor time
used by the program.
Donc la question devient : est-ce toujours le temps sur un processus ?
Dans mon cas, c'est assez important puisque c'est pour un watchdog.
JKB
--
Si votre demande me parvient sur carte perforée, je titiouaillerai très
volontiers une réponse...
=> http://grincheux.de-charybde-en-scylla.fr
D'après la page de man que je vois sous linux, certains systèmes (pas
linux) incluent même le temps des enfants récupérés par wait...