Calcul du temps en micro seconde au lieu de milli seconde (getTime) en Javascrip

Signaler
Messages postés
15
Date d'inscription
jeudi 6 novembre 2008
Statut
Membre
Dernière intervention
16 novembre 2012
-
Messages postés
15
Date d'inscription
jeudi 6 novembre 2008
Statut
Membre
Dernière intervention
16 novembre 2012
-
Bonjour tout le monde.

Je suis en train de développer sous Ubuntu une petite application web de calcul de remboursement de prêt dans différents langages de programmation (C, Java, PHP, Basic QB64 et bien entendu en Javascript côté client et côté serveur) et j'ai besoin de déterminer qu'elles sont les différences de temps d'exécution du calcul et de l'affichage de cette application suivant le langage utilisé.

Comme le calcul n'est pas très compliqué, j'ai besoin de mesurer ce temps en micro secondes (comme cela est possible avec C, Java, PHP et QB64) pour afficher ce temps exprimé en milli secondes mais avec 2 décimales.

Malheureusement, la fonction "getTime()" ne retourne le temps qu'en milli secondes et non pas en micro secondes.

Ce qui fait que j'ai très souvent un temps d'exécution de "0" et de temps en temps un résultat de "1" alors qu'il est par exemple de "0,03" en C, de "0,45" en PHP, de "0.50" en Basic et (le plus lent de tous ) de "4.80" en Java.

Quelqu'un sait-il comment obtenir cette mesure en micro secondes éventuellement par le biais d'une librairie externe ?

Merci d'avance de votre aide.

2 réponses

Messages postés
130
Date d'inscription
lundi 11 janvier 2010
Statut
Membre
Dernière intervention
7 juin 2013

Bonjour,

Je ne suis pas sûr que le fait d'utiliser javascript pour faire ce genre de calcul ne soit très judicieux.

Je m'explique : avec php, java, c.... ces langages sont compilés et exécutés sur des serveurs (machines puissante). Tandis que le javascript est exécuté sur le poste client (machine beaucoup moins puissante). Donc je pense que tu auras des temps différents en fonciton de la machine de l'utilisateur, en fonction de ce qu'il a dessus (ressources utilisées) et en fonction de ce qu'il en fait.

Tout ceci n'est que théorique, d'autant plus que je ne pense que ce soit possible de calculer en micro secondes avec javascript (à vérifier).

Les résultats obtenu avec le c, php et basic ne te conviennent-ils pas ?
Messages postés
15
Date d'inscription
jeudi 6 novembre 2008
Statut
Membre
Dernière intervention
16 novembre 2012

Bonjour,

Merci de votre réponse.

Cependant, j'ai du mal exprimer les raisons de mon besoin.

Donc voici le contexte :

J'ai une page HTML qui, à la demande de l'utilisateur qui précise dans un formulaire a) le montant emprunté, b) le taux du prêt et c) le nombre d'années du prêt demandé, lance en AJAX une petite application de calcul de remboursement de prêt qui affiche le tableau de remboursement (mois par mois et année par année).

Ce calcul peut être exécuté au choix de l'utilisateur via une option d'une liste déroulante du formulaire, soit en C, soit en Java, soit en PHP ou enfin soit en Javascript (et par la suite avec d'autres langages, compilés ou non).

Lorsque le résultat s'affiche, j'affiche aussi le temps pris par le serveur (ou par le client si l'option choisie est le Javascript) pour faire le calcul et générer la page des résultats.

Je prévois aussi de faire cette application en Javascript côté serveur (grâce à NodeJS), mais aussi en Lua, en Go, en Python, et dans d'autres langages, compilés ou non.

Le but de cet exercice est double :

1 - Comparer (évidemment sur la même machine) les performances de différents serveurs d'application web (Apache, Cherokee, Lighttpd, Monkey, Nginx et G-WAN).

2 - Et pour chaque serveur d'application web, comparer les performances des différents langages côté serveur qu'ils supportent, G-WAN étant par ailleurs le seul qui supporte tous les langages suivants : ASM, ADA, C, C++, COBOL, D, Fortran, Pascal, Modula, Objective C, Objective C++, C#, Perl, PHP, Ruby, Scala et même bientôt un Basic compilé.

La possibilité d'exécution de ce calcul en Javascript côté client n'est donc qu'un simple exercice de plus dont les performances ne sont pas affectées par la puissance de la machine serveur si je lance ce calcul en "localhost".

Cela démontre au passage combien il peut être très efficace d'utiliser Javascript côté client plutôt que Java qui a des performances véritablement lamentables.

Donc, le code de cette application en Javascript côté serveur (NodeJS) ne doit pas être très différent de celui de Javascript côté client.

C'est donc pour cette raison que j'ai besoin d'obtenir un temps d'exécution en micro secondes et que je cherche une solution, éventuellement via une librairie externe.

Espérant avoir été plus précis.

Cordialement.