We are excited to report a great kickoff to 2022 with this quick list of notable ArrayFire developments underway. ArrayFire v3.8.1 Release We recently announced ArrayFire v3.8.1, available on Github (source) and on our download page (binaries). Flashlight Project for Machine Learning The open source Flashlight project from Facebook is growing rapidly. In a single repository, Flashlight provides apps for research across multiple domains: Automatic speech recognition Image classification Object detection Language modeling Flashlight builds atop ArrayFire as the tensor library for GPU and CPU training. Parallel Universe Magazine ArrayFire was recently featured in Intel’s Parallel Universe Magazine. Check out the article entitled, “ArrayFire Interoperability with oneAPI, Libraries, and OpenCL Code.” This article explains how, with minor code changes, whole OpenCL libraries …
Dissipative Dynamics at Conical Intersections
Researchers from Nanyang Technological University in Singapore presented results from simulations achieved with ArrayFire in the Faraday Discussions journal of The Royal Society of Chemistry. The simulations model the effects of a dissipative environment on the ultrafast vibronic couplings at conical intersections. In this post, we first define these terms to gain understanding. Subsequently, we provide a summary of this research and the utility provided by ArrayFire in the simulation framework. Defining Terms Dissipative Environment (ref1, ref2) A dissipative system is a thermodynamically open system that is operating out of, and often far from, thermodynamic equilibrium in an environment with which it exchanges energy and matter. A tornado may be thought of as a dissipative system. Dissipative systems stand in …
ArrayFire v3.8.1 Release
We are excited to share the v3.8.1 bugfix release of ArrayFire! In this post, we share an overview of the changes to ArrayFire in its 3.8.1 bugfix release. The binaries and source code can be downloaded from these locations: Official installers GitHub repository Official APT repository The bugfix release consists mainly of overall improvements to the ArrayFire 3.8 codebase as well as bugfixes. Improvements As always, a number of improvements have been made to all backends. We continue to clean up the codebase and update the library to support newer frameworks. In addition to general maintenance and bookkeeping, the following improvements have been added: moddims now uses JIT approach for certain special cases JIT Performance Optimization Improved readability of log …
Dynamical Properties of a Nonlinear Growth Equation with ArrayFire
Researchers at the Université de Picardie Jules Verne in France and the University of Miskolc in Hungary use ArrayFire in the analysis and study of the dynamical properties of a nonlinear growth equation, as described in this paper. Oftentimes, technical computing problems are simply intractable on CPUs and bigger devices like GPUs are required in order to get the job done. In this case, ArrayFire was an easy-to-use option for these researchers to build and analyze math quickly and efficiently on the GPU. From their abstract: “The conserved Kuramoto-Sivashinsky equation is considered as the evolution equation of amorphous thin film growth in one- and in two-dimensions. The role of the nonlinear term and the properties of the solutions are investigated …
Synthetic Aperture Radar on the Jetson TX1
Researchers at Peter the Great St. Petersburg Polytechnic University have implemented a synthetic aperture radar processing on the Jetson TX1 Platform using ArrayFire as described in this paper. The paper introduces SAR as “a remote sensing technique producing high-resolution radar images of the Earth’s surface. SAR technology allows obtaining wide swath radar images of objects at a considerable distance regardless of the weather and lighting conditions. It can be used by unmanned aerial vehicles and space satellites. Thus, SAR technology allows solving various problems, such as: detecting small objects (vehicles, airplanes, ships), assessing the state of railways, airfields, seaports, mapping an area, assisting in geological exploration, mapping vegetation, detecting oil spills and pollution as well as many other tasks.” The …
CUDA Computing on Google Colab with ArrayFire
For the first-time in our 14 year existence, we are now able to provide our community with the ability to run ArrayFire programs for free within minutes. Before today, users would have to download and install the library on their own systems, which can be a hassle if you just want to play around with some code and benchmarks. Today, we’re excited to announce that ArrayFire is available on Google Colab, the free GPU computing cloud service from Google. Colaboratory, or “Colab” for short, allows you to write and execute Python in your browser, with Zero configuration required, free access to GPUs, and easy sharing. You can jump right in and start playing with this new tool: Click Here to …
Case Study: A Fortune 300 Financial Company
A Fortune 300 Financial Company located in the North East USA ported their CPU code (C/C++) to CUDA and this enabled them to speed up the necessary financial calculations. Their primary objective was to reduce the time taken to run this code. Before porting to CUDA, they required ten to twelve hours to run the entire code. After porting to CUDA, they were able to do the same work in about 30 minutes. The Client has several C/C++ programmers in their team and they trained many of them to use CUDA. Their code used CUDA to speed up a calculation using Monte Carlo methods to analyze various scenarios in their hedge-fund projection system (HPS). The major portion of their calculations was …
Case Study: Sleepmed
Sleepmed is a biomedical company that focuses on improving the health and quality of life of those who suffer from sleep disorders. Sleepmed is the nation’s leader in sleep diagnosis and provides services to more than 80,000 patients annually in one of their 200 labs located in 32 states across the USA. To accomplish this task they created hardware that automatically collects a few gigabytes of important diagnostic data on patients when they sleep. These data are automatically reduced and processed to reveal important events which are later interpreted by sleep specialists. Mission SleepMed was in the process of developing new data collection hardware which, in principle, could share a significant fraction of the code base with the existing hardware. …
Case Study: Reveal Imaging
Iterative reconstruction from projections is typically a function reserved for the medical industry. This approach allows medical professionals to reconstruct computed tomography (CT) images from acquired data; the reconstructed images display virtual “slices” of a scanned object, such as a heart or brain. In reconstructing an image from the data, algorithms are used to approximate the solution. The closer the solution, the better the reconstruction. Multiple iterations produce more accurate solutions, and, thus, higher-quality images. This technique, however, consumes computation time; speeding the process through the GPU is one solution to this problem. Mission Reveal Imaging, a SAIC company, uses this CT technology in developing threat-detection products for transportation systems—such as cargo and baggage screening in airports—and in securing facilities and …
Case Study: 3Dfit App for glasses.com
Many find the experience of purchasing new glasses stressful. Even simply trying on frames can be uncomfortable when done in a public setting. Glasses.com set out to improve the experience by providing customers a way of virtually trying on glasses frames in the comfort of their homes via smartphone or tablet. The Glasses.com app takes a picture of the user’s face, creates a 3D model of facial features, and virtually places selected frames on the user’s 3D image. The user is then free to view the 3D image from a variety of angles. The application relies on computer vision to recognize the features of a user’s face and then generate an accurate, high-fidelity, 3D model of that face. Virtual frames …