Home / News / Write AI code once, run anywhere—it’s not Java, it’s Intel’s oneAPI

Write AI code once, run anywhere—it’s not Java, it’s Intel’s oneAPI

Intel's "Mega Trends in HPC" boil down to AI workloads, running on many kinds of hardware, largely in cloud—not on-premise—environments.
Enlarge / Intel’s “Mega Traits in HPC” boil all the way down to AI workloads, operating on many sorts of {hardware}, largely in cloud—not on-premise—environments.
Intel Company

Saturday afternoon (Nov. 16) at Supercomputing 2019, Intel launched a brand new programming mannequin known as oneAPI. Intel describes the need of tightly coupling middleware and frameworks on to particular {hardware} as one of many largest ache factors of AI/Machine Studying improvement. The oneAPI mannequin is meant to summary that tight coupling away, permitting builders to concentrate on their precise challenge and re-use the identical code when the underlying {hardware} adjustments.

This kind of “write as soon as, run wherever” mantra is harking back to Solar’s early pitches for the Java language. Nevertheless, Invoice Savage, basic supervisor of compute efficiency for Intel, informed Ars that is not an correct characterization. Though every method addresses the identical primary downside—tight coupling to machine {hardware} making builders’ lives tougher and getting in the way in which of code re-use—the approaches are very completely different.

When a developer writes Java code, the supply is compiled to bytecode, and a Java Digital Machine tailor-made to the native {hardware} executes that bytecode. Though many optimizations have improved Java’s efficiency within the 20+ years because it was launched, it is nonetheless considerably slower than C++ code in most functions—usually, wherever from half to one-tenth as quick. Against this, oneAPI is meant to supply direct object code with no or negligible efficiency penalties.

After we questioned Savage about oneAPI’s design and efficiency expectations, he distanced it firmly from Java, stating that there isn’t a bytecode concerned. As a substitute, oneAPI is a set of libraries that tie hardware-agnostic API calls on to closely optimized, low-level code that drives the precise {hardware} out there within the native setting. So as an alternative of “Java for Synthetic Intelligence,” the high-level takeaway is extra alongside the traces of “OpenGL/DirectX for Synthetic Intelligence.”

For even higher-performance coding inside tight loops, oneAPI additionally introduces a brand new language variant known as “Knowledge Parallel C++” permitting even very low-level optimized code to focus on a number of architectures. Knowledge Parallel C++ leverages and extends SYCL, a “single supply” abstraction layer for OpenCL programming.

In its present model, a oneAPI developer nonetheless wants to focus on the fundamental {hardware} kind she or he is coding for—for instance, CPUs, GPUs, or FPGAs. Past that primary focusing on, oneAPI retains the code optimized for any supported {hardware} variant. This might, for instance, permit customers of a oneAPI-developed challenge to run the identical code on both Nvidia’s Tesla v100 or Intel’s personal newly launched Ponte Vecchio GPU.

Ponte Vecchio is the very first product in Intel’s new Xe GPU line and is focused particularly at HPC supercomputing and information heart use. Though neither Savage nor different Intel execs Ars spoke to had timelines or would converse to concrete merchandise, one slide from Intel’s Supercomputing 2019 presentation clearly reveals the Xe structure as encompassing workstation, cellular, and gaming use—so there could also be attention-grabbing occasions forward for rivals in these areas.

Savage informed Ars that though the present model of oneAPI does nonetheless require builders to code for a selected structure household—CPU, GPU, FPGA, and so forth—Intel plans for a future launch to additionally permit computerized collection of probably the most optimum {hardware} kind out there.

The oneAPI toolkit is offered to be used and testing now at Intel Devcloud.

About Jim Salter

Check Also

Why Does Google Say Chrome Is More Secure Than Edge?

Microsoft Google “recommends switching to Chrome to make use of extensions securely.” That’s unusual, as …

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.