Gambas France BETA


Pas de compte ? Incription

consommation CPU

1
AuteurMessages
jibi#1 Posté le 5/7/2013 à 09:42:50
codergambas.jimdofree.comBonjour à tous

J'ai réalisé un petit prog ici : console+BDD

Une chose que je ne comprend pas c'est que lorsque j'ouvre la Bdd de ce prog, la consommation de CPU augmente de 45% et ne redescend jamais!
A l'ouverture je veux bien mais en permanence et cela tant que la bdd est ouverte!

pourquoi?

jibi
Debian GNU/Linux 11 64-bit

linuxos#2 Posté le 5/7/2013 à 12:12:24
Un peu de sel, de poivre et la crevette sera... Bonjour,

Si ton programme est en Gambas3, tu peux utiliser le Profilage pour déterminer quel bout de code occupe cette CPU.

Sinon dans l'absolu ne ferais tu pas une recherche en permanence dans la base de données ce qui causerait cette hausse de CPU ?

Olivier
Lorsqu'on s'occupe d'informatique, il faut faire comme les canards... Paraître calme en surface et pédaler comme un forcené par en dessous.
jibi#3 Posté le 5/7/2013 à 12:16:47
codergambas.jimdofree.com
Si ton programme est en Gambas3, tu peux utiliser le Profilage pour déterminer quel bout de code occupe cette CPU


Désolé mais qu'est ce que le profilage Linuxos?

ne ferais tu pas une recherche en permanence dans la base de données ce qui causerait cette hausse de CPU


Et bien j'ouvre la bdd et c'est tout. Mais une fois ouverte le CPU tourne fort!
S'il y a un prob cela doit être dans mon code mais dans ce cas je n'ai pas trouvé ou se trouve mon erreur de codage!

En tout cas merci linuxos
je vais re regarder le code

Debian GNU/Linux 11 64-bit

linuxos#4 Posté le 5/7/2013 à 12:27:07
Un peu de sel, de poivre et la crevette sera...
Désolé mais qu'est ce que le profilage Linuxos?


Le profilage s'active dans le Menu Déboguage -> Activer le profilage.

Après activation, executes ton programme dans l'IDE le temps necessaire a mettre en evidence la hausse de CPU, puis quitte normalement ton programme.
A ce moment la, la fenetre de profilage apparait pour te montrer le détail de tous les temps d'execution de toutes les fonctions, procedure, commandes...

Cherche si par hasard tu ne ferais pas un boucle, ou une fonction qui serait executé trop souvent.
Tu peux aussi chercher si dans la fonction qui ouvre la base de données les commandes ne prennent pas trop de temps.

En esperant que cela t'aidera.
Olivier
Lorsqu'on s'occupe d'informatique, il faut faire comme les canards... Paraître calme en surface et pédaler comme un forcené par en dessous.
jibi#5 Posté le 5/7/2013 à 18:08:24
codergambas.jimdofree.comMerci

Donc j'ai regardé comme tu m'as dis avec le profilage!
effectivement cela a l'air pratique

mais question : la première ligne du profilage m'indique

boucle d’événement : 3 appels : 23890532 pour la durée : 18208444 pour propre

cela veut il dire qu'il y a 3 boucles qui tournent sans fins?
Debian GNU/Linux 11 64-bit

jibi#6 Posté le 5/7/2013 à 20:51:26
codergambas.jimdofree.comNe trouvant pas de solutions, j'ai testé avec un autre ordi

Résultat :

avec Gambas3.4-svn-#5613 sur Kubuntu Oneiric Kde4 noyau 3.0.024 : aucun problème le CPU tourne correctement

avec gambas3.4.90-svn-#5708 sur Debian kde4 noyau 3.2.0-4 : problème CPU cité dans les posts précédents

Donc si je ne me trompe pas, cela ne vient pas de mon code?

jibi
Debian GNU/Linux 11 64-bit

gambix#7 Posté le 11/7/2013 à 07:34:39
Faire simple !dans tout les cas tu as un probleme avec cette fonction ... la durée est ennooooorme
Moins de texte dans une signature c'est agrandir son espace.
jibi#8 Posté le 12/7/2013 à 11:48:06
codergambas.jimdofree.comoui tout a fait la durée est énorme
Mais cela ne le fait que avec l'ordi qui est sous Debian kde4 noyau 3.2.0-4 avec gambas3.4.90-svn-#5708

avec l'autre ordi et l'autre svn pas de soucis! donc c'est pas le code!non?
Debian GNU/Linux 11 64-bit

gambix#9 Posté le 12/7/2013 à 18:25:38
Faire simple !possible que si... il faudrait voir le code et si tu fait des appel externes
Moins de texte dans une signature c'est agrandir son espace.
Flachy Joe#10 Posté le 12/7/2013 à 23:17:05
Iguane : Il Gambas Uniquement pour Activer ses NEuronesSalut,
boucle d’événement : 3 appels : 23890532 pour la durée : 18208444 pour propre
dans tout les cas tu as un probleme avec cette fonction ... la durée est ennooooorme

La boucle d'événement, c'est la fonction en arrière plan qui gère les contrôles, elle tourne pendant toute la durée d'exécution du programme et c'est normal.

Regarde dans les autres appels celui qui prend le plus de temps.
;) Flachy Joe ;)
1