MaxML CNN is a high-performance computing solution developed by Maxeler Technologies, designed to accelerate the inference of Convolutional Neural Networks (CNNs using Dataflow Engines (DFEs. This toolchain targets multiple FPGAs on a single DFE device, facilitating efficient communication between FPGAs primarily via maxring and, in some cases, utilizing off-chip RAM. By leveraging dataflow computing, MaxML CNN offers a significant performance boost over traditional CPU-based systems, making it ideal for applications requiring rapid and efficient CNN inference.
Key Features and Functionality:
- Automatic Design Space Exploration (DSE: MaxML CNN automatically searches for optimal loop unrolling parameters using a theoretical performance model, streamlining the design process.
- Performance Estimation: The tool provides estimates of design throughput without necessitating full compilation or simulation, enabling efficient performance evaluation.
- Compilation Relaxation: In instances where compilation fails, users can relax resource utilization to facilitate design fitting on the FPGA during the MPPR stage, enhancing flexibility.
- Simulation Capabilities: MaxML CNN allows for the simulation of maxring connections without reconfiguration by mocking them as PCIe connections to the CPU, which is beneficial for correctness verification.
- Custom Precision and Frequency Settings: Users can specify custom fixed-point precisions and FPGA frequencies for each neural network, allowing for tailored performance optimization.
Primary Value and Problem Solved:
MaxML CNN addresses the challenge of accelerating CNN inference by harnessing the power of DFEs, offering a high-throughput, low-power alternative to conventional GPU-based systems. This solution is particularly advantageous in scenarios where processing speed and energy efficiency are critical, such as real-time image classification and other computationally intensive tasks. By providing a customizable and efficient platform for CNN inference, MaxML CNN enables users to achieve faster results with reduced power consumption, thereby enhancing overall system performance and sustainability.