Aller au contenu

Messages recommandés

Posté

En ce 8 février 2009, toutes les images ont été calculées et récupérée. Rappelons que les calculs avaient été lancés le 3 aout 2008...

Il n'y a désormais plus qu'à réaliser le générique de fin sur les 16 dernières secondes et encoder le tout. Le mieux serait en h264/mp4 ou mkv...

 

Erwan

Posté

T'as regardé de ce côté là, Erwan ? http://www.divx.com/fr/technologies/h264

 

________________________________________________________

 

Et maintenant, quelques petites considérations techniques quant à l'utilisation de Terragen 0.9

 

Le projet s'est déroulé sur 6 mois, de début Août 2008 à fin Janvier 2009, avec un gros trou de mi-septembre à Janvier.

Plusieurs ordi et plusieurs générations technologiques se sont succédés pour les calculs.

Je vais maintenant les passer en revue et vous donner quelques comparaisons, qu'on ne trouve nul part chez l'éditeur de Terragen.

 

4 PC de type Desktop (en tour)

2 Pentium 4, 1.6Ghz de la génération Willamette, FSB 400, 256ko cache L2 embarquant 512mo et 768mo (respectivement) de SDRAM PC133

1 Pentium 4, 2.6Ghz de la génération Northwood, FSB 400, 512ko cache L2 embarquant 512mo de DDR PC2700 (333Mhz)

1 Pentium 4, 2.8Ghz de la génération Prescott, FSB 533, 1mo cache L2 embarquant 1Go DDRPC3200 (400Mhz)

 

2 PC portables

-1 Core 2 duo 1.73Ghz d'Erwan embarquant 1Go de DDR2

-1 Core 2 duo 2.26Ghz Centrino 2 (processeur P8400) embarquant 3Go de DDR2 PC6400 (400Mhz)

 

Quelques explications sur le fonctionnement de la mémoire des ordinateurs.

Si vous êtes déjà calés, vous pouvez passer cette partie.

 

Tout le monde connait les processeurs, sait qu'on mesure leur vitesse en Ghz (en fait il s'agit de fréquence = nombre de cycles par seconde qu'ils peuvent exécuter), et tout le monde est au fait qu'on a maintenant des processeurs multi-cores qui se comportent comme plusieurs processeurs travaillant ensemble sur la même machine.

Tout le monde connait aussi la mémoire RAM ou mémoire vive, qui est importante pour les performances de l'ordinateur, mais qui n'est pas permanente et s'efface quand l'alimentation est coupée.

 

En revanche, peu de personnes savent ce qu'on appelle la mémoire cache. Il faut savoir que si la mémoire ram est environ 1000 fois plus rapide que la mémoire morte (disque durs ou mémoire flash), mais elle reste environ 1000 fois moins rapide que les processeurs.

Or le processeur a toujours besoin d'accéder à la mémoire, pour savoir quoi faire ensuite, et accéder aux données dont il a besoin.

Imaginez que le processeur demande une information à la ram à un instant t. Cela lui prend un laps de temp n, assez court, mesuré en nano-seconde. Il doit ensuite attendre 1000 fois n pour que la mémoire ram lui réponde ! Pendant ce temps il ne peut rien faire, et votre ordinateur est ralenti de 1000 fois pendant que votre processeur se tourne les pouces.

 

Cette explication est grossière, mais devrait vous faire comprendre l'importance capitale de la mémoire cache.

La mémoire cache est une mémoire directement embarquée dans le processeur. Elle est en quantité limitée car très chère, mais aussi très rapide (presque autant que le processeur pour la plus rapide).

Cette mémoire est décomposée en plusieurs niveaux que l'on note L1, L2, L3 (L pour "level" en anglais). L1 plus rapide que L2 plus rapide que L3, mais la hiérarchie est inversée pour leur capacité.

NB, la mémoire de cache L3 n'est présente le plus souvent que dans des processeurs les plus performants, comprenez par là souvent les processeurs conçus pour les serveurs. Ne vous étonnez pas si vous n'en n'avez pas, je dirais presque que c'est normal pour le moment ;)

 

De cette façon, au lieu d'aller piocher directement dans la RAM, le processeur va juste aller voir dans le cache L1 si l'information est présente. Si elle n'y est pas, elle sera chargée de la ram dans la L2, puis dans la L1.

Comme ça, ça a l'air un peu contreproductif, mais il existe ce qu'on appelle des "prédictions de branchement" qui permettent de "prévoir" à l'avance ce que le processeur va demander comme information, et donc charger à l'avance ce qui est nécessaire. C'est un peu comme la météo, pas toujours juste, mais la plupart du temps ça marche bien.

 

Maintenant, si vous avez resisté jusque là, vous allez facilement comprendre que plus un processeur embarque de mémoire cache, plus il pourra charger à l'avance d'information, et moins il perdra de temps à attendre qu'elle arrive. Donc il sera plus performant, mais aussi plus cher :p

 

 

Performances sur le cas concret du projet Terragen

Maintenant les considérations en terme de performances. Ma logique au début du projet avait été de me dire qu'étant donné que Terragen n'utilise que le processeur pour générer les images, celui qui tourne le plus vite produira le plus d'images en un temps donné.

Or c'était complètement faux. Complètement ? Ok, pas tout à fait.

Voilà la hiérarchie que j'ai observée

 

les 2 P4 à 1.6Ghz << P4 à 2.5 Ghz < P4 à 2.8Ghz <~ Core 2 duo Erwan à 1.73Ghz << Core 2 duo à 2.26Ghz

 

