Skip to main content

LinuxFoundationX: RISC-V Toolchain and Compiler Optimization Techniques

Develop a working knowledge of the internals of compiler toolchains and compiler optimization techniques with a focus on RISC-V applications.

RISC-V Toolchain and Compiler Optimization Techniques
7 weeks
1–2 hours per week
Self-paced
Progress at your own speed
Free
Optional upgrade available

There is one session available:

After a course session ends, it will be archivedOpens in a new tab.
Starts Mar 27
Ends Nov 21

About this course

Skip About this course

As RISC-V has made it easier to bring up processor chipsets, the need for compiler engineers in the RISC-V ecosystem has increased. There is an implicit need for toolchain experts who can help RISC-V vendors gain an edge over competitors with their expertise in compilation technologies. Learning about internals of the toolchain, building and debugging RISC-V applications will allow you to work with thousands of companies that are building the latest hardware technologies.

This course is designed for engineers working with RISC-V vendors who are designing their own architectures, and those using RISC-V development boards to build applications. It is also useful for RISC-V application developers looking to improve performance or reduce the code size of their applications, toolchain developers, compiler engineers/performance engineers, and computer science students aspiring to major in systems software.

This course begins with an introduction to the compiler toolchain and concepts of cross-compilation. You will learn how to use popular compiler toolchains (both LLVM and GCC) to build RISC-V applications. You will also learn how to debug toolchain issues and what resources to consult when you need help. This course will help you optimize applications for code size or performance and gain an understanding of the demands of applications with instrumentation techniques.

The course prepares you to apply to in-demand job opportunities like toolchain engineers or systems performance engineers as most large organizations have a difficult time finding engineers who are good with performance optimizations. This is a beginner-level course to get you started with optimizing data center applications and mobile applications for performance. It enables you to work in startups building RISC-V-based devices and IOT systems that are resource-constrained. The course will also help undergraduate students get started with compiler toolchains and equip them with skills to optimize applications using compiler technologies.

At a glance

  • Institution: LinuxFoundationX
  • Subject: Computer Science
  • Level: Intermediate
  • Prerequisites:

    We presume the student will have familiarity with C/C++ applications, how programs are compiled to make them executable as well as the basics of computer science (Systems level 101 courses). Learners should also be familiar with basic git commands and know how to install various Linux packages.

    For chapter 3 of this course, you will need an x86-64-based Linux machine.

  • Language: English
  • Video Transcript: English
  • Associated skills:Toolchain, Debugging, Reduced Instruction Set Computing, Internet Of Things (IoT), Computer Science, Mobile Application Development, Optimizing Compilers, Low Level Virtual Machine (Free Compilers And Interpreters)

What you'll learn

Skip What you'll learn
  • Discuss compiler toolchain and concepts of cross-compilation.
  • Understand how to use popular compiler toolchains (both LLVM and GCC) to build RISC-V applications.
  • Learn how to debug toolchain issues and what resources to consult when you need help.
  • Optimize applications for code size or performance.
  • Get an understanding of the demands of the application with instrumentation techniques.
  • Welcome!
  • Chapter 1. Compiler toolchains
  • Chapter 2. Introduction to compiler optimizations
  • Chapter 3. Building RISC-V Applications
  • Chapter 4. Debug toolchain issues
  • Final Exam (verified track only)

Interested in this course for your business or team?

Train your employees in the most in-demand topics, with edX For Business.