The Parallel Universe, Issue #32: Computer Vision is Coming Soon to a Browser Near You

The Parallel Universe Cover 32My first exposure to the field of computer vision was Gary Bradski’s OpenCV* article in Dr. Dobb’s Journal. Gary was working in Intel Labs at the time. I’d just joined Intel a few months earlier and was surprised to learn that we were working in that area. OpenCV has come a long way since its first release 17 years ago. Among other things, it’s open-source and supported by OpenCV.org, a non-profit foundation. In this issue’s feature article, Computer Vision for the Masses, a group of collaborators from the University of California, Irvine, and Intel Labs describe their work to translate many of OpenCV’s key capabilities to JavaScript* to do high-performance computer vision within the Open Web Platform*. They present compelling examples of common computer vision applications like edge detection, face recognition, background subtraction, and image recognition using deep neural networks running within a browser.

Continuing with graphics and video processing, Up Your Game shows how to optimize game performance using Intel® Graphics Performance Analyzers (Intel® GPA). We present several use cases to show how different members of a game development team―like artists, designers, gameplay programmers, and game engine programmers―can take advantage of these analysis tools.

The Google File System* and MapReduce* ushered in the era of large-scale, distributed-memory data analytics back in 2003. Since then, many options have become available to data analytics and machine learning at scale. Apache Spark* is my current favorite, but I’ve experimented with Dask*, HPAT (the High-Performance Analytics Toolkit project from Intel Labs), and one or two others. In Harp-DAAL for High-Performance Big Data Computing, Professor Judy Qiu of Indiana University introduces a new framework that takes advantage of the highly-optimized Intel® Data Analytics Acceleration Library (Intel® DAAL). This article describes the framework and walks you through an example, complete with Java* code, showing how to do k-means clustering using Harp-DAAL.

From high-level abstractions, we move to the opposite extreme. Understanding the Instruction Pipeline offers a gentle, conceptual overview of the instruction pipeline and why it matters for performance on modern processors. We close this issue with two articles on boosting the performance of compute-intensive scientific applications: Parallel CFD with the HiFUN* Solver on the Intel® Xeon® Scalable Processor and Improving VASP* Materials Simulation Performance. The former presents a parallel performance tuning case study using a real fluid dynamics application. And the latter shows how to generate a concise summary of application performance using Intel® VTune™ Amplifier – Application Performance Snapshot, and describes an interesting new preview feature in Intel® MPI Library.

Future issues of The Parallel Universe will bring you articles on doing deep learning within the Apache Spark analytics framework, Java performance enhancements, profiling and tuning I/O performance, new features in Intel® Software Development Tools, and much more. Be sure to subscribe so you won’t miss a thing.

Henry A. Gabb
April 2018

Read This IssueSubscribe

For more complete information about compiler optimizations, see our Optimization Notice.