gocl

module
v0.0.0-...-b13bb0e Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 14, 2016 License: MIT

README

gocl

Go OpenCL (GOCL) Binding (http://www.gocl.org)

Library documentation:

http://www.khronos.org/registry/cl/sdk/1.1/docs/man/xhtml/

http://www.khronos.org/registry/cl/sdk/1.2/docs/man/xhtml/

http://www.khronos.org/registry/cl/sdk/2.0/docs/man/xhtml/

In order to build this, make sure you have the required drivers and SDK installed for your graphics card. You will need at least opencl.lib from Intel/AMD/NVIDIA:

http://software.intel.com/en-us/intel-opencl

http://developer.amd.com/tools-and-sdks/opencl-zone/

https://developer.nvidia.com/opencl

The locations of the library and include file can be supplied by way of environment variables, for example:

export CGO_LDFLAGS=-L$OPENCLSDKROOT/lib/x86 (or null for NVIDIA and Mac OSX)

export CGO_CFLAGS=-I$GOPATH/src/gocl/android/include (gocl/android/include/CL have the latest OpenCL 2.0 include files from https://www.khronos.org/registry/cl/)

===============================================

To build OpenCL 1.1/1.2/2.0 compliance C-style binding (replacing "clxx" with "cl11"/"cl12"/"cl20"):

go build -tags="clxx" gocl/cl

go test -v -tags="clxx" gocl/cl_test

go install -tags="cl11" gocl/cl_demo/opencl11/ch(x) (Examples in "OpenCL in Action")

go install -tags="cl12" gocl/cl_demo/opencl12/chapter(x) (Examples in "Heterogeneous Computing with OpenCL, 2nd Edition")

go install -tags="cl20" gocl/cl_demo/opencl20/x (Examples in "AMDAPPSDK and INTELOCLSDK")

===============================================

To build OpenCL 1.1/1.2/2.0 compliance OO-style binding (replacing "clxx" with "cl11"/"cl12"/"cl20"):

go build -tags="clxx" gocl/ocl

go test -v -tags="clxx" gocl/ocl_test

Directories

Path Synopsis
android
example/goclinfo
An app that draws a blue triangle on a red background.
An app that draws a blue triangle on a red background.
example/libhello
This is the Go entry point for the libhello app.
This is the Go entry point for the libhello app.
example/libhello/hi
Package hi provides a function for saying hello.
Package hi provides a function for saying hello.
example/libhello/hi/go_hi
Package go_hi is an autogenerated binder stub for package hi.
Package go_hi is an autogenerated binder stub for package hi.
cl_demo
opencl12/chapter2
This program implements a vector addition using OpenCL
This program implements a vector addition using OpenCL
opencl20/cgsvm
This program demo OpenCL 2.0 Coarse-Grain SVM memory feature
This program demo OpenCL 2.0 Coarse-Grain SVM memory feature
opencl20/pipe
This program demo OpenCL 2.0 Pipe feature
This program demo OpenCL 2.0 Pipe feature

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL