This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Is there offline compiler for Mali-T628 MP6 OpenCL?

Hello, I'm using Odroid-XU3.

And I installed Opencv 3.0.0-rc1 on odroid-xu3 ubuntu 14.04.


I want to use function clCreateProgramWithBinary() instead of clCreateProgramWithSource().

Because of build time for clCreateProgramWithSource() and clBuildProgram(), my application using opencl is very slow than using opencv.


Is there offline compiler for Mali-T628 MP6 OpenCL?


Thanks.

Parents
  • Sorry, I kind of missed the point here: you don't actually need the offline compiler to generate a kernel binary, you can use clGetProgramInfo():

    size_t size;
    size_t size_ret;
    
    clGetProgramInfo( p, CL_PROGRAM_BINARY_SIZES, 1, &size, &size_ret );
    
    assert( 1 == size_ret );
    
    void *binary = malloc( size );
    clGetProgramInfo( p, CL_PROGRAM_BINARIES, 1, &binary, &size_ret );
    

    Note: The performance of this code path improved *a lot* since r5p0, so if the performance on your device is still not great, please patient until the new version of the driver comes out

    Anthony

Reply
  • Sorry, I kind of missed the point here: you don't actually need the offline compiler to generate a kernel binary, you can use clGetProgramInfo():

    size_t size;
    size_t size_ret;
    
    clGetProgramInfo( p, CL_PROGRAM_BINARY_SIZES, 1, &size, &size_ret );
    
    assert( 1 == size_ret );
    
    void *binary = malloc( size );
    clGetProgramInfo( p, CL_PROGRAM_BINARIES, 1, &binary, &size_ret );
    

    Note: The performance of this code path improved *a lot* since r5p0, so if the performance on your device is still not great, please patient until the new version of the driver comes out

    Anthony

Children