Stream Computing

The Standard Compute Layer Library: libstdcl

The standard compute layer library (libstdcl) provides a simple interface to the OpenCL™ API for parallel programming of heterogeneous platforms with co-processor devices. libstdcl is designed to support the most typical use-cases in a style inspired by familiar and traditional UNIX APIs for C programming. The libstdcl library implemented by Brown Deer Technology is freely available and distributed under the GNU Lesser General Public License (LGPL).  

    Download     Manual Pages

Features and Support

The libstdcl library provides the following features and support:

  • Default managed OpenCL contexts
  • Dynamic OpenCL program loader support
  • Management of OpenCL kernel and memory operations
  • Utilities for linking, tracing and timing

Download

libstdcl-0.7.2-BETA.tgz (source)
libstdcl-0.7.2-BETA_x86_64.tgz (Linux x86_64, built on openSUSE 11.1)

Dependencies:

OpenCL (tested against AMD ATI Stream SDK v2.0 BETA) download here.
libelf (tested against libelf-0.8.12) download here.

Manual Pages

The following man pages provide details on the use of the libstdcl interface to OpenCL™.

general information: stdcl(3)
memory management: clmalloc(3), clfree(3), clsizeofmem(3), clmsync(3), clmattach(3), clmdetach(3)
dynamic program loader: clopen(3), clsym(3), clclose(3), clerror(3), claddr(3), clload(3)
kernel execution: clfork(3), clwait(3), clarg_set(3), clndrange_init(3), clndrange_set(3)
tools: clld(1), cltrace(1)