Changes between Initial Version and Version 1 of Ticket #576, comment 4
- Timestamp:
- Sep 4, 2016 10:05:32 PM (9 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Ticket #576, comment 4
initial v1 1 1 OpenCL fixed, DLL fails. 2 2 3 To get the DLL to work, first remove the frozen check in sasmodels.kerneldll.make_dll, then restructure the DllKernel so that it doesn't hold any references to the DLL.3 To get the DLL to work, first remove the frozen check in sasmodels.kerneldll.make_dll, then restructure the !DllKernel so that it doesn't hold any references to the DLL. 4 4 5 5 Follow the instructions to reproduce above, but with sasmodels.core.HAVE_OPENCL=False. 6 6 7 We can do this by wrapping the ct.CDLL in a class with methods for the different kernels. Instead of calling the kernels directly, calls from DllKernel will go through this object. DllModel may be could do this if we can guarantee there is only ever one DllModel instance for a particular dll, for example, by cachingDllModel within load_dll(). Then its internal dll can be released, recompiled and reloaded with any attached kernels automatically updated.7 We can do this by wrapping the ct.CDLL in a class with methods for the different kernels. Instead of calling the kernels directly, calls from !DllKernel will go through this object. !DllModel may be could do this if we can guarantee there is only ever one !DllModel instance for a particular dll, for example, by caching !DllModel within load_dll(). Then its internal dll can be released, recompiled and reloaded with any attached kernels automatically updated.