From: Review of deep learning: concepts, CNN architectures, challenges, applications, future directions
Feature | Assessment | Leader |
---|---|---|
Development | CPU is the easiest to program, then GPU, then FPGA | CPU |
Size | Both FPGA and CPU have smaller volume solutions due to their lower power consumption | FPGA-CPU |
Customization | Broader flexibility is provided by FPGA | FPGA |
Ease of change | Easier way to vary application functionality is provided by GPU and CPU | GPU-CPU |
Backward compatibility | Transferring RTL to novel FPGA requires additional work. Furthermore, GPU has less stable architecture than CPU | CPU |
Interfaces | Several varieties of interfaces can be implemented using FPGA | FPGA |
Processing/$ | FPGA configurability assists utilization in wider acceleration space. Due to the considerable processing abilities, GPU wins | FPGA-GPU |
Processing/watt | Customized designs can be optimized | FPGA |
Timing latency | Implemented FPGA algorithm offers deterministic timing, which is in turn much faster than GPU | FPGA |
Large data analysis | FPGA performs well for inline processing, while CPU supports storage capabilities and largest memory | FPGA-CPU |
DCNN inference | FPGA has lower latency and can be customized | FPGA |
DCNN training | Greater float-point capabilities provided by GPU | GPU |