5 Ways of Parallel Programming

Modern computing hardware is all about parallelism. This is because we essentially hit the wall several years ago on increasing core clock frequency to speedup serial code execution. The transistor count has continued to follow Moore’s Law (doubling every 1.5-2 years) but these transistors have mostly gone into multiple cores, vector units, memory controllers, etc. on a single die. To utilize this hardware, software needs to be written to take advantage of it, i.e. you have to go parallel.

GTC 2015 Deep Learning and OpenPOWER

Another great GTC meeting. NVIDIA does this right! The most interesting aspects for me this year were the talks on “Deep Learning” (Artificial Neural Networks) and OpenPOWER. I have some observations and links to recordings of the keynotes and talks. Enjoy!

NVIDIA CUDA GPU computing on a (modern) laptop

Modern high-end laptops can be treated as desktop system replacements so it’s expected that people will want to try to do some serious computing on them. Doing GPU accelerated computing on a laptop is possible and performance can be surprisingly good with a high-end NVIDIA GPU. [I’m looking at GTX 980m and 970m ]. However, first you have to get it to work! Optimus technology can present serious problems to someone who wants to run a Linux based CUDA laptop computing platform. Read on to see what worked.

Intel vs NVIDIA, IBM, Mellanox, AMD and everybody!

The next 18 months are going to see more shakeup and factioning in the computing world than we have seen in over a decade. Intel is pulling more and more of the compute architecture onto a single piece of silicon and tightly integrating the whole hardware stack. That’s good and bad. It may let them achieve better performance. However, this is going to leave users with a choice of “all Intel” or something else entirely. And, the “something else” is starting to seriously take shape.

NVIDIA CUDA install on CentOS 6.6 [SOLVED]

If you have done a fresh install of CentOS 6.6 or “updated” to it from a 6.5 install and you are setting up NVIDIA CUDA 6.5 you may be having trouble with a failed build of the nvidia-uvm kernel module. Read on for a fix …

Intel Xeon E5 v3 Haswell-EP Buyers Guide

The new Xeon E5 v3 Haswell processors are here, all 30+ of them! There is a bewildering variety of clock speeds, core counts, and power usage. There are processors in the new v3 familly ranging from the single socket E5-1620v3 with 4 cores at 3.5 GHz to the dual socket E5-2699v3 with 18 cores at 2.3GHz. How do you make a choice for a new system?!

How do these new processors perform when you programs parallel scaling is less than perfect?

Xeon E5 v3 Haswell-EP Performance — Linpack

The Intel Xeon E5 v3 Haswell EP processors are here. The floating point performance on these new processors is outstanding. We run a Linpack benchmark on a dual Xeon E5-2687W v3 system and show how it stacks up against several processors.

Memory Performance for Intel Xeon Haswell-EP DDR4

Memory bandwidth is often an important factor for compute or data intensive workloads. The STREAM benchmark has been used for may years as a measure of this bandwidth. We present STREAM results for the new Xeon E5 v3 Haswell processor with DDR4 memory and compare this with an Xeon E5 v2 Ivy Bridge system.