High-performance computing (HPC) brings up a range of issues beyond fast networks and hardware. Software is a key component, and many frameworks and middleware solutions can do the heavy lifting for developers.
For example, many companies have taken advantage of nVidia’s CUDA line of graphics processing units (GPUs), which also are supported by the OpenCL standard. Many companies are targeting OpenCL since it’s generic, allowing applications to be implemented on a range of platforms, not just nVidia GPUs. OpenCL works equally well on multicore CPUs, although performance depends upon the algorithms and the ability to map them to the underlying hardware.
Accessing the underlying hardware acceleration is only part of the challenge, albeit a major one. Another is moving data around the collection of processors and storage units. Faster serial fabrics help, but there is always a limit to what the hardware can provide. So what’s the alternative? Compression is one way to approach the problem.
Take Samplify’s Prism FP compression system, which is designed to work with floating-point data. It can deliver lossless or near lossless compression. But why would anyone want near-lossless compression?
As it turns out, many applications don’t require all the precision or resolution of a floating-point number. For example, an application may only need four significant digits. A compression technique that would retain that information while dropping less significant information could be used with the application.
Prism FP works on CPUs like x86 processors as well as multicore systems including CUDA, OpenCL, MPI, and OpenMP environments. It can be useful when storing information as well as compressing information to be sent over the wire.
One possible area where Prism FP could be handy is the GPU because of the GPU’s bandwidth issues. GPUs were initially designed for display chores where information would be loaded in the GPU memory and then processed repeatedly to generate new images. A x16 PCI Express link is pretty wide, but the GPU can handle more data depending upon the algorithms employed. Prism FP could operate on the GPU to decompress incoming data and compress results when the GPU is acting as a compute engine.
HPC results might be used to target a cruise missile, but the I/O for a system may be associated with a range of rugged devices. Eurotech’s Zypad BR2000 handheld computer is just one possiblity (see the figure). It is a complete system with an Intel E6xx Atom processor, two gigabit Ethernet ports, and support for wireless connectivity such as 802.11b/g/n, Bluetooth, and GPS. Rugged systems like the BR2000 have been around for ages, but these newer platforms deliver more performance using less power.
Tablets are also devices that have been useful in a range of military applications. Computing power is often an issue but screen readability is critical since an unreadable display makes the device useless. The xplore iX104C5 has a dual-mode, sunlight-readable display, and it is even submersible. Powered by an Intel Core i7 processor, the tablet supports a range of wireless protocols.
GPUs are also starting to crop up in these types of mobile platforms. This opens up more computing possibilities in the field.