Où s'est située mon erreur ? Tout d'abord j'ai émis l'hypothèse fausse que les core 2 duo ne pourraient utiliser qu'un seul des 2 cores pour faire les caculs. Effectivement, Terragen 0.9 n'a pas été développé pour tourner sur plus d'un seul core, mais il suffit de lancer 2 fois le logiciel, et paramètrant dans le gestionnaire des tâches pour que chaque instance ne s'exécute que sur un des 2 cores. Donc sur les core 2 duo, on calculait 2 images en même temps.

 

Les P4 les plus bas à 1.6Ghz n'arrivaient à générer que 5-6 images par tranche de 24h.

Les P4 de génération suivante étaient beaucoup plus performants, avec une vingtaine-trentaine d'images par jour chacun.

 

Le core 2 duo d'Erwan à 1.73Ghz arrivait en moyenne à générer une images toutes les 50 minutes environ.

Le core 2 duo à 2.26Ghz générait en moyenne une image toutes les 14 minutes, soit une centaine d'images par jour.

 

Comment expliquer de telles disparités ?

Pour les 2 premiers P4, à 1.6Ghz, il faut se rappeler que l'un avait 2 fois plus de mémoire ram que l'autre, et cela n'a engendré absolument aucune différence au niveau des performances de Terragen. On peut donc en conclure que la quantité de mémoire n'est pas déterminante, du moment que le minimum est présent.

Je ne connais pas ce minimum, mais sur mon core 2 duo, chaque instance occupait environ 300 et quelques mo de ram, donc pas grand chose au final.

 

Entre la première génération de P4 et les suivante, le FSB (front side bus, "tuyau" par lequel passent les communications entre le processeur et les autre scomposants, à commencer par la mémoire ram) étaient assez semblables.

 

C'est donc plutôt la vitesse du processeur et la vitesse (et génération suivante de ram) qui sont en cause pour l'augmentation des performances.

Entre les 2 P4 de génération 2 et 3, la petite différence de performances s'explique sans doute par la différence de 300Mhz de vitesse de processeur et un FSB légèrement plus rapide (533 au lieu de 400). La ram étant de même génération et de performance équivalente, on a déjà vu que la taille importait assez peu.

La mémoire cache a doublé par contre, mais pas les performances. Mais je n'ai aucun doute qu'elle est aussi en cause de la montée en performances

 

Entre la génération de processeur Intel Netburst (comprendre les Pentium 4) et la génération Core (core 1 et core 2 puis maintenant core i7), il y a eu des modifications profondes de l'architecture matérielle.

La consommation électrique a été réduite tandis que les performances ont été accrues et la dissipation thermique (aka la perte d'énergie dissipée en chaleur) diminuée.

 

Bien entendu, ce ne sont que les conséquences visible d'une totale refonte de l'architecture Intel.

Tout ce qu'on peut en voir, c'est que Terrragen a bien bénéficié du passage à cette nouvelle architecture Core.

 

Comment expliquer les différences entre mon portable et celui d'Erwan

Bon, je n'ai pas toutes les caractéristiques techniques de son portable, mais le mien est plus récent, et embarque logiquement plus de mémoire cache L1 et L2 que le sien, une fréquence 500Mhz plus haute sur chaque core, et 2Go de ram supplémentaire.

Est-ce que cela suffit à expliquer les différences ? A mon goût, non.

 

Autant je vois 50 raisons pouvant expliquer la différence de performances sur Terragen entre un Pentium 4 et un Core 2, autant je ne sais pas trop quoi invoquer entre deux Core 2.

Si vous avez votre avis sur la question, et que vous avez lu jusque là (bravo d'ailleurs) je serais ravi de l'entendre.

 

En conclusion

Bon si en gros cela vous a donné envie de vous mettre à Terragen, et que vous avez le choix de la (les) machine(s) effectuant les rendus, privilégiez un processeur récent avec un bon cache et une fréquence pas trop basse. La quantité de ram importe peu, mais prévoyez quand même dans les 350mo par coeur pour terragen. Préférez une mémoire de dernière génération (encore que j'ai pas testé la DDR3) plutôt qu'une très grosse mémoire d'une génération vétuste. La carte graphique est bien entendue, complètement inutile pour Terragen.

 

Voilà, je suis très heureux d'avoir participé à ce projet, qui m'a appris pas mal mine de rien. Quand on aura réussi à encoder la vidéo avec les derniers codecs, on vous en fera profiter en full-résolution.

 

La suite ?

Peut-être un petit projet Terragen 2, mais on en est pas encore là. Erwan expérimente toujours avec ce logiciel, qui mine de rien est vachement plus complexe (et complet) que le premier.

Une chose est sûre, les calculs vont encore être allongés avec Terragen 2, donc il faudra soit des ordinateurs plus puissants, soit une grande patience, soit intégrer d'autres volontaires dans le projet, si projet il y a. :rolleyes:

  • 8 mois plus tard...
Posté

Discussion très interessante.

 

Je fais quelques essais avec Terragen2 et j'aimerai savoir quels sont les paramétres que vous avez utilisé pour rendre l'atmosphere et faire les textures du sol ?

 

Merci

  • 2 années plus tard...
Posté (modifié)

Hum je déterre un vieux sujet mais puisque les vidéos et images ne sont plus disponible j'aurais voulu savoir où on pouvais voir le film si c'est toujours possible ?

 

merci d'avance

 

EDIT: Veuillez m'excuser, je viens de trouver !

Modifié par Osmorhum'

Rejoignez la conversation !

Vous pouvez répondre maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous pour poster avec votre compte.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

  • En ligne récemment   0 membre est en ligne

    • Aucun utilisateur enregistré regarde cette page.
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.