IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Coprocesseurs et calcul hétérogène Discussion :

Limite d'un GPU


Sujet :

Coprocesseurs et calcul hétérogène

  1. #21
    Nouveau Candidat au Club
    Inscrit en
    Juin 2008
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 1
    Points : 1
    Points
    1
    Par défaut
    La seule réponse à ta question (que peut m'apporter le portage de mon appli sur GPU), c'est que ça dépends de l'algo. Les GPU sont de grosses machines de calcul parallèle fait pour bouffer du float en masse, faire du dot product, du produit matriciel, bref de l'arithmétique. Ils ne sont pas forcéments adaptés aux algos avec beaucoup de branchements conditionnels, des heuristiques, parcours d'arbres, etc...

  2. #22
    screetch
    Invité(e)
    Par défaut
    ils peuvent par exemple etre utilisés pour des reseaux de neurones tres complexes, voire meme pour toute la partie "feedback" qui consiste a calculer les coefficients des liens vers les neurones.

    en effet, les reseaux de neurones, l'entrée peut etre représentée par une texture, la sortie par une texture egalement (une liste de bêtes flottants...), et pour chaque etape il faut lire dans la texture, effectuer des calculs, ecrire la sortie, sans aucun branchement ni rien. M'est avis que la carte graphique pourrait calculer enormement de reponses par seconde.

    Le feedback est plus complexe, mais c'est de l'arithmetique (ca consiste a evaluer la solution, a dire si c'est bien ou pas, puis a ajuster les coefficients pour que la prochaine reponse soit meilleure). pas sur que ca marche aussi bien

  3. #23
    Membre actif
    Homme Profil pro
    Ingénieur sécurité
    Inscrit en
    Juillet 2007
    Messages
    193
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur sécurité
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juillet 2007
    Messages : 193
    Points : 274
    Points
    274
    Par défaut
    Bonjour,

    pour avoir un peu touché a CUDA (et bientot m'y mettre encore plus activement), je me permet de poster quelques trucs pour t'aider.

    Deja la premiere question toute bete qu'il faut que tu te pose, c'est est ce que mon calcul peut etre facilement parrallélisable.

    Ensuite, comme il l'est dit précédament, les algorithmes avec des boucles et des conditions, sont largement moins rapide sur GPU. Cependant, pour avoir tester des algorithmes qui serait normalement pas tres parallélisable, j'arrive facilement a doubler la vitesse de l'algorithme sur GPU (entre un processeur 3.2ghz et une geforce 8800 GT). Et des algorithmes qui font bcp de raw calcules peuvent facilement etre multiplier par 20 sur le meme matériel (une 8800 GT est loin d'etre la plus puissante, avec une GTX il peut y avoir beaucoup de différences).

  4. #24
    Expert confirmé

    Profil pro
    Inscrit en
    Février 2006
    Messages
    2 376
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 2 376
    Points : 4 928
    Points
    4 928
    Par défaut
    il faut aussi faire gaffe au volume de données à traiter par rapport à la complexité du calcul, parce que le temps d'envoi et de retour vers/depuis la mémoire de la carte graphique n'est pas anodin.

    pendant les techdays, lors de la (d'une peut être, mais j'en ai pas vu d'autre) présentation gpgpu, l'intervenant nous a montré que par exemple le tri d'une grande séquence de nombres était aussi rapide sur le cpu que sur le gpu. (et ça se vérifie assez facilement)

  5. #25
    Expert éminent sénior
    Avatar de Mat.M
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    8 352
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 8 352
    Points : 20 359
    Points
    20 359
    Par défaut
    Citation Envoyé par Bakura Voir le message
    Même s'il y a eu pas mal de progrès sur ce sujet, les GPUs, même récents, ont beaucoup de mal avec les boucles et les branchements conditionnels...
    je confirme
    ici au travail il y a des parties du projet avec programmation GPU et cela ne résoud pas tout

  6. #26
    Membre expérimenté

    Profil pro
    Programmeur
    Inscrit en
    Août 2002
    Messages
    1 091
    Détails du profil
    Informations personnelles :
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Programmeur

    Informations forums :
    Inscription : Août 2002
    Messages : 1 091
    Points : 1 679
    Points
    1 679
    Par défaut
    Le plus gros calculateur au monde (Tianhe-1A) prend la tête grâce au GPU :

    http://www.wired.com/gadgetlab/2010/...supercomputer/

    Mon site web | Mon blog | Mes photos | Groupe USA
    > BONJOUR, JE SUIS NOUVEAU SUR CE FORUM
    > presse la touche caps lock, stp
    > OH.. MERCI C EST BEAUCOUP PLUS FACILE COMME CA

  7. #27
    Membre régulier
    Inscrit en
    Août 2010
    Messages
    68
    Détails du profil
    Informations forums :
    Inscription : Août 2010
    Messages : 68
    Points : 79
    Points
    79
    Par défaut
    Hé béh, déjà que le Nebulae était un monstre... !
    7000 Teslas ! Pendant qu'ils font leur simulation météorologique, ils pourraient ouvrir un sauna ou une rotisserie dans les locaux

    Néanmoins, en efficacité Linpack ça donne quoi ?


    (quand on voit Titane, un de nos beaux calculateurs français et ses "seulement" 192 Teslas GT2XX, on réalise qu'on boxe pas dans la même catégorie... !)

  8. #28
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Points : 20 970
    Points
    20 970
    Par défaut
    Disons qu'il faut que ça soit utile. S'il n'y a pas de grosses boucles for, c'est excessivement difficile de porter sur GPU. Déjà sans ça, les codes industriels portés sur GPU sont tout de même rares.

  9. #29
    Membre expérimenté
    Avatar de Gouyon
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    1 076
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 1 076
    Points : 1 521
    Points
    1 521
    Billets dans le blog
    5
    Par défaut
    Citation Envoyé par Matthieu Brucher Voir le message
    Disons qu'il faut que ça soit utile.
    Je dirais plutôt qu'il faut bien déterminer si le GPU est la réponse unique et indispensable au besoin.
    Citation Envoyé par Matthieu Brucher Voir le message
    S'il n'y a pas de grosses boucles for, c'est excessivement difficile de porter sur GPU.
    Justement non. Qui dit boucle dit opération systématique faite en série et donc facilement parallélisable. Ce qui coute cher c'est les branchements conditionnels et lorsqu'on a des accès disque le gain de calcul peut être complètement annulé.

    La plus grosse difficulté est de bien comprendre comment fonctionne un GPU et de bien adapter son code au GPU. Ca peut couter très cher en temps de développement, mais ça peut rapporter très gros en terme de gain de temps.

    Mais pour revenir à la question principale je dirais qu'avant de se demander quelles sont les limites je me poserais plutôt les questions suivantes:
    • Quelles sont les techniques de programmation pouvant répondre à mon problème
    • Quel temps de développement je vais devoir investir
    Il y a des jours où j'éprouve une haine profonde envers microsoft et Apple c'est pas mieux
    Mon modeste site et mes modestes oeuvres sont
    Rémi

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. Limitation DirectSound
    Par Sub0 dans le forum DirectX
    Réponses: 1
    Dernier message: 28/02/2003, 12h21
  2. [Turbo Pascal] Limite de la mémoire virtuelle
    Par moon tiger dans le forum Turbo Pascal
    Réponses: 12
    Dernier message: 08/02/2003, 23h30
  3. Limiter le déplacement de la souris
    Par el_bouleto dans le forum C++Builder
    Réponses: 4
    Dernier message: 09/11/2002, 00h56
  4. Comment limiter les mouvements du curseur??
    Par scorpiwolf dans le forum C++Builder
    Réponses: 9
    Dernier message: 07/07/2002, 23h09
  5. [Comparatifs] Limites nombres tables et quantité de données
    Par benj63 dans le forum Décisions SGBD
    Réponses: 7
    Dernier message: 13/06/2002, 22h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo