Bonjour,
Je veux créer une application multi-plateforme, qui utilise toute la puissance des GPUs et des CPUs disponibles comme devices. Sachant qu'il y a principalement 3 vendors (implémentations/plateformes) possibles à savoir NVIDIA, AMD et INTEL, je suis en train de lire leurs documentations respectives "OpenCL programming guide" pour connaître leurs architectures et optimiser mon code en fonction des plateformes.
http://www.cs.cmu.edu/afs/cs/academi...ming_Guide.pdf pour NVIDIA
http://developer.amd.com/wordpress/m...de-rev-2.7.pdf pour AMD
et https://software.intel.com/sites/def...ationGuide.pdf pour INTEL.
Je voudrais savoir si je dois faire un kernel optimisé pour chaque vendor (un qui sera executé par la plateforme AMD, un second par la plateforme INTEL, et un troisième par la plateforme NVIDIA), ou bien il vaut mieux n'écrire qu'un seul kernel optimisé en compromis pour les 3 architectures?
merci
Partager