30

Godzil : Petit test sympa smile Ca montre l'apport du buffering sur un cas extrême, et on s'y attend. Si tu prends un cas plus concret, par exemple afficher 65535 fois "abcdef", l'écart se resserre ?
avatar
Un site complet sur lequel vous trouverez des programmes et des jeux pour votre calculatrice TI 89 / Titanium / 92+ / Voyage 200 : www.ti-fr.com.
Quelques idées personnelles ici.

31

65535 sans flush:
user 0.198s, sys 0.003s

avec flush:
user 3.109s, sys 0.233s

fait par ssh, bon exemple ou le flush fait perdre un temps ENORME.

32

Au contraire !

real 0m3.702s pour test2
real 0m2.747s pour test1

(bien sur il faudrait le lancer 100x et faire une moyenne pour avoir un resultat fiable) mais le buffering n'est pas la pour rien, meme sur une console "rapide"
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

33

j'ai beau répéter, c'est stable, 0.2 s sans flush et 3.1 s avec

34

Godzil (./17) :
Et attention, stdout est "touché" mais stdin, et stderr le sont aussi !
Euh ?? j'ai toujours vu que stderr n'était jamais bufferisé par défaut ? (ce qui se justifie vu que si on écrit sur stderr le programme a des chances d'être dans un état instable).
D'ailleurs c'est toujours chiant que quand tu stoppes un programme ça ne flushe pas automatiquement tous les flux (bon en même temps c'est difficile de faire autrement, si tu le stoppes tu veux qu'il s'arrête tout de suite, mais bon)
avatar
« Le bonheur, c'est une carte de bibliothèque ! » — The gostak distims the doshes.
Membrane fondatrice de la confrérie des artistes flous.
L'univers est-il un dodécaèdre de Poincaré ?
(``·\ powaaaaaaaaa ! #love#

35

OK, le buffering est légitime à distance.
Mais en local, bof bof. Les programmes qui sont ralentis par l'affichage passent le plus clair de leur temps à afficher et non pas à calculer. Ils sont sonc mal conçus ou ne sont pas fait pour être rapides de base. Bon, admettons, il existe quelques applications très spécifiques à qui ça profite. Au nom de ces quelques chieuses on a préservé un comportement contre intuitif. Il ne reste plus qu'un problème à régler : la documentation qui n'informe pas.
avatar
Un site complet sur lequel vous trouverez des programmes et des jeux pour votre calculatrice TI 89 / Titanium / 92+ / Voyage 200 : www.ti-fr.com.
Quelques idées personnelles ici.

36

Heu, un programme peut etre concu pour ne pas afficher normalement, mais qui a besoin d'afficher pour débugguer par exemple..
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

37

Toute façon, PedroM fonctionne pareil, donc c'est standard. embarrassed

38

Thi-> contacte Ulrich Drepper, c'est le mainteneur officiel de la libc. Il sera heureux d'intégrer ton amélioration de doc.

39

(sachant que ce n'est documenté dans aucune page man que je connaisse...)
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

40

Thibaut > C'est même pas juste une question d'être ralenti par l'affichage. Les entrées sorties de manière générale (i.e. sauf exception) sont bufferisées, pour des raisons de performances... Si tu redirriges la sortie vers un fichier tu auras également des performances meilleures sans utiliser fflush...
C'est pas une question de distance, c'est une question de coût général. Par exemple: Un accès disque de 4 Ko ou 4096 accès disques de 1 octet tu verras peut-être mieux la différence ? Affichage / Disque dur / Transmission à distance (réseau ou autre) c'est le même combat.
avatar
Le scénario de notre univers a été rédigée par un bataillon de singes savants. Tout s'explique enfin.
T'as un problème ? Tu veux un bonbon ?
[CrystalMPQ] C# MPQ Library/Tools - [CrystalBoy] C# GB Emulator - [Monoxide] C# OSX library - M68k Opcodes

41

Un problème avec le \n sous Windows, c'est qu'il cesse d'être interprété comme un "flush" si la sortie standard a été redirigée vers un pipe (du moins, sous une certaine version de Visual). Je l'ai appris à mes dépens et ai été obligé de rajouter des appels explicites à fflush()...

Par contre, je ne sais plus sous quelle version de Visual j'avais testé.
avatar
Maintenant j'ai la flemme de garder une signature à jour sur ce site. Je n'ai même plus ma chaîne Exec sous la main.

42

Thibaut (./28) :
Pas de problème pour ajouter cette information importante. Mais comment savoir à qui s'adresser ?

Il faut contacter les mainteneurs de la glibc (le mainteneur principal est Ulrich Drepper) à travers leur bug tracker:
http://sources.redhat.com/bugzilla/
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

43

L'utilisation du printf n'est pas plutôt historique pour des raisons de compatibilités (mais comme dit dans ce topic, aussi pour des raisons de performances). Tout comme l'est char* au lieu de unsigned char* pour un caractère en C ?
Quoiqu'il en soit il est possible de créer une pseudo console pour changer le comportement de stdout... http://rmathew.blogspot.com/2006/09/terminal-sickness.html
avatar
la Nature nous montre seulement la queue du lion. Mais je suis certain que le lion a qui elle appartient pense qu'il ne peut pas se révéler en une fois en raison de son immense taille.

- Fondateur de Ti-Gen -: http://www.tigen.org

- Membre du Groupe Orage Studio -: http://oragestudio.free.fr/

- Mon site perso -: http://tisofts.free.fr

Projets TI68K en cours:
GFA-Basic = http://www.tigen.org/gfabasic
Arkanoid.
PolySnd 3.0.

44

Bon Thibaut, c'est super normal comme comportement, on a tous eu à faire à cette surprise un jour ou l'autre. J'ai envie de dire tu viens de le découvrir, bienvenue au club. Et on avance dans la vie.
Tout ce qui passe pas par le port 80, c'est de la triche.

45

je crois qu'il a bien compris, pas la peine de lui en refiler une couche grin

46

J'ai bien compris et tu confirmes effectivement qu'on est nombreux à ne pas attendre ce comportement. CQFD.
avatar
Un site complet sur lequel vous trouverez des programmes et des jeux pour votre calculatrice TI 89 / Titanium / 92+ / Voyage 200 : www.ti-fr.com.
Quelques idées personnelles ici.

47

gol

éventuellement si c'est pour continuer en dialogue de sourds, autant laisser ce topic en paix jusqu'à ce que quelqu'un ait une contribution utile à apporter ?

merci.
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

48

Je pourrais continuer avec l'anecdote d'un copain qui refusait d'apprendre a utiliser DDD (meme si cest visuel pour le coup), il preferait faire ses printf avec \n pour debugger...

... jusqu'au jour où on a du coder un processus qui a une taille maximale de pile de 0 octet pour le projet de systeme d'exploitation. La il a du lancer DDD pour la premiere fois de sa vie.
Tout ce qui passe pas par le port 80, c'est de la triche.

49

les printfs pour debugguer sont tres bien, je connais des gens qui on codé un OS sans pouvoir utiliser de debugguer et ce pour plein de raison, et tu as pas le choix, printf sinon rien
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

50

t1, vous êtes quand même des trolls à haut débit grin

51

Bah quand on a free... on a la plus grosse.. ha non pardon, c'est pas ça le slogan wink
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

52

c'est pas loin grin

ceci dit je débugge aussi au printf (enfin, au syslog, mais spareil) grin

et vraiment en cas de grosse merdasse style segfault de derrière les fagots ou thread qui jardine chez le voisin, je sors gdb en ligne de commande, et là mes collègues habitués au débogueur de visual studio me regardent avec une horreur mélangée de respect, parce qu'ils savent pas s'en servir trivil (c'est un débogueur ce truc? elle est ou l'icone breakpoint? O_o)

53

En meme temps gdb est particulierement... mal foutu
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

54

55

Godzil (./49) :
les printfs pour debugguer sont tres bien, je connais des gens qui on codé un OS sans pouvoir utiliser de debugguer et ce pour plein de raison, et tu as pas le choix, printf sinon rien

=>
onur (./48) :
... jusqu'au jour où on a du coder un processus qui a une taille maximale de pile de 0 octet pour le projet de systeme d'exploitation. La il a du lancer DDD pour la premiere fois de sa vie.

la il ne pouvait utiliser que le debugger et pas le printf.
squalyl (./52) :
et là mes collègues habitués au débogueur de visual studio me regardent avec une horreur mélangée de respect,

LOL grin
Tout ce qui passe pas par le port 80, c'est de la triche.

56

Quel est le plus pratique entre GDB et DDD ? J'ai été contraint d'utiliser un débugguer à un moment pour un gros souci dans mon projet, j'ai choisi DDD mais j'ai trouvé ça très mal foutu.
avatar
Un site complet sur lequel vous trouverez des programmes et des jeux pour votre calculatrice TI 89 / Titanium / 92+ / Voyage 200 : www.ti-fr.com.
Quelques idées personnelles ici.

57

Ben y'en a un en ligne de commande, l'autre pas... Ça t'aide dans la résolution de cette question existentielle ?
Pour être plus exact faudrait préciser aussi que l'un des deux est un front-end pour l'autre mais ça gâcherai tout le jeu.
avatar
Le scénario de notre univers a été rédigée par un bataillon de singes savants. Tout s'explique enfin.
T'as un problème ? Tu veux un bonbon ?
[CrystalMPQ] C# MPQ Library/Tools - [CrystalBoy] C# GB Emulator - [Monoxide] C# OSX library - M68k Opcodes

58

Donc GDB n'a aucun intérêt pour qui a la possibilité de lancer DDD ?
avatar
Un site complet sur lequel vous trouverez des programmes et des jeux pour votre calculatrice TI 89 / Titanium / 92+ / Voyage 200 : www.ti-fr.com.
Quelques idées personnelles ici.

59

Si car pour utiliser DDD il faut savoir utiliser GDB
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

60

Thibaut (./56) :
Quel est le plus pratique entre GDB et DDD ?

Insight.