Skip to content

Latest commit

 

History

History
56 lines (33 loc) · 1.46 KB

README.md

File metadata and controls

56 lines (33 loc) · 1.46 KB

Accelerated TinyMPC

This repository contains the implementation of Accelerated TinyMPC, a project focused on design space exploration of embedded architectures for real-time optimal control. It aims to profile, optimize, and accelerate TinyMPC workloads using scalar CPUs, vector architectures, and domain-specific accelerators. The project provides profiling and acceleration results; and demonstrates quantitative performance and area trade-offs across various architectures, aiming to find the most effective hardware optimizations for robotic model-based control algorithms.

Report

For detailed insights into the design space exploration and performance evaluations, please refer to the attached report:
Design-Space-Exploration-of-Embedded-SoC-Architectures-for-Real-Time-Optimal-Control.pdf


Usage

Building

  1. On terminal, clone this repo

    git clone https://github.com/ucb-bar/Accelerated-TinyMPC.git
    cd Accelerated-TinyMPC
    
    
  2. Navigate to root directory and run

mkdir build && cd build
  1. Run CMake configure step
cmake ../
  1. Build TinyMPC
make 

Examples

  • Run the quadrotor_hovering example
./examples/quadrotor_hovering
  • Run the codegen_cartpole example then follow the same building steps inside that directory
./examples/codegen_cartpole