반응형 OpenCL6 OpenCL 에러 void boo(){if(get_local_id(2)!=0) return;foo();barrier(CLK_LOCAL_MEM_FENCE);} 작동 안한다.알아서 작동할 줄 알았는데.... void boo(){if(get_local_id(2)!=0) foo();barrier(CLK_LOCAL_MEM_FENCE);} 이렇게 하자. atomic 함수는 shared-reg에 써도 느리다. 왠만하면 피하자! branch divergence를 유발한다! 2013. 1. 21. Intel opencl platform analyzer http://software.intel.com/sites/landingpage/opencl/user-guide/index.htmhttp://software.intel.com/sites/landingpage/opencl/user-guide/Using_the_Intel(R)_Graphics_Performance_Analyzers_(Intel(R)_GPA)_Platform_Analyzer.htm AMD OpenCL컴파일러가 병맛같기 때문에 Intel용 툴을 써봤다. 1. GPA TOOL 다운 http://software.intel.com/en-us/vcsource/tools/intel-gpa 2. 프로파일 파일 생성 2-1. 환경 변수 설정 2012. 10. 15. OpenCL 포팅 1. C로 구현. int j = 0;for( int i=0 ; i 2012. 10. 5. clCreateBuffer clEnqueueWriteBuffer clSetKernelArg clEnqueueReadBuffer http://www.khronos.org/registry/cl/sdk/1.0/docs/man/xhtml/clCreateBuffer.html cl_mem clCreateBuffer (cl_context context, cl_mem_flags flags, size_t size, void *host_ptr, cl_int *errcode_ret) flagsCL_MEM_READ_WRITECL_MEM_WRITE_ONLYCL_MEM_READ_ONLYCL_MEM_USE_HOST_PTRCL_MEM_ALLOC_HOST_PTRCL_MEM_COPY_HOST_PTR cl_mem clEnqueueWriteBuffer (cl_command_queue command_queue, cl_mem buffer, cl_bool blockin.. 2012. 9. 24. 이전 1 2 다음