Bonjour à tous,
Lorsqu'on exécute un programme opengl, est ce que toutes les opérations du pipeline graphique 3D s'exécute sur le CPU ou bien il y a des opération tel que le "Display (rendering)" qui s'exécute sur le GPU
Merci d'avance![]()
Bonjour à tous,
Lorsqu'on exécute un programme opengl, est ce que toutes les opérations du pipeline graphique 3D s'exécute sur le CPU ou bien il y a des opération tel que le "Display (rendering)" qui s'exécute sur le GPU
Merci d'avance![]()
la plupart devrait être sur le GPU, a condition d'avoir le driver adéquat.
Bonjour,
J'ai pas de carte graphique sur mon Pc et je peux exécuter des programmes openGl![]()
Bonjour,
principalement le GPU, les cartes graphiques offrant des implémentations hardware d'OpenGL et Direct3D.
sous windows, s'il n'y a pas de carte graphique ou si les drivers manquent, c'est le driver OpenGL 1.1 de microsoft qui est utilisé, et qui travaille uniquement avec le CPU.
désolé les amis mais je crois que je commence à confondre certain notion![]()
C'est quoi la différence entre une programation CPU et une programmation GPU ?
Pourquoi utilisé GLSL si opengl s'exécute sur le GPU ?
est ce que quelqu'un peut me citer les opérations du pipeline graphique qui s'exécute sur le CPU et ceux qui s'exécute sur le gpu ?
Merci encore
si tu as une carte graphique, presque toute les opérations sont effectuées sur le GPU, la seule chose qui s'execute sur le CPU c'est la sauce interne du driver:
* copier les données de la mémoire RAM vers la mémoire graphique
* ordonnancer les tâches a effectuer
* compiler les shaders (GLSL vers langage machine)
* transformer les données ou bufferiser les données
toutes les opérations graphiques sont faites sur le GPU:
* transformation des vertex
* tesselation/generation de geometrie
* fog
* illumination
etc etc
@3aychoucha
Si tu n'avait pas de carte graphique, tu ne pourrais pas lire ce message. Tu n'a peut être pas un "grosse" carte, mais tu a forcement une carte graphique.
Aujourd'hui, même les carte intel bas de gamme savent faire de l'openGL sans problème.
Re,
Ben...la différence est que le code CPU s'exécute sur le CPU et le GPU sur...le GPU!C'est quoi la différence entre une programation CPU et une programmation GPU ?
Bon, un exemple: disons que tu veuilles charger une texture:
- tu vas lire une image sur le disque, ou depuis les resources de ton projet, la décoder et la stocker temporairement dans un buffer: tout ca se passe sur le GPU
- Puis tu appeles glTexImage2D(...) pour créer ta texture OpenGL: à ce moment là ton buffer de données est transmis du CPU au GPU et ta texture est présente sur le GPU
- Si plus tard tu veux, pour une raison ou une autre, acceder aux texelsde ta texture, tu peux faire un glGetTeximage, qui copiera les du GPU vers le CPU
Euh...je crois que tu n'as pas compris ce que sont les shaders:Pourquoi utilisé GLSL si opengl s'exécute sur le GPU ?
- La carte graphique implémente un "pipeline graphique", je ne vais pas tout détailler mais en gros il y a traitement des vertices, rasterization, traitement des pixels, etc etc jusqu'à ce que ton image apparaisse à l'écran.
- Les shaders permettent de remplacer des étapes de traitement des vertices, et celle de traitement des pixels, par ton propre code, écrit en GLSL.
avant celà on parlait de pipeline fixe et le programmeur n'était pas aussi libre. Depuis il y a aussi les géometry shaders et cie, mais c plus avancé.
Hum...désolé mais non, pas d'accord. Comme dit, en l'absence de carte graphique c'est le driver software qui prend le relai (sous windows en tout cas). C lent, c moche, limité à OpenGL 1.1, mais ca tourne à 100% sur le CPU.Si tu n'avait pas de carte graphique, tu ne pourrais pas lire ce message. Tu n'a peut être pas un "grosse" carte, mais tu a forcement une carte graphique .
Merci à vos tous les amis![]()
Partager