Intel GNA Linux Driver Updated For Accelerating Speech Recognition, Noise Reduction

Written by Michael Larabel in Intel on 25 March 2021 at 09:18 AM EDT. 2 Comments
INTEL
While Intel is well known and loved for their generally very timely open-source hardware enablement under Linux, occasionally there are exceptions to that long-standing tradition of having the support squared away ahead of product launches. One of the areas where Intel has been slow at enabling their open-source Linux support is around their Gaussian and Neural Accelerator (GNA) but that driver is now coming together for being mainlined hopefully in the near future.

Found on Intel mobile SoCs going back to Ice Lake (well, Cannon Lake too) has been this Gaussian and Neural Accelerator, along with other Intel SoCs like Gemini Lake. Intel has supported the GNA under Linux using an out-of-tree kernel driver while this year they finally are working towards having a cleaned up driver upstreamed.

The Intel GNA is a neural co-processor that can be used for offloading inference workloads like speech recognition and noise reduction from the CPU to this PCI-based co-processor.

Back in February was the initial Intel GNA patches aiming for the upstream kernel. This week a second revision to the work was sent out for upstream review.

With the new patches, the Linux driver has been renamed from just being "gna" to "intel_gna". Similarly, the exposed device to user-space is formatted as /dev/intel_gnaX among other "Intel" additions to avoid any confusion or issues with any other similar non-Intel accelerators.

Various code clean-ups and fixes were also incorporated into these latest "intel_gna" Linux driver patches.

For now these latest Intel GNA Linux patches are residing on the kernel mailing list while we'll keep monitoring to see when they reach the upstream kernel.

Meanwhile for actually making use of this kernel driver, there is open-source Intel GNA user-space code for leveraging it. That open-source library has some basic code samples while Intel's OpenVINO is seemingly the major user so far of it under Linux. Once this driver is upstreamed, we'll see how else the Intel Gaussian and Neural Accelerator gets used by open-source developers considering this co-processor is found already across Ice Lake / Tiger Lake / Gemini Lake systems.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week