Two Articles on Vulkan

>> Saturday, August 29, 2015

Still no hard documentation, but here are two interesting articles written by developers who are already using the Vulkan API:

  • Nermin Hajdarbegovic wrote a brief overview of the Vulkan API.
  • Sascha Willems wrote an article on his initial experiences with Vulkan.


Vulkan News

>> 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:

  1. Steam and LunarG are working together to provide support tools for Vulkan. Their presentation is on YouTube.
  2. Piers Daniell of Nvidia gave a high-level talk (PDF) on the Vulkan language and Vulkan development.
  3. Google announced that Android will support Vulkan in addition to OpenGL ES.
Still no drivers or documentation on the API, but the Google announcement is certainly good news. Android graphics developers will probably continue to use OpenGL ES, but if Vulkan compute kernels can be executed on Android, I'll bet Renderscript won't last much longer.


The AMD Compute Libraries

>> 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
And two libraries intended to be run on CPUs:
  • BLIS - framework for "instantiating BLAS-like libraries"
  • libFlame - matrix operations, similar to LAPACK
I'd be interested to know how the clSparse functions compare to sparse matrix functions running on a CPU. I wrote some OpenCL sparse matrix routines for the book (Chapter 13), but the algorithms don't easily lend themselves to parallel computation, so it's hard to get good performance.


Free OpenCL Libraries

>> 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
For more tools and resources, I strongly recommend the list maintained by StreamComputing.


Intel and Altera, Again

>> 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.


Points of Interest

>> 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.


Intel and Altera

>> 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.


  © Blogger template Werd by 2009

Back to TOP