YVR18-311:A Call to Action: Accelerating Python with FPGAs

The Python community can strongly benefit from the immense and flexible computing power of Field Programmable Gate Arrays (FPGA). FPGAs are composed of memories, various logic and math hardware units that can be programmed and configured to accelerate any algorithm. They can be used to even create your own custom CPUs and other gadgets. FPGA chips have presently evolved into multi-faceted Systems on a Chip (SoC) which include multi-core CPUs and hardware accelerators such as embedded GPUs, video codecs, FEC and hardware interfaces such as USB. These FPGA SoCs are similar to other SoCs such as Raspberry Pi or Beaglebone boards but those lack the power of the FPGA. With the right system design the FPGA can turn them into super turbo charged machines. Many SoCs with FPGAs run full Arm Linux and can utilize popular package manager root file systems (Debian, Ubuntu, etc) as well as support for the full Python 2x and 3x environments. FPGA SoCs are being positioned to take over the edge, cloud and machine learning realms by some of the top vendors in the computing industry. What is missing is a clean cohesive means to interface Python code to harness the acceleration that the FPGA hardware can provide. This talk will outline the current state of development tools and methods for the new Ultra96 board that Avnet and Xilinx have just released. The intent is to show the community the value of the proposition and implore them to work together to achieve a more homogeneous and simplified approach to taking Python to the next level.

comments powered by Disqus