[Squeak-fr] demande d'information concernant Smalltalk dans une simulation

nicolas cellier ncellier at ifrance.com
Mer 22 Mar 20:27:43 UTC 2006


Bonjour,

Comme le message est sur la liste publique, je me permet d'apporter quelques 
éléments.

J'ai déjà développé une petite interface type horizon artificiel (simplifié) 
pour de la simulation "temps réel", mais en Objectworks (ancêtre de 
VisualWorks), pas en Squeak. Toutefois, comme c'est il y a plus de 10 ans et 
que ça marchait déjà avec les machines de l'époque, je ne vois pas pourquoi 
ce serait impossible en Squeak aujourd'hui, même si les performances pures 
sont un peu en dessous.

La simulation était externe (C/Fortran/Ada mais code généré depuis Smalltalk) 
pour plusieurs raisons:
 - efficacité des calculs (Smalltalk n'est pas performant en calcul scalaire 
car chaque opération en virgule flottante crée un objet... en calcul 
vectoriel avec des primitives cela s'apparente plus à Matlab en un peu plus 
rapide)
 - éviter d'accumuler des objets non détruits à court terme (les résultats de 
simulation) et éviter ainsi les garbage collect.

En effet, le garbage collect de Visualworks se fait en plusieurs 
compartiments: dans un premier temps, seul l'espace réservé aux objets 
récemment créés est nettoyé ce qui est peu coûteux. Je suppose que la même 
chose existe en Squeak, mais là, je n'ai pas vérifié.

Donc, si il n'y a que de l'affichage, les créations devraient être limitées à 
quelques nombres flottants ou fractions et quelques objets géométriques qui 
vont mourir une fois affichés, et le code devrait tourner sans problème en 
temps réel (à l'époque, on s'était contenté de 10 Hz, mais c'était déjà assez 
fluide).

Maintenant, garantir qu'il n'y aura jamais de garbage collect pour passer des 
certifications, ça me parait beaucoup plus difficile... Mais pas impossible.

Je joins ce lien un peu obsolète de mon ancien employeur:
http://jpcornu.free.fr/ 

Bonne programmation

Nicolas

Le Mercredi 22 Mars 2006 17:18, Serge Stinckwich a écrit :
> Le 22 mars 06 à 16:55, Pierre SARRAIL a écrit :
> > Bonjour,
> >
> Bonjour,
>
> ...
> > - gère t'il bien le temps réel (délai entre le moment où
> > l’information est reçue par l'application et ou elle est affichée)?
>
> Je ne suis pas un spécialiste du temps réél, mais je sais que
> Smalltalk est utilisé pour certains jeux vidéos où j'imagine les
> aspects temps-réels sont importants. Après cela dépend de la version
> de Smalltalk que tu utilise. Squeak est open-source mais n'est pas
> renommé pour sa vitesse d'exécution, bien qu'il existe des projets
> comme OpenCroquet, un environnement 3D complet écrit en Squeak. Voir
> http://www.opencroquet.org/
> VisualWorks ou Dolphin sont plus rapides je pense.
>
> > - est il régulier dans ses performances (le garbage collector prend
> > un temps d'exécution non déterministe, est il paramétrable)?
>
> Je n'ai pas de réponses à cela. Je pense que quelqu'un de la liste
> pourra te répondre.
>
> > - est il bien pour faire des interfaces 2D?
>
> En Squeak, il existe une interface dite Morphique inspiré de Self,
> mais qui est assez mal foutu. Elle est en cours de reconception dans
> le cadre du projet Tweak : http://tweak.impara.de/ En VW, il y a des
> interfaces classiques qui s'inspire des widgets natives de la machine.
>



More information about the Squeak-fr mailing list