Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Charge processeur et autres mesures

8 réponses
Avatar
Dam
Bonjour,

je suis =E0 la recherche d'une solution (portable?) efficace pour
effectuer quelques mesures comme par exemple obtenir la charge du
processeur =E0 un instant t, l'occupation du IO disk =E0 un instant t,
etc.
Je n'ai actuellement pas trouv=E9 de librairie permettant de faire ces
mesures.

Merci pour votre aide!

8 réponses

Avatar
Syrion
Bonjour,

je suis à la recherche d'une solution (portable?) efficace pour
effectuer quelques mesures comme par exemple obtenir la charge du
processeur à un instant t, l'occupation du IO disk à un instant t,
etc.
Je n'ai actuellement pas trouvé de librairie permettant de faire ces
mesures.

Merci pour votre aide!

OUtil à mon avis payant pour faire de la mesure de perf en Java :

JProbe. UNe API ? alors là je sais pas...

Avatar
Dam
Oui, il me faudrait un API pour faire mon bench...!
ça seule solution que j'ai vu c'est d'utiliser JNI mais ça me parait
super complexe et je sais pas comment l'utiliser...!

Merci qd meme
Avatar
Jean-Louis Liagre
Dam wrote:
Oui, il me faudrait un API pour faire mon bench...!
ça seule solution que j'ai vu c'est d'utiliser JNI mais ça me parait
super complexe et je sais pas comment l'utiliser...!

Merci qd meme



Java (la JVM) n'a aucune notion de charge CPU ou d'occupation disque,
il s'agit forcément de statistiques propres à la machine physique.

Du code natif permet de récupérer ces infos, il peut y avoir des
méthodes plus simples, mais nécessairement non portables.

Quelle sont les plate-forme cibles ?

Avatar
TestMan
Si c'est juste un bench, alors tu trouveras facilement ton bonheur
parmis les outils de bench ;-)

Sinon, si tu as besoin de faire un appli de supervision, il te faut :
1° Externaliser les informations de ton OS en flux SNMP (via WMI sous
windows par exemple)
2° Récupérer un agent/passerelle SNMP->JMX

Ne te restera plus qu'à coder ou utiliser un console qui te permet de
superviser directement sans code comme MC4J par exemple.

A+
TM

Oui, il me faudrait un API pour faire mon bench...!
ça seule solution que j'ai vu c'est d'utiliser JNI mais ça me parait
super complexe et je sais pas comment l'utiliser...!

Merci qd meme



Avatar
Syrion

Java (la JVM) n'a aucune notion de charge CPU ou d'occupation disque,
il s'agit forcément de statistiques propres à la machine physique.

Si, des option de la JVM permettent même de tracer combien de temps est

passé dans chaque méthode. Java n'a aucune notion de CPU ou d'ocuupation
physique (ce qui va changer d'ailleurs), mais la JVM, si.
java -X donne cette info entr'autre :
java -Xprof ................. output cpu profiling data

Donc effectivement pour une API c'est pas sûr, mais en dehors de ça je
ne vois pas ce qui empêche le profiling

Avatar
Jean-Louis Liagre
Syrion wrote:

Java (la JVM) n'a aucune notion de charge CPU ou d'occupation disque,
il s'agit forcément de statistiques propres à la machine physique.

Si, des option de la JVM permettent même de tracer combien de temps est

passé dans chaque méthode. Java n'a aucune notion de CPU ou d'ocuupation
physique (ce qui va changer d'ailleurs), mais la JVM, si.
java -X donne cette info entr'autre :
java -Xprof ................. output cpu profiling data

Donc effectivement pour une API c'est pas sûr, mais en dehors de ça je
ne vois pas ce qui empêche le profiling


Ces deux notions sont différentes, les données de profiling ne répondent
pas au besoin initial, qui parle de charge processeur à un instant T,
information que ni Java, ni la JVM ne collectent.


Avatar
David
Le Thu, 26 Jan 2006 02:34:40 -0800, Dam a écrit :

Bonjour,

je suis à la recherche d'une solution (portable?) efficace pour effectuer
quelques mesures comme par exemple obtenir la charge du processeur à un
instant t, l'occupation du IO disk à un instant t, etc.
Je n'ai actuellement pas trouvé de librairie permettant de faire ces
mesures.


Sur un système type linux avec /proc, il suffit de lire de simples
fichiers, tu devrais t'en sortir.

Avatar
Syrion


Ces deux notions sont différentes, les données de profiling ne répondent
pas au besoin initial, qui parle de charge processeur à un instant T,
information que ni Java, ni la JVM ne collectent.
mmmmh.... et les outils de profiling pour programme "classique"(non Java

quoi) ?
en analysant le processus java ou javaw, on pourrait récupérer bien plus
d'infos en fait.