Metal FS

Near-storage compute aware file system and operator pipelines.


Metal FS provides build packs for creating operators from different types of hardware descriptions as well as to create FPGA images from an image manifest. Build packs are make based.

Image Build Pack

Add the following line in a Makefile that sits next to your image.json:

include $(METAL_ROOT)/buildpacks/image/image.mk

You will now have access to the following make targets (resembling SNAP make targets):

Operator Buildpack (HLS and HDL)

Add this to a Makefile that sits next to your operator.json:


srcs += changecase.cpp
include $(METAL_ROOT)/buildpacks/hls/hls.mk


srcs += changecase.vhd
include $(METAL_ROOT)/buildpacks/hdl/hdl.mk

The buildpack offers the following targets, so you can quickly build a simulation model from your operator:

For setting the stream width to be used in the devmodel image, please refer to the operator manifest docs.

The HLS buildpack additionally offers the following target: