Photos from SC13

John ArrayFire, CUDA, Events, OpenCL Leave a Comment

SC13 was awesome this week! Tomorrow is the last day of the exhibition. For those of you that did not make it to the show, here are some pictures from our exhibit: The AccelerEyes Booth -------------------------------------------------------------------------------------------------------- ArrayFire OpenCL Demo on ARM Mali -------------------------------------------------------------------------------------------------------- ArrayFire CUDA Demo on NVIDIA K40 -------------------------------------------------------------------------------------------------------- ArrayFire OpenCL Demo on Intel Xeon Phi Coprocessor -------------------------------------------------------------------------------------------------------- ArrayFire OpenCL Demo on AMD FirePro GPU -------------------------------------------------------------------------------------------------------- It was a great show and wonderful to see so many ArrayFire users in person. If you could not attend and would like to learn more about our CUDA or OpenCL products or services, let us know! Related articles ArrayFire v2.0 Release Candidate Now Available for Download Two Kinds of Exhibits to Watch ...

ISC 2013 Keynote by Bill Dally of NVIDIA

John Computing Trends, Events Leave a Comment

Bill Dally of NVIDIA gave a wonderful keynote today at ISC 2013. He focused on addressing the challenges facing our market in getting to exascale computing. He talked about how Moore’s law is alive and well because transistors continue to double at an astonishing rate. However, the additional transistors are not translating into the same big performance gains as they did in the 1990’s. Whereas performance used to grow 50% per year, performance today is growing at a much slower pace. The biggest bottleneck to more performance is energy efficiency. Bill showed slides of chips and talked about the picojoules required to compute versus those required to move data and operands around the chip. The take home message was that ...

Beamforming with ArrayFire

Scott ArrayFire, Case Studies, CUDA Leave a Comment

Alessandro Savoia and researchers at Università degli Studi Roma Tre have achieved an order of magnitude improvement in the performance of a beamforming application using ArrayFire for GPU acceleration with CUDA-capable NVIDIA GPUs. This application involves conventional beamforming. Steps include the application of a time delay to each signal vector, summation across all vectors, and processing on the result. Processing includes demodulation, envelope extraction, and logarithmic compression. ArrayFire's functions for shifting, interpolation, and filtering made this application possible for acceleration on GPUs and reduced the time to develop significantly. Alessandro's benchmarks show that a CPU-only version was only running at 1 frame/sec, while the ArrayFire-accelerated version was running at 10-20 frames/sec, depending on the dataset. Alessandro and his team are looking forward to ...

7 Highlights of GTC 2013 - Day 4 of 4

John Events Leave a Comment

Day 4 at GTC is always a little less hyped than the first 3 days, but it is when some of the best sessions are found. Here are 7 of the highlights we've collected from our team on the last day of GTC 2013: Paulius Micikevicius of NVIDIA gave a great talk entitled, "Performance Optimization: Programming Guidelines and GPU Architecture Details Behind Them." It was so great, we have 2 highlights from this talk. The first Paulius highlight is the information about how instruction level parallelism is essential to fully take advantage of Kepler GPUs. Paulius gave a clear presentation on these difficult concepts. The second Paulius highlight is the thorough treatment of memory hierarchy for Kepler. It is very detailed and ...

7 Highlights of GTC 2013 - Day 1 of 4

John Events Leave a Comment

AccelerEyes is out in force at GTC. We ended up with 10 of our engineers and sales staff here onsite. I collected feedback from the team to learn what people enjoyed the most from today's activities. Here are 7 of the highlights we've collected from our team on the first day of GTC 2013: Will Ramey of NVIDIA kicked off GTC with a tutorial on the CUDA ecosystem. He talked about the three different approaches to getting GPU acceleration:  1) Libraries, 2) Compiler Directives, and 3) Programming Languages. He talked about how libraries, if you can find one for your application (hint, hint),  are the best of the 3 options, because you get great performance and you don't have to ...

ArrayFire Examples (Part 2 of 8) - Benchmarks

ArrayFire ArrayFire, Benchmarks, CUDA Leave a Comment

This is the second in a series of posts looking at our current ArrayFire examples. The code can be compiled and run from arrayfire/examples/ when you download and install the ArrayFire library. Today we will discuss the examples found in the benchmarks/ directory. In these examples, my machine has the following configuration:

Blas This example shows a simple bench-marking process using ArrayFire's matrix multiply routine. For more information on Blas, click here. The data measured in this example is the Giga-Flop (GFLOP Floating Point Operations Per Second). I got the following results using the example code on my machine:

Just for fun, I wrote a small program to perform a simple matrix multiply using the CPU in a triple-for loop (a pretty standard, but non-optimized solution). This ...

ArrayFire Examples (Part 1 of 8) - Getting Started

ArrayFire ArrayFire, CUDA Leave a Comment

This is the first in a series of posts looking at our current ArrayFire examples. The code can be compiled and run from arrayfire/examples/ when you download and install the ArrayFire library. Today we will discuss the examples found in the getting_started/ directory. Hello World Of course we start with the classic "Hello World" example, which walks you through the basics of using the ArrayFire library. Running this example will print out system and device information, as well as perform some basic matrix operations. This is a good place to get familiar with the basic data container for ArrayFire - the array.

Convolve In this example we show you how to perform a basic image convolution, as well as how ...

ArrayFire Reception in France

John ArrayFire, Case Studies, CUDA, OpenCL Leave a Comment

As an engineers company, we spend a lot of time wrestling in the weeds of low-level GPU and accelerator codes. This is our battleground, and it can often be dizzying in its complexity. Our whole purpose is to hide that mess and tame those low-level beasts so that ArrayFire users get better performance than anyone else. The joy of ArrayFire comes when we get feedback from ArrayFire users, often from different parts of the world. For instance, the week I share excerpts from two recent emails we received in France: 1) From Barep, a French manufacturing company:  "I think ArrayFire is a 'must have' library. It's very easy to use and can be used under Linux and Windows. Personally, I'm happy ...

Getting Started with ArrayFire - a 30-minute Jump Start

ArrayFire ArrayFire, C/C++, CUDA, OpenCL, Webinar 1 Comment

In case you missed it, we recently held a webinar on the ArrayFire GPU Computing Library. This webinar was part of an ongoing series of webinars that will help you learn more about the many applications of ArrayFire, while interacting with AccelerEyes GPU computing experts. ArrayFire is the world's most comprehensive GPU software library. In this webinar, James Malcolm, who has built many of ArrayFire's core components, walked us through the basic principles and syntax for ArrayFire. He also provided an overview of existing efforts in GPU software, and compared them to the extensive capabilities of ArrayFire. For example, the same application that takes 26 lines to write in Thrust, can be coded up in just 3 lines in ArrayFire! ArrayFire has supported ...

Exciting Updates from AccelerEyes

John Announcements, Jacket 4 Comments

We are pleased to announce today that MathWorks and AccelerEyes have started working together to provide the best overall solution for GPU computing in MATLAB® through the Parallel Computing Toolbox™ and MATLAB Distributed Computing Server™ from MathWorks. This new relationship will result in great product updates for end users of the Parallel Computing Toolbox™ and MATLAB Distributed Computing Server™. Since 2007, AccelerEyes has been a leader in developing GPU software, including Jacket.  AccelerEyes has sold Jacket as a 3rd-party add-on to the MathWorks MATLAB® product.  Effective today, AccelerEyes will discontinue new Jacket product sales.   All existing Jacket license holders will continue to receive support and maintenance from AccelerEyes for 1 year. All existing Jacket licenses are perpetual and will not expire.  Future GPU computing updates ...