RE : RE : [SOS] phénomène étrange dans mon scheduler tous simple...
Romain LABBE
labbe.romain at wanadoo.fr
Mar 22 Nov 10:18:52 CET 2005
Salutc Daniel,
1000 Merci our ta reponce...
Je ne sais pas vraiement ce que c'est ce probléme de cache, Apparament
ce serait ce que David m'expliquait juste avant...
Ca ca à pas l'air facile à debbuger....arf...
> "tu dois aussi tomber dans un phénomène de contention dans ton algo.
Il doit y avoir un goulot d'étranglement quelque part qui provoque un
effondrement des perfs"
Oui j'ai peut etre trouvé ce goulot d'étranglement...
> "Peut-être que toutes tes zballs essaient d'afficher à l'écran en même
temps et finalement l'affichage se sérialise donnant la sensation de
ralentissements"
C'est exactement ca qui ce passe, soit pour la liste des zballs soit
pour l'affichage, mais en effet je n'aurrais pas pu trouver meilleur
terme que "sérialisé" c'est exactement ca qui se passe dans mon appli.
En effet toute les zballs essayent d'acceder en meme temps à
l'affichage.
> "Si tu augmentes ton timer à 100ms, est-ce que ça te permet
d'augmenter le nombre de zballs avant l'effondrement des perfs ?"
Oui, j'ai pensé aussi à faire ca, quand je voyais le peu de Timers
lancés et le nombre de threads en attente de la ressource, j'ai augmenté
les temps d'attentes des zballs et oui cela augmente la charge maximale
supportée avant éffondrement des perfs.
Précision:
J'ai oublié de précisier dans ma petite doc, que chaques Threads zball
calcul sa nouvelle position et vérifie si il y'a colision. Pour vérifier
les colisions je balaye toute la liste des zballs. (Temps fonction du nb
de zballs) Durant cette recherche je "lock" la liste avec son sémaphore.
Est-ce que le goulot d'étranglement ne serait pas cette recherche ?
Elle bouffe une grosse partie du processeurs et pendant ce temps les
autres zballs ne peuvent pas bouger.
(elle peuvent s'afficher mais si elles ont pas bougés on ne voit pas le
déplacement !)
J'ai donc l'imperssion que le probléme vient que la !
Questions:
- En fait le probleme vient du code de mon appli et pas de la facon de
voir le shedulage (enfin ca vient pas de mon OS) ?
- Quelqu'un aurai une idée pour pouvoir faire tourner par exemple 500
threads type zballs ?
- Comment puis je me débrouiller réguler le nombre de thread en attente
(timer) et en attente d'une ressource ?
Merci encore d'avoir pris le temps de me repondre...
Romain
> -----Message d'origine-----
> De : sos-bounces at the-doors.enix.org
> [mailto:sos-bounces at the-doors.enix.org] De la part de Daniel Lezcano
> Envoyé : lundi 21 novembre 2005 23:25
> À : SOS mailing-list
> Objet : Re: RE : [SOS] phénomène étrange dans mon scheduler
> tous simple...
>
>
> Salut Romain,
>
> >
> > je regardais ton site à propos de ton problème, tu dis que
> la chute de
> > performance est brutale si une vraie archi et progressive
> sous bochs.
>
> Laisse tomber, j'avais mal lu.
>
> En fait ton problème ressemble à un cas défavorable pour le
> cache mais
> tu dois aussi tomber dans un phénomène de contention dans ton
> algo. Il doit y avoir un goulot d'étranglement quelque part
> qui provoque un
> effondrement des perfs. Peut-être que toutes tes zballs essaient
> d'afficher à
> l'écran en même temps et finalement l'affichage se sérialise
> donnant la
> sensation de ralentissements.
>
> Si tu augmentes ton timer à 100ms, est-ce que ça te permet
> d'augmenter
> le nombre de zballs avant l'effondrement des perfs ?
>
> - Daniel
> _______________________________________________
> Sos mailing list
> Sos at the-doors.enix.org
> http://the-doors.enix.org/cgi-> bin/mailman/listinfo/sos
>
Plus d'informations sur la liste de diffusion Sos