Précédent   Forum des professionnels en informatique > Applications > Développement 2D, 3D et Jeux > API graphiques > OpenGL
OpenGL Forum d'entraide sur le développement en OpenGL. Avant de poster -> FAQ OpenGL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 20/12/2011, 21h15   #1
Membre chevronné
 
Avatar de valefor
 
Inscription : décembre 2006
Messages : 689
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 689
Points : 666
Points : 666
Par défaut Compilation verbose ou stats d'un shader.

Bonjour.

Je suis en train de redécouvrir OpenGL. A titre de travaux pratiques, je code un shader qui implémente la fonction noise (visiblement très peu supportée par les constructeurs ...).

Voici un état de mon avancement : http://paul.chavent.free.fr/opengl.html

Parmi les articles que j'ai utilisé pour m'aider celui-ci (http://http.developer.nvidia.com/GPU...chapter26.html).

A la fin de l'article, il est écrit cela :
Citation:
The unoptimized implementation compiles to 81 Pixel Shader 2.0 instructions, including 22 texture lookups. After optimization, it is 53 instructions, only nine of which are texture lookups.
Ma question est : comment on peut obtenir ce genre d'informations ? Est-ce qu'il y a une option verbose à la création d'un shader pour avoir ce genre de stats ? Est-ce qu'il y a un fichier de log système ?

Je suis sous Linux avec une ATI radeon HD6450 avec les drivers proprio. Peut-être existe-t-il une variable d'environement qui active des logs ?

Merci pour votre aide.

A bientôt (j'ai d'autres questions en stock )
valefor est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/12/2011, 02h32   #2
Membre éclairé
 
Avatar de ponce
 
Inscription : juillet 2008
Messages : 336
Détails du profil
Informations personnelles :
Âge : 24

Informations forums :
Inscription : juillet 2008
Messages : 336
Points : 347
Points : 347
Tu peux en avoir une idée avec AMD ShaderAnalyzer.
Je pense qu'en HLSL c'est le genre d'info que le compilo crache.
__________________

@p0unce | gamesfrommars
ponce est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/12/2011, 08h59   #3
Membre chevronné
 
Homme
Inscription : mars 2011
Messages : 433
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : mars 2011
Messages : 433
Points : 792
Points : 792
NVEmulate te permet de sortir le code assembleur généré. Ca donne au moins une idée de la taille et du nombre d'instruction.

ShaderAnalyzer est très pratique pour des shaders relativement simple, mais il décroche dès que les shaders deviennent un peu compliqué ou si tu utilise des structs .
__________________
La perfection est atteinte, non pas lorsqu’il n’y a plus rien à ajouter, mais lorsqu’il n’y a plus rien à retirer. - Antoine de Saint-Exupéry
pyros est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/12/2011, 11h18   #4
Membre chevronné
 
Avatar de valefor
 
Inscription : décembre 2006
Messages : 689
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 689
Points : 666
Points : 666
Et le problème de AMD Shader Analyser est qu'il ne fonctionne que sous Windows.

On dirait que NVEmulate fonctionne que sous Windows aussi.

J'aurai tellement vu un truc à base de variables d'environnement qui permettent d'avoir une sortie de compilation verbeuse...

Je vais aller faire un tour sur les forums d'ATI.
valefor est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/12/2011, 11h33   #5
Membre chevronné
 
Homme
Inscription : mars 2011
Messages : 433
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : mars 2011
Messages : 433
Points : 792
Points : 792
Oups, j'avais pas vue que tu étais sur ATI et Linux

Peut être que ceci peut t'aider (page 3):
Citation:
To enable the enhanced GLSL support on Linux, add the following option to the Screen or Device section in the X configuration file:
Option "RegistryDwords" "8F773984=7"
Il y a peut être quelque chose de similaire pour ATI...
__________________
La perfection est atteinte, non pas lorsqu’il n’y a plus rien à ajouter, mais lorsqu’il n’y a plus rien à retirer. - Antoine de Saint-Exupéry
pyros est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 05h27.


 
 
 
 
Partenaires

Hébergement Web