Learn how easy it is to sync an existing GitHub or Google Code repo to a SourceForge project! See Demo

Close

Clootils InvalidValueComputeException

Help
2010-09-01
2012-12-21
  • DarkNeutron
    DarkNeutron
    2010-09-01

    I just noticed that clootils has not worked from revision 189c292377f4f29b32ef8ac150387cd1847ff78e. It throws a Cloo.InvalidValueComputeException in ComputeObject.cs at line256. It was apparently thrown by the type initializer for Cloo.ComputePlatform.

    I noticed this problem in the head revision and worked backwards until I found one that worked. The revision mentioned above is the oldest one throwing this error.

    I wish I could upload error screen shots here. The stack trace is about 30 lines.

     
  • nythrix
    nythrix
    2010-09-03

    The only thing I can think of is the absence of support for the cl_khr_fp16 or cl_khr_fp64 extensions. If yes this is a bug.
    I cannot reproduce it but you could try something yourself. Comment out these two lines in ComputeDevice constructor and see if it works:

    preferredVectorWidthHalf = GetInfo<uint>(ComputeDeviceInfo.PreferredVectorWidthHalf);
    preferredVectorWidthDouble = GetInfo<uint>(ComputeDeviceInfo.PreferredVectorWidthDouble);
    
     
  • nythrix
    nythrix
    2010-09-03

    Edit: Now that I think of it it's easier to assign a zero. Commenting them out will lead to compiler errors.

     
  • DarkNeutron
    DarkNeutron
    2010-09-03

    That seems to have fixed it. In my particular case, only the line

    preferredVectorWidthHalf = GetInfo<uint>(ComputeDeviceInfo.PreferredVectorWidthHalf);
    

    was causing a problem. The line dealing with doubles works fine.

    Here is a copy of the device info:

    [HOST INFO]
    Operating system: Microsoft Windows NT 6.1.7600.0
    [OPENCL PLATFORMS]
    Name: NVIDIA CUDA
    Vendor: NVIDIA Corporation
    Version: OpenCL 1.0 CUDA 3.1.1
    Profile: FULL_PROFILE
    Extensions:
     + cl_khr_byte_addressable_store
     + cl_khr_icd
     + cl_khr_gl_sharing
     + cl_nv_d3d9_sharing
     + cl_nv_d3d10_sharing
     + cl_khr_d3d10_sharing
     + cl_nv_d3d11_sharing
     + cl_nv_compiler_options
     + cl_nv_device_attribute_query
     + cl_nv_pragma_unroll
    Devices:
        Name: GeForce 8600 GT
        Vendor: NVIDIA Corporation
        Driver version: 258.96
        Compute units: 4
        Global memory: 242810880
        Local memory: 16384
        Image support: True
        Extensions:
         + cl_khr_byte_addressable_store
         + cl_khr_icd
         + cl_khr_gl_sharing
         + cl_nv_d3d9_sharing
         + cl_nv_d3d10_sharing
         + cl_khr_d3d10_sharing
         + cl_nv_d3d11_sharing
         + cl_nv_compiler_options
         + cl_nv_device_attribute_query
         + cl_nv_pragma_unroll
         + cl_khr_global_int32_base_atomics
         + cl_khr_global_int32_extended_atomics
    Name: ATI Stream
    Vendor: Advanced Micro Devices, Inc.
    Version: OpenCL 1.0 ATI-Stream-v2.1 (145)
    Profile: FULL_PROFILE
    Extensions:
     + cl_khr_icd
    Devices:
        Name: AMD Phenom(tm) II X4 955 Processor
        Vendor: AuthenticAMD
        Driver version: 1.1
        Compute units: 4
        Global memory: 3221225472
        Local memory: 32768
        Image support: False
        Extensions:
         + cl_khr_icd
         + cl_amd_fp64
         + cl_khr_global_int32_base_atomics
         + cl_khr_global_int32_extended_atomics
         + cl_khr_local_int32_base_atomics
         + cl_khr_local_int32_extended_atomics
         + cl_khr_int64_base_atomics
         + cl_khr_int64_extended_atomics
         + cl_khr_byte_addressable_store
         + cl_khr_gl_sharing
         + cl_ext_device_fission
         + cl_amd_device_attribute_query
         + cl_amd_printf
    

    I should also note that I am also getting an error when closing the Clootils program. I am getting an IOException on line 92 of ComputeEvent.cs (the writeLine statement). The code is marked to only run in debug mode, so this might not be a problem. Oddly enough, I only get his error if the OpenCL tests have been run. Just opening and closing the window works fine.

     
  • nythrix
    nythrix
    2010-09-04

    0.8.1 is out. This bug was quite critical so I decided to update the package. Thank you very much for your help, kwaegel!

     
  • DarkNeutron
    DarkNeutron
    2010-09-04

    Glad I could help. I am using Cloo as part of an independent study in collage (hardware accelerated ray tracing), so it is to my benefit to help get some of the bugs out…