1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Memory
  5. Motherboards
  6. Processors
  7. Software
  8. Storage
  9. Operating Systems


Facebook RSS Twitter Twitter Google Plus


Phoronix Test Suite

OpenBenchmarking.org

LIBCLC: An OpenCL C Library Implementation

Compiler

Published on 19 October 2011 01:14 PM EDT
Written by Michael Larabel in Compiler
4 Comments

It was just two days ago that the Portable OpenCL project was announced, but today there's another open-source OpenCL project that takes advantage of LLVM/Clang: libclc, an OpenCL C library implementation.

This library provides a reference OpenCL C library implementation that's BSD-licensed and implements the library requirements of the OpenCL 1.1 specification. The library is meant to be used with LLVM's Clang OpenCL front-end, which isn't a problem with most of the open-source and proprietary OpenCL drivers utilizing this compiler.

From the project's announcement to LLVM developers, "libclc is designed to be portable and extensible. To this end, it provides generic implementations of most library requirements, allowing the target to override the generic implementation at the granularity of individual functions."

The project creator, Peter Collingbourne, additionally writes:
An example of such a host library is NVIDIA's OpenCL host library for PTX -- the intention is to at some point provide a mechanism for using the NVIDIA implementation of OpenCL with Clang, libclc and LLVM's PTX backend instead of NVIDIA's own OpenCL compiler. Another example would be POCL's host library, and the POCL developers have expressed an interest in using libclc as their OpenCL C library instead of developing their own.

I will hope to find time over the next few weeks to add libclc support to the Clang driver.

At least things are finally beginning to heat-up for OpenCL in the Linux and open-source worlds. 2012 should be an interesting year, assuming the open-source GPU drivers manage to get OpenCL working properly in a modest manner over Gallium3D. There's still at least one related announcement expected before year's end.

About The Author
Michael Larabel is the principal author of Phoronix.com and founded the web-site in 2004 with a focus on enriching the Linux hardware experience and being the largest web-site devoted to Linux hardware reviews, particularly for products relevant to Linux gamers and enthusiasts but also commonly reviewing servers/workstations and embedded Linux devices. Michael has written more than 10,000 articles covering the state of Linux hardware support, Linux performance, graphics hardware drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated testing software. He can be followed via and or contacted via .
Latest Articles & Reviews
  1. Samsung 850 EVO SSD Linux Benchmarks
  2. Kubuntu 15.04 Is Turning Out Quite Nice, Good Way To Try Out The Latest KDE
  3. 5-Way Linux Distribution Comparison On The Core i3 NUC
  4. OCZ ARC 100 Linux SSD Benchmarks
  5. Lenovo ThinkPad X1 Carbon Works Great As A Linux Ultrabook
  6. Transcend SSD370 256GB
Latest Linux News
  1. Kdenlive Ported To Qt5/KF5, Coming To KDE Applications 15.04
  2. HTC & Valve Partnered Up For The Steam VR Headset
  3. 8cc: A Small C11 Compiler
  4. Not Everyone Likes The Possible "VULKAN" Name For Next-Gen OpenGL
  5. The Binary Blobs Making Up Coreboot
  6. Linux 4.0 & LLVM vs. GCC Yielded Much Interest This Month
  7. XBMC/Kodi 15.0 Alpha 1 Released
  8. Xfce 4.12 Released After Nearly Three Years Of Work
  9. The Khronos Group Filed A Trademark On "Vulkan" API
  10. Mozilla Thunderbird Adoption Climbs, Thunderbird 38 In May
Most Viewed News This Week
  1. Linux 4.0-RC1 Tagged, Linux 4.0 Will Bring Many Notable Improvements
  2. Screenshots Of The GNOME 3.16 Changes
  3. More Proof That Allwinner Is Violating The GPL
  4. The Tremendous Features Of Fedora 22
  5. Krita 2.9 Released, Their Biggest Release Ever
  6. Linux 4.0 Doesn't Have The Weirdest Codename
  7. A Single UEFI Executable With The Linux Kernel, Initrd & Command Line
  8. Canonical Comes Up With Its Own FUSE Filesystem For Linux Containers
%%CLICK_URL_UNESC%%