8
votes

La charge de Python Pyopencl DLL a échoué même avec les derniers pilotes


1 commentaires

Avez-vous suivi ce lien pour installer la pyopencl: Installation de pyopencl sous Windows ?


5 Réponses :


2
votes

Je suis attaqué il n'y a pas une bonne réponse à ce problème. Chaque cas est différent. Cela dépend de ce qui est installé dans le système d'exploitation. Pour suivre ces problèmes, j'utilise normalement Walker de dépendance .

Dans ce cas spécifique, j'ouvrirais _cl.pyd (généralement dans c: \ python27 \ lib \ sites-packages \ pyopencl ) dans Walker de dépendance Pour vérifier s'il n'y a aucune dépendance manquante ou si, par exemple, opencl.dll est en fait celui qui devrait être utilisé. opencl.dll peut être installé par d'autres programmes et leur chemin ajouté à Chemin . Aussi opencl.dll dans system32 peut être trop vieux. Fondamentalement essai et erreur renommer tout sauf un opencl.dll dans opencl.dll.bak chemin peut vous y arriver.


0 commentaires

2
votes

J'ai eu ce même problème et j'ai découvert qu'il a été causé par AMD OpenCl.dll n'ayant pas une fonction introduite dans OpenCL 2.1. Le site Gohlke n'a que Opencl 2.1 et 1.2, tandis que les pilotes AMD soutiennent 2.0.

Parce que je voulais 2.0, la solution facile était de remplacer manuellement le système AMD System32 / opencl.dll avec celui de Intel SDK avec support expérimental 2.1.


2 commentaires

Wow, comment saviez-vous que j'utilisais les libs de Gohlke? ;) En outre, l'installation de la version PYOPENCL 1.2 fonctionne.


Il suffit de supprimer le fichier system32 / opencl.dll et le remplacer par la nouvelle version n'est pas requis! travaillé pour moi.



0
votes

Essayez les deux versions 1.2 et 2.1 J'essayais avec plus tard et j'ai eu cette question. Commuté le WHL et fonctionne mais utilisé le GPU Intel. Nvidia opengl.dll est 2.0 et cela ne fonctionne pas toujours.

Il suffit de vérifier le tableau CL.GET_PLATFORMS et les a trouvés 0. Intel 1. NVIDIA

  1. pyopencl.platform Intel (R) opencl & pyopencl.device Intel (R) Core (TM) ... Intel (R) Opencl
  2. pyopencl.platform nvidia cuda & pyopencl.device quadro ... NVIDIA CUDA

0 commentaires

0
votes

J'ai eu le même problème dans mon Yoga de Lenovo 720. Il a Nvidia Geforce GTX1050 et Intel I7 630 CPU / GPU.

J'ai installé il y a longtemps que les pilotes de mise à jour et le SDK pour Nvidia Cuda. Mais maintenant, je voudrais courir Python OpenGL et j'installer Intel SDK aussi. PIP INSTALLATION PYOPENCL SANS PROBLÈMES MAIS IMPORTER PYOPENGLLE DONNER ME DLL Échec de la charge.

solution consistait à changer Windows \ System32 \ opencl.dll vers un nouveau. L'ancien était signé Nvidia (vous pouvez le voir dans les propriétés du fichier opencl.dll). Le nouveau est Microsoft Signé la version 2.1.1.0 Khronos Opencl ICD

J'espère que ceci est utile pour vous. La solution est arrivée après une longue période d'essayer beaucoup de choses ... mais rien n'a travaillé sauf le nouveau fichier opencl.dll


0 commentaires

1
votes

J'ai eu le même problème ici , la façon dont j'ai résolu c'était:

  • Assurez-vous d'avoir téléchargé et installé le bon Opencl SDK. Par exemple

    • Intel
    • NVIDIA
    • Ouvrez l'invite de commande Windows cmd et définissez le lib et include les variables d'environnement . Par exemple

      • Intel:

        • SET INTÉGISTRE = C: \ Fichiers du programme (x86) \ IntelsWTools \ System_Studio_2020 \ opencl \ sdk \ include
        • SET LIB = C: \ Fichiers du programme (x86) \ IntelswTools \ System_Studio_2020 \ OPENCL \ SDK \ LIB \ X64
        • nvidia:

          • SET LIB = C: \ Fichiers de programme \ NVIDIA GPU Toolkit \ Cuda \ V3.2 \ LIB \ X64
          • Ensemble include = C: \ Fichiers de programme \ NVIDIA GPU Toolkit \ Cuda \ v3.2 \ Inclure
          • Run Exrortez maintenant pyopencl --no-cache-dir

          • Open Python et test Importation PYOPENCL

            Il pourrait y avoir un moyen d'installer pyopencl via pipwin ou à l'aide de - option globale pour définir les dossiers Inclure et Library. Mais je n'ai pas réussi jusqu'à présent.

            PS Le SDK NVIDIA OPENCL mentionné ci-dessus (IE, CUDA Toolkit) se révèle à être très obsolète. S'il vous plaît ne l'utilisez pas. Si vous avez installé, désinstallez et installez les nouvelles versions.


1 commentaires

J'ai fait mais je n'ai pas travaillé pour moi, j'ai Intel HD Graphic 4000