abs-tudelft / fletcher

Fletcher: A framework to integrate FPGA accelerators with Apache Arrow
https://abs-tudelft.github.io/fletcher/
Apache License 2.0
220 stars 31 forks source link

Alveo card support #103

Closed mbrobbel closed 5 years ago

mbrobbel commented 5 years ago

This is a tracking issue for Alveo card support in Fletcher.

It seems that there are currently three methods to develop for Alveo cards:

  1. Using SDx + XRT. Primary development method as documented by Xilinx here.
  2. Using SDx + XRT with custom RTL kernels developed in Vivado and packaged as a Xilinx Object File. Documented here, with an example here.
  3. Using Custom flow with Vivado Board Aware flow. Documented here. Board files for Vivado are available here.

SDx development depends on XRT. In order to support SDx kernel development (development method 1 and 2) for Fletcher we need to provide a build target which generates the wrapping kernel for the accelerator and a platform runtime which wraps around XRT for execution. This method makes sense if Arrow has native or OpenCL kernel support.

Custom flow with Vivado (development method 3) makes more sense now but can't be used with XRT. Based on this we can use QDMA with this (Github).

I'll investigate.

johanpel commented 5 years ago

Closing this as this will move to a separate repository: https://github.com/abs-tudelft/fletcher-alveo