>> Sunday, August 16, 2015
The SIGGRAPH 2015 conference ended on 8/13, and like many, I was eager to hear about Vulkan, the upcoming replacement for OpenGL. Here's what we know:
- Steam and LunarG are working together to provide support tools for Vulkan. Their presentation is on YouTube.
- Piers Daniell of Nvidia gave a high-level talk (PDF) on the Vulkan language and Vulkan development.
- Google announced that Android will support Vulkan in addition to OpenGL ES.
>> Tuesday, August 11, 2015
AMD has released an open-source set of OpenCL libraries called the AMD Compute Libraries, or ACL. This contains four libraries intended for GPUs:
- clBLAS - linear algebra functions
- clFFT - Fast Fourier Transform
- clSparse - Sparse matrix operations
- clRNG - Random number generation
>> Sunday, June 14, 2015
While reading through the Khronos site, I was surprised by how many OpenCL libraries are freely available for download. Here are three that look particularly interesting:
- clMath - includes OpenCL code for the FFT, BLAS operations, and random number generation
- Advanced Simulation Library (ASL) - physics simulator using Lattice Boltzmann methods
- ViennaCL - A linear algebra library with a Python wrapper
>> Monday, June 1, 2015
After months of rumors, it's finally official. Intel has agreed to pay $16.7B to purchase Altera. This will make them a major force in the world of field-programmable gate arrays (FPGAs).
Some analysts have questioned this deal, stating that the FPGA market is too small to be worth Intel's time. But they don't understand. Intel is going to use Altera's technology to create an entirely new type of computational device. Like peanut butter and chocolate, FPGAs and CPUs are two great things that go great together.
I'd love to know what the killer app will be. Database acceleration? Video compression? Deep packet inspection? According to this posting, Intel is looking for someone who knows OpenCL, FPGAs, and RF circuits. It looks like they're trying to perform all of a smartphone's processing on one device. Should we call it a smartphone on a chip (SPoC)? How about Field Programmable Processing Unit (FPPU)?
At the very least, I hope Intel will fix the vendor lock-in problem. Right now, you can't program Xilinx FPGAs without Xilinx's software and you can't program Altera FPGAs without Altera's software. But if Intel allows third-party tools to access their FPGA fabric the way they allow third-party access to their processors, it will be a major step forward.
>> Monday, April 27, 2015
- Alexander Overvoorde wrote a great post on the Mantle API, and explains how it can be used in a demo application.
- According to AnandTech, Nvidia's latest GPU driver provides support for OpenCL 1.2. I haven't found any announcement or confirmation from Nvidia.
- The International Workshop on OpenCL (IWOCL) will feature an advanced hands-on tutorial from Simon McIntosh-Smith. Topics include SYCL, SPIR, and features related to OpenCL 2.0. Dr. McIntosh-Smith has released a free tutorial on OpenCL here.
>> Sunday, March 29, 2015
Edit: As of 4/9, it looks like the Intel-Altera buyout discussions have come to a halt.
There's been no official word, but reputable sources are reporting that Intel is taking steps to buy Altera. In all likelihood, this is related to Intel's plan to integrate FPGA fabric into their upcoming Xeon processors. I've discussed this before (here and here).
I'll be surprised if Intel allows developers to access the FPGA fabric with traditional design languages like VHDL or Verilog. It would be safer to provide access through OpenCL kernels. That is, a design based on a simple procedure wouldn't be as susceptible to low-level issues like race conditions or clock skew. Still, current FPGA design tools are expensive (especially Altera's) and it can take hours to convert any type of design to an FPGA bitstream.
I'm particularly curious whether Intel will allow partial reconfiguration of the FPGA fabric. A long time ago, I worked on a DARPA project to implement cognitive modeling with FPGAs, and I became fascinated with the field of reconfigurable computing. Personally, I think hard artificial intelligence will only become realizable when devices are capable of rewiring their internal circuitry.