-
Notifications
You must be signed in to change notification settings - Fork 10
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Any of the opencl 2 version does not work #54
Comments
Hi, can you write here the code you are tring to run? Seems like a usage error? Or my documentation error? |
Are you using threading binaries maybe that .net version only uses own threading dlls? |
Lazy builds were built on an FX8150. You may be missing some opportunities too, if you are on a new CPU, on top of some compiled code incompatibilities. |
|
it is same code works with "cekirdekler_dll_v1_4_1_opencl_1_2_" . __kernel void
|
Does arrayOfPIs work with older version but not with newer version? Is it something about constructors? Does ckMulti() get used in a constructor of main program? |
yes , it works with older version perfectly. |
The thing about "const scalar parameters" were not implemented. Currently only arrays are included. If you have 80 int parameters, single int array of length 80 will do the job although with less readability. |
I'll try that .net version today(or within 1 2 hours) and put results here. |
It could be AcceleratorType.GPU | AcceleratorType.CPU parameter error too. |
alright Tugrul, thank you. |
I have .net 4.5 and this works:
|
4.6.1 works too |
Is that a new update for windows or can it be specifically installed(4.7)? I'm on vs2015 currently. |
Or maybe you are using vs2017+ ? |
Can you check what exists in bottom of quick watch window? Is it a dll or something else? |
Also for the const scalar parameters, you are already creating a string for opencl. This can include global parameters in kernel compilation body instead of kernel header. const int globalValue=@@@editGlobal1@@@; // replace with constant And this will not cause bugs when there are 50-60 constant parameters because Nvidia/Amd GPUs have a limit on kernel parameters like 4kB or something. But only 1 array costs only 4-8 bytes for all parameters it includes. |
yes it is vS2017, " " |
If you add gpu.lastComputePerformanceReport(); before Console.readkey() you can see if it sees your devices like:
just to make sure that version sees devices. |
I'm using last versionof cekirdekler and vs2015 with .net 4.6.1. |
Did you include system threading . dll into your references? |
What happens if you don't include system threading .dll but include .net 4.7's own threading? |
gpu.lastComputePerformanceReport(); Exception thrown: 'System.NullReferenceException' in Cekirdekler.dll |
ok i will UN- reference the threading dll and check |
Seems like opencl 2.0 problem too. |
What you successfully run was only opencl 1.2 right? |
The unworkable error message could be coming from "release" compiled dlls. Those will tell wrong error messages when debugged. |
You should really use the source code to compile for your own machine, on debug if you want debugging and on release if you need performance(with optimizations and unsafe code enabled). (both kutuphane.dll project and cekirdekler.dll project) |
I wrote this project to learn C# actually. There could be some basic errors about C# or its 2017+ versions. |
I tried all these with reference to threading dll and and without . I have VS2017 .Net4.7 . Thank you |
Do you have opencl 2.0 drivers? What is your device? An intel igpu? |
Project was designed to filter experimental drivers out (for opencl 2.0). If yours have one, this could be that. |
Or maybe if its nvidia, and if its an old gpu, it may not have support for 2.0 without new drivers. |
PC1: intel Core i7 2600 + Geforce GT 710 all updated driver and Opencl 2.0 Tried to build Kutuphane on my device, some opencl2 sdk issue. |
Thank you Tugurul for your effort and suggestion. |
Then opencl2.0 directory is different imo. When you need to use opencl 2.0, just rename kutuphanecl2.dll to kutuphanecl.dll because cekirdekler.dll uses it. (when opencl 2.0 drivers etc are solved) I'm very sorry for this issue(You'll be missing only dynamical parallelism). I'll try to solve this when I have a ryzen+ vs2017+ system. |
Tried all of the lazy build cekirdekler_dll_v1_4_1_opencl_2_0_updateXX versions. but unable to make them work in .NET4.7 . Throws,"Object reference not set to an instance of an object"
The text was updated successfully, but these errors were encountered: