Leveraging RISC-V for AI and Machine Learning

Leveraging RISC-V for AI and Machine Learning

Dec. 12, 2017
In an attempt to achieve the best TFLOPS per watt for machine learning, Esperanto Technologies is adopting RISC-V in its latest processors.

This article is part of TechXchange: RISC V

It’s a work in progress, but Esperanto Technologies is looking to use RISC-V technology in artificial-intelligence (AI) and machine-learning (ML) applications. These days, ML, which is a branch of AI, means deep neural networks (DNNs). That, in turn, requires high-performance computing tailored for processing these types of networks.

Esperanto is developing the ET-Maxion and ET-Minion RISC-V processors to address this growing niche, which up to now has been dominated by GPGPUs and custom hardware designs. Also part of the mix is the ET-Graphics core that targets graphics solutions.

The company’s goal is to have the best teraFLOPS per watt using RISC-V for ML. It will do so using RISC-V Domain Specific Extensions (DSEs), including a RISC-V Vector ISA, Tensor instructions, and additional hardware acceleration. One advantage of RISC-V is that it doesn’t use the entire instruction space, making DSEs possible. Of course, one implementation with a DSE may differ from another, so applications would not necessarily be portable unless they were limited to the common RISC-V subset.

Esperanto is aiming for TSMC 7-nm silicon. The ET-Maxion core is initially based on the open-source, Berkeley Out-of-Order (BOOM) RISC-V processor architecture, although Esperanto plans on significant extensions. The company will continue to manage and support the open-source BOOM repository, but the advanced version will be part of the licensable technology.

The ET-Maxion starts with the 64-bit RISC-V RV64GC instruction set. The core has an out-of-order (OOO) pipeline with multiple cache levels and multiprocessor support.

The ET-Minion is designed for energy-efficient and floating-point intensive tasks. It uses a 64-bit RISC-V instruction set with an in-order pipeline and DSEs. The vector extensions are supported by an integrated vector floating-point unit. The Tensor instructions and other enhancements target machine-learning optimizations as well as support for graphics operations. They’re designed to handle multiple threads of execution.

The target system-on-chip (SoC) will include 16 ET-Maxion RISC-V cores with private L1 and L2 caches, 4096 ET-Minion RISC-V cores, plus hardware accelerators. An on-chip network links all processors within a single address space, providing cache-coherent support. It will also have high-bandwidth DRAM interfaces.

These are ambitious goals, but simulations have proven promising in terms of performance and energy efficiency. Esperanto even developed a shader compiler so that the array of RISC-V cores can tackle graphics chores normally handled by a GPGPU.

Having a large array of cores that can run the RISC-V provides a flexible computing platform. Using DSEs allows these to be configured to specific applications spaces while retaining a common programming environment versus more architecture-specific platforms like GPGPUs.

Esperanto has some significant backing from Western Digital, more known for its storage solutions. Western Digital is riding the RISC-V wave, and plans on using processors based on the RISC-V instruction set in its new products.

About the Author

William G. Wong | Senior Content Director - Electronic Design and Microwaves & RF

I am Editor of Electronic Design focusing on embedded, software, and systems. As Senior Content Director, I also manage Microwaves & RF and I work with a great team of editors to provide engineers, programmers, developers and technical managers with interesting and useful articles and videos on a regular basis. Check out our free newsletters to see the latest content.

You can send press releases for new products for possible coverage on the website. I am also interested in receiving contributed articles for publishing on our website. Use our template and send to me along with a signed release form. 

Check out my blog, AltEmbedded on Electronic Design, as well as his latest articles on this site that are listed below. 

You can visit my social media via these links:

I earned a Bachelor of Electrical Engineering at the Georgia Institute of Technology and a Masters in Computer Science from Rutgers University. I still do a bit of programming using everything from C and C++ to Rust and Ada/SPARK. I do a bit of PHP programming for Drupal websites. I have posted a few Drupal modules.  

I still get a hand on software and electronic hardware. Some of this can be found on our Kit Close-Up video series. You can also see me on many of our TechXchange Talk videos. I am interested in a range of projects from robotics to artificial intelligence. 

Sponsored Recommendations

Comments

To join the conversation, and become an exclusive member of Electronic Design, create an account today!