Intel’s HPC program has many fine features and it would be wrong to assume it is only of relevance to the HPC community, because what HPC is today will be in your smartphone tomorrow. In addition, the growth of artificial intelligence (AI) and related machine learning applications in software applications and intelligent robots will need resources to process massive amount of data in real time, and this will bring HPC/supercomputing out of the laboratory and take niche applications and into the wider field, such as into consumer domains. In this context, what Intel and others in the microprocessor business do has relevance for developers building next-generation applications.
Intel’s aim is to focus on programmer productivity in the new world of parallel processing
The stated aim of Intel is to ensure that as much as possible of the heavy lifting requiring for parallel processing is done by the chips and tools, allowing programmers to continue to program as far as possible, as they have done on serial architectures. Intel’s innovations such as Intel Threading Building Blocks (C++ template library for multi-core processors) and Intel Cilk Plus (general-purpose programming language for multi-threaded parallel processing), as well as support for the OpenMP standard, are designed to support this aim.
Intel provides developers with a range of tools (many of these are free or have free tiers) to develop on its platform, but where the focus is on the HPC community, it targets C/C++ and Fortran development. To enfranchise the new generation of entrepreneurs building AI and robotic applications, Intel needs to widen its programming tools support to Python. Python has become the primary teaching language in computer science departments across 39 of the US’s top universities, but crucially, it is also one of the top languages practiced (and supported with rich numeric libraries) in science and engineering. Intel finds that its HPC community is not requesting Python, and that for optimal performance, Python needs to be integrated with C code. However, Ovum believes that if Intel supports Python with its tools, it will attract Python developers.
Intel processors for multiple scenarios
At the low-power end targeting mobile and the Internet of Things is Intel Quark, while for business/consumer applications, there is a range of Intel Atom, Intel Core, and Intel Xeon E3 microprocessors that combine central processing unit (CPU) cores and graphics processing unit (GPU) execution elements on a single silicon crystal (die). At the high-power end targeting HPC is the Intel Xeon Phi. Unlike Nvidia, which creates GPUs for both graphics and general compute HPC applications, Intel targets its GPUs for purely graphics purposes, with Intel Xeon Phi, the many integrated core (MIC) architecture, targeting HPC.
Ovum sees robotics and AI as a major growth industry in the next decade, and these technologies need to perform a massive amount of numeric processing, which is ideal for parallel HPC type technologies. Intel is well placed to support this new market with an opportunity to show how CPU, GPU, and MIC microprocessors tightly integrated on a single silicon die can improve performance.
Machine Learning in Business Use Cases, IT0022_000335 (Apr 2015)
“Open source is accelerating artificial intelligence innovation”, IT0022_000328 (Mar 2015)
Philip Guo, Python is Now the Most Popular Introductory Teaching Language at Top U.S. Universities, Blog on the Communications of the ACM site ‘http://cacm.acm.org/’, July 2014.
Michael Azoff, Principal Analyst, IT Infrastructure Solutions