Historique des modifications - Message

Message #11799

Sujet: Changer la coloration de la texture d'une skybox


Type Date Auteur Contenu
Création du message 13-05-2017 11:14:24 Magun
4718592*6*32/8/1024/1024 = 108Mo (tu as oublier un x6 -> 6 texture par skybox)
bon en terme de coup d'espace mémoire sa va (si je suis pas a coter de la plaue)
tu auras forcement une optimisation coter rendu oui

après évidemeent tu peut faire du multi-threading (6 thread) avec openmp par exemple (#pragma omp parralel for avec une synchro sur le lock/unlock)
tu peut optimiser le pipline de ton cpu avec des calcules sse (diminue le nombre de cycle necessaire par operation)

mais sa ne vaudras jamais un calcule gpu avec un shader, puisque l'architecture materiel "super-scalaire" est prévue pour ça
http://docs.nvidia.com/cuda/cuda-c-programming-guide/graphics/floating-point-operations-per-second.png

sur gpu tu as ~1024 thread et beaucoup d'operation realiser en 1 cycle
sur cpu tu as ~4 thread et il faut optimiser a la main

ensuite oui tu as beaucoup de mémoire différente (registre, L1, L2, L3, L4, Ram)
sauf que les mémoires sur cpu nécéssite des codes particulier pour être utiliser correctement, sinon c'est l'os qui le fait

en général dans ton code, le system charge une petite zone mémoire que tu veut traiter, tu fait le traiement
et quand tu veut utiliser une adresse qui n'est pas en cache il remplace le cache par la nouvelle zone mémoire pour faire le traitement
c'est ce qu'on apelle un soft-miss, et ça a un cout, la plus part du temp ce cout de transfert n'est pas pris en compte par le cout théorique d'un algo,
sauf que ba en pratique un algo peut être bien plus performant que théoriquement avec ces histoires

mais toi dans ton cas tu en faite tu utilise deux caches, un en ram (image) l'autre en gpu (texture)
en gros tu as un cache en ram pour irrlicht, pourque tu puisse faire tes operations (lock)
et tu as un cache sur le gpu qui est transferer quand tu as fini (unlock)

et comme c'est ce dernier qui est utiliser pour l'affichage tu as bien une optimisation
et que tu as tout mis en cache, tu suprimme le cout calculatoire dans la boucle principal
et tu suprimme le cout de mise en cache et de transfert de tes texture de la ram vers le gpu (qui as aussi un cout non négligable)

Retour

Options Liens officiels Caractéristiques Statistiques Communauté
Préférences cookies
Corrections
irrlicht
irrklang
irredit
irrxml
Propulsé par Django
xhtml 1.0
css 2.1
884 membres
1440 sujets
11337 messages
Dernier membre inscrit: Saidov17
147 invités en ligne
membre en ligne: -
RSS Feed