D'après ce que j'ai compris, les gens ont commencé à utiliser les GPU pour le calcul général parce qu'ils constituent une source supplémentaire de puissance de calcul. Et bien qu'ils ne soient pas aussi rapides qu'un CPU pour chaque opération, ils possèdent de nombreux cœurs, de sorte qu'ils peuvent être mieux adaptés au traitement parallèle qu'un CPU. C'est logique si vous possédez déjà un ordinateur équipé d'un GPU pour le traitement graphique, mais que vous n'avez pas besoin des graphiques et que vous souhaitez une puissance de calcul supplémentaire. Mais je comprends aussi que les gens achètent des GPU spécifiquement pour ajouter de la puissance de calcul, sans intention de les utiliser pour traiter des graphiques. Pour moi, cela ressemble à l'analogie suivante :
Je dois couper mon gazon, mais ma tondeuse à gazon n'est pas assez puissante. J'enlève donc la cage du ventilateur que je garde dans ma chambre et j'aiguise les pales. Je le fixe à ma tondeuse avec du ruban adhésif et je trouve que cela fonctionne assez bien. Des années plus tard, je suis le responsable des achats d'une grande entreprise d'entretien des pelouses. J'ai un budget assez important à consacrer aux outils de tonte. Au lieu d'acheter des tondeuses à gazon, j'achète une série de ventilateurs en boîte. Là encore, ils fonctionnent bien, mais je dois payer des pièces supplémentaires (comme la cage) dont je ne me servirai finalement pas. (pour les besoins de cette analogie, nous devons supposer que les tondeuses à gazon et les ventilateurs en boîte coûtent à peu près la même chose).
Alors pourquoi n'y a-t-il pas de marché pour une puce ou un appareil qui possède la puissance de traitement d'un GPU, mais pas la surcharge graphique ? Je pense à quelques explications possibles. Laquelle d'entre elles, le cas échéant, est correcte ?
- Une telle alternative serait trop coûteuse à développer alors que le GPU est déjà une bonne option (les tondeuses à gazon n'existent pas, pourquoi ne pas utiliser ce ventilateur de boîte parfaitement bon ?)
- Le fait que "G" signifie "graphics" n'indique qu'une utilisation prévue et ne signifie pas réellement qu'un effort est fait pour rendre la puce mieux adaptée au traitement graphique qu'à tout autre type de travail (les tondeuses à gazon et les ventilateurs de boîte sont la même chose quand on y regarde de plus près ; aucune modification n'est nécessaire pour que l'une fonctionne comme l'autre).
- Les GPU modernes portent le même nom que leurs anciens prédécesseurs, mais de nos jours, les GPU haut de gamme ne sont pas conçus pour traiter spécifiquement les graphiques (les ventilateurs des boîtes modernes sont conçus pour fonctionner principalement comme des tondeuses à gazon, même si les anciens ne l'étaient pas).
- Il est facile de traduire à peu près n'importe quel problème dans le langage du traitement graphique (on peut couper de l'herbe en soufflant de l'air dessus très rapidement).
EDIT :
Ma question a reçu une réponse, mais au vu de certains commentaires et réponses, je pense que je dois clarifier ma question. Je ne demande pas pourquoi tout le monde n'achète pas ses propres calculs. Il est clair que cela serait trop coûteux la plupart du temps.
J'ai simplement observé qu'il semble y avoir une demande pour des appareils capables d'effectuer rapidement des calculs parallèles. Je me demandais pourquoi il semble que le dispositif optimal soit l'unité de traitement graphique, plutôt qu'un dispositif conçu à cette fin.