OpenCL pour Python
Je suis à la recherche d'un bon OpenCL wrapper\library pour Python, avec une bonne documentation. J'ai essayé de chercher un peu... mais je ne pouvais pas en trouver un assez bon.
source d'informationauteur Ai_boy
Vous devez vous connecter pour publier un commentaire.
Les plus populaires et les mieux documentées option semble être PyOpenCL. Il prétend être un complet wrapper pour OpenCL et la documentation semble bon.
Les deux CLyther et PyOpenCL look bien documenté pour moi.
pycl est un ctypes de liaison à OpenCL (hébergé sur bitbucket)
Il est actuellement assez nouveau. J'ai joué avec lui récemment, et ça fonctionne bien. Pas fait timings par rapport à PyOpenCL, mais la performance semble être parfaitement raisonnable
Je n'ai pas de travail pour moi avec OS X 10.6 de l'OpenCL 1.0 (et une carte graphique AMD Radeon 5870, voir ici), mais fonctionne parfaitement sous 10.7 et OpenCL 1.1
Que pour la documentation, c'est un assez directe de liaisons pour les bibliothèques C, de sorte que toute la documentation de ceux-ci vont s'appliquer. Aussi "Aventures dans PyOpenCL" est bon, et s'applique à presque toutes les liaisons
Nous développons opencl4pyde plus haut niveau des liaisons. Ce projet utilise CFFI, de sorte qu'il fonctionne sur Pypy.
Le problème majeur que nous avons rencontré avec pyopencl est que "l'importation pyopencl" ne OpenCL initialisation et prend toute la mémoire virtuelle dans le cas du pilote NVIDIA, la prévention de la bonne bifurcation et efficacement la désactivation de multitraitement (oui, nous prétendons que l'utilisation de pyopencl désactive le multitraitement au moins avec NVIDIA). opencl4py utilise paresseux OpenCL l'initialisation, la résolution de cette "importation de l'enfer".
Plus tard, il a gagné quelques fonctionnalités intéressantes comme la super facile binaire du programme de mise en cache, etc. Malheureusement, la documentation est un peu bref. La meilleure façon d'apprendre comment il fonctionne, c'est d'aller à travers les tests.