le 04-24-2015 03:55 AM
Je vais faire l'effort de recoder mon programme et je te l'enverrai par la suite.
En général lorsque les tables sont trop importantes comment procèder?
le 04-24-2015 04:04 AM
Lorsque les tables sont imortantes, ont peut : utiliser les structures elements en place si on manipule beaucoup les elements à l'interieur; pré dimensionner ces tables afin d'eviter les redimensionnement à la volée.
Il y a aussi le faite que tu affiche a chaque tour de boucle le traitement sur l'IHM, il faudra peut etre disocier ce traitement (l'affichage) qui peut prendre du temps
le 04-24-2015 04:13 AM
L'ihm peut consommée autant de ram? je devrais stopper l'affichage de l'accélération en fonction de la fréquence en temps réel sur mon IHM ?
le 04-24-2015 04:22 AM
en temps réel ? Je pense que ca va etre dificille.
L'affichage à l'écran est quelque chose qui prend du temps.
Ce que je veux dire c'est que pour ton affichage il faudrait peut etre une boucle dédiée, autre que celle ou tu fais les aquisitions et le calcul.
Mais pas dans la meme sequence deroulé hein !
Procedes par étapes. Regardes les structure proposé par NI dans les templates. La plus simple qui permetrrait déjà d'avoir un code plus lisible est la sequential state machine. Ensuite si le coueur t'en dit tu peux regarder les machines type producteur consommateur.
le 04-24-2015 05:17 AM
Il y a une chose que je constate, ce n'est pas le nombre de points ou de N qui fait spécialement ralentir le programme, je m'explique :
Si je fais un test avec N=40, fréquency lines = 200
fréquence 10 110
accélération 0.4 0.4
Le programme tourne impeccable.
Si je fais un test avec N=40, fréquency lines = 200
fréquence 10 110
accélération 0.4 1
Le programme ram
comment se fait-ce?
le 04-24-2015 05:42 AM
Je pense avoir trouver une solution pour optimiser grandement mon programme, actuellement je génére un tableau immense en fonction de N et à chaque itération je lis la valeur qui suit. Je pense qu'il faudrait générer uniquement les points pour un allez retour et lire les données du tableau dans un sens puis dans un second sens suivant N . Cela permettrait d'avoir un tableau beaucoup plus petit et déviter de faire ramer mon programme.
le 04-24-2015 05:51 AM
Je pense qu il faut d'abord partir sur une architecture saine de programmation.
Tu vas peut etre ameliorer la performance de ton programme, mais tu ne vas pas t'ameliorer.
Je t'ai donné plein d'exemple de choses a retoucher. IL faut faire cet effort là si tu veux progresser.
le 04-24-2015 06:59 AM
J'ai une dernière question. Je souhaiterai que lorsque je démarre mon programme un booleen soit faux, lorsque j'arrive à la derniere valeur de mon tableau celui-ci soit maintenu à la condition vrai tant que je n'arrive pas a la premiere valeur de mon tableau. Une fois de retour à la premiere valeur de mon tableau je maintien ma condition à faux etc etc tout en ayant la possibilité de controler le nombre de fois que ce changement d'état va se réaliser.
Je te remercie pour le temps que tu m'as consacré et je vais écouter tes conseils à la lettre ^^ . Car je me rends bien compte que la forme de mon programme ne m'a pas aidé à résoudre ce problème.
cordialement