Sign inSign up

agostini01/soda

By agostini01

Updated about 1 year ago

A Compiler for System-Level Design and HLS

Image
0

2.3K

agostini01/soda repository overview

SODA Toolchain Production Docker Image

The SODA (SOftware Defined Architectures) toolchain leverages mlir to extract, optimize, and translate high-level code snippets into LLVM IR, so that they can be synthesized by our high-level synthesis tool of choice.

In this production image the following tools will be available in the $PATH:

soda-opt
soda-translate
mlir-opt
mlir-translate
flatbuffer_translate
tf-mlir-translate
tf-opt
torch-mlir-opt - python packages available at /opt/torch-mlir/python_packages/torch_mlir
bambu
openroad - Requires exporting FLOW_HOME=/opt/openroad/openroad_flow_scripts/flow
yosys
  • Base image: 3.11-bookworm⁠
  • Mirror of agostini01/soda-bookworm:v19.02

This repository tracks the latest docker image with the SODA toolchain.

CHANGELOG

V19.02

  • Add transform.loop.fullunroll operation to soda-opt

V19.01

  • Includes g++-multilib package necessary for proper compilation of verilated tesbenches
  • Includes /opt/or-tools necessary for openroad
  • Includes tensorflow-cpu python package
  • Update soda-opt with C Testbench generation functionality
  • Update /opt/soda/scripts
    • Includes all scripts necessary for pytorch to gds flow

V19.00

  • Integrate LLVM at: ab4b5a2db582958af1ee308a790cfdb42bd24720, tag: llvmorg-19.1.5
  • Change base image from Ubuntu to Python Debian bookworm
    • Python image supports system install of python packages that help our compilation process
  • Update Python to 3.11
  • Update Tensorflow
  • Update Torch
  • Update Torch-mlir
  • Update OpenRoad
  • Update Bambu, tag: 2024.10
    • Bambu required specific versions of gcc-8 and clang-16, they are now available in /opt/gcc-8/bin and /opt/clang-16/bin
    • System clang-16 did not provide all the required libraries for Bambu
    • We still use the system clang-16 for other tools

V18.00 - Completely skiped

  • Skiped porting code into llvm-18 in favor of a direct update into llvm-19
  • Skiped from docker image generation

V17.00 - Completely skiped

  • Skiped porting code into llvm-18 in favor of a direct update into llvm-19
  • Skiped from docker image generation

V16.00-RC1

V15.08

  • Update /opt/soda/scripts

V15.07

  • Fix missing binaries from torch-mlir project
  • Enable soda-opt to accept ml_program operations to be present the mlir file
    • ml_program operations should not be inside a soda.launch operation
    • include SymbolDCE pass on pipelines to remove unused ml_program decls
    • in support of torch-mlir models
  • Fix volume mount error when lowering scripts were called outside docker

V15.06

  • Fix bug with /opt/soda/scripts permissions

V15.05

  • Fix bug with missing parts of torch-mlir python packages
  • NEW: include /opt/soda/scripts for a collection of mlir lowering scripts for different tools
    • lowering scripts check for required binaries in the $PATH
    • lowering scripts will use docker if binaries are not found in the $PATH
    • docker image contains all needed binaries

V15.04

  • NEW: Include flatbuffer_translate binary to translate tflite models into MLIR

V15.03

  • Update llvm version
  • Update tensorflow version
  • NEW: added python modules for CPU versions of torch, torchvision, and tensorflow
  • NEW: add torch-mlir to the docker-image
    • set python library path PYTHONPATH=/opt/torch-mlir/python_packages/torch_mlir
  • NEW: add soda-transform-interpreter and soda-transform-erase-schedule passes to soda

V15.02

  • Update llvm version
  • Include async token parsing and handling in the soda dialect

V15.01

  • Generates agostini01/soda:v15.01
  • Includes OpenRoadFlow binaries and scripts to the /opt/openroad
    • Deprecates the need for image agostini01/panda_openroad
  • Included OpenRoadFlow tracks a commit from master branch (see args_default file)

V15

  • Generates agostini01/soda:v15
  • Updated mlir/llvm project used by soda-opt to v15 dev
  • Updated panda bambu project to track github main branch
  • Fix docker image tensorflow into a specific commit

Tag summary

Content type

Image

Digest

sha256:6792f2a1e

Size

6.5 GB

Last updated

about 1 year ago

docker pull agostini01/soda