2010-09-16 3 views
5

Je veux utiliser des instructions #include dans mes noyaux OpenCL mais il semble que le compilateur OpenCL d'Apple met en cache les noyaux, donc si vous changez le contenu d'un fichier inclus, le programme ne changera pas entre les exécutions.Comment puis-je forcer le compilateur OpenCL d'Apple à recompiler un noyau mis en cache?

J'ai codé en place un exemple qui illustre ceci: http://github.com/enjalot/adventures_in_opencl/tree/master/experiments/inc/

Si vous compilez et exécutez, il devrait fonctionner correctement. Ensuite, si vous commentez la définition de la structure dans inc.cl, elle fonctionnera tout de même correctement (ou changera quoi que ce soit dans lvl2.cl)

En utilisant le compilateur NVIDIA sur Ubuntu, vous obtenez le comportement attendu.

Alors est-il nécessaire de forcer clBuildProgram à recompiler le noyau?

Répondre

3

J'obtenu une réponse de la liste de diffusion [email protected]

killall cvmsServ sudo

ne semble pas très gracieux, mais oh bien

Questions connexes