Difference between revisions of "OpenCL"

From Lazarus wiki
Jump to navigationJump to search
 
(7 intermediate revisions by 4 users not shown)
Line 1: Line 1:
OpenCL (Open Computing Language) is a framework for writing programs that execute across heterogeneous platforms consisting of CPUs, GPUs, and other processors. OpenCL includes a language (based on C99) for writing kernels (functions that execute on OpenCL devices), plus APIs that are used to define and then control the heterogeneous platform. OpenCL provides parallel programming using both task-based and data-based parallelism.
+
OpenCL (Open Computing Language) is a framework for writing programs that execute across heterogeneous platforms consisting of CPUs, GPUs, and other processors. OpenCL includes a language (based on C99) for writing kernels (functions that execute on OpenCL devices), plus APIs that are used to define and then control the heterogeneous platform. OpenCL provides [[Parallel procedures|parallel programming]] using both task-based and data-based parallelism.
  
 
[http://www.khronos.org/opencl/ Official site]
 
[http://www.khronos.org/opencl/ Official site]
 +
 +
[http://www.khronos.org/opencl/sdk/1.0/docs/man/xhtml/ Online Man pages on the official site]
 +
 
[http://en.wikipedia.org/wiki/OpenCL Wikipedia OpenCL]
 
[http://en.wikipedia.org/wiki/OpenCL Wikipedia OpenCL]
  
OpenCL headers can be downloaded from [http://www.stack.nl/~marcov/opencl.zip here]
+
[http://developer.apple.com/mac/library/documentation/Performance/Conceptual/OpenCL_MacProgGuide/Introduction/Introduction.html OpenCL at Apple Developer library]
 +
 
 +
 
 +
OpenCL headers are available in standard FPC packages.
 +
Headers are can be used for:
 +
*MacOSX 10.6 OpenCL framework
 +
*NVidia OpenCL Windows .dll
 +
*ATI using ATI Stream SDK ([http://developer.amd.com/gpu/ATIStreamSDK/Pages/default.aspx ATI Stream SDK]) under Linux. NVidia OpenCL under Linux should work as well, but it is untested.
 +
 
 +
 
 +
'''Important!''' ATI OpenCL under Linux requires X server running and building with GUI staff in (GUI window application). Tested under Linux v2.6.36 32bit, X server v1.8.2, ATI proprietary drivers v10.10, ati stream sdk v2.2.
  
'''4th Jun 2009''' Since there's no public library available, OpenCL headers cannot be included to FreePascal package as untested.
+
[[Category:Parallel programming]]
 +
[[Category:Packages]]

Latest revision as of 14:44, 4 May 2013

OpenCL (Open Computing Language) is a framework for writing programs that execute across heterogeneous platforms consisting of CPUs, GPUs, and other processors. OpenCL includes a language (based on C99) for writing kernels (functions that execute on OpenCL devices), plus APIs that are used to define and then control the heterogeneous platform. OpenCL provides parallel programming using both task-based and data-based parallelism.

Official site

Online Man pages on the official site

Wikipedia OpenCL

OpenCL at Apple Developer library


OpenCL headers are available in standard FPC packages. Headers are can be used for:

  • MacOSX 10.6 OpenCL framework
  • NVidia OpenCL Windows .dll
  • ATI using ATI Stream SDK (ATI Stream SDK) under Linux. NVidia OpenCL under Linux should work as well, but it is untested.


Important! ATI OpenCL under Linux requires X server running and building with GUI staff in (GUI window application). Tested under Linux v2.6.36 32bit, X server v1.8.2, ATI proprietary drivers v10.10, ati stream sdk v2.2.