[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