Det konvolutionella neurala nätverket (CNN) har blivit en toppmodern metod för flera artificiell intelligens domäner under de senaste åren. De alltmer komplexa CNN-modellerna är både beräkningsbundna och I/O-bundna. FPGA-baserade acceleratorer drivs av anpassade instruktionsuppsättning arkitektur (ISA) uppnå en balans mellan generalitet och effektivitet, men det finns mycket på dem kvar att optimera. Vi föreslår fullstackarkompilatorn DNNVM, som är en integrering av optimatorer för grafer, loopar och datalayouter, och en monteringsmaskin, en runtime supporter och en valideringsmiljö. DNNVM arbetar inom ramen för ramverk för djupinlärning och omvandlar CNN-modeller till den riktade acykliska grafen XGraph. Baserat på XGraph omvandlar vi optimeringsutmaningarna för både datalayout och rörledning till problem på grafnivå. DNNVM räknar upp alla potentiellt lönsamma fusionsmöjligheter genom en heuristisk subgraph isomorphism algoritm för att utnyttja pipeline och datalayout optimeringar, och söker efter optimala genomförandestrategier för hela datorgrafiken. På Xilinx ZU2 @330 MHz och ZU9 @330 MHz uppnår vi motsvarande toppmoderna prestanda på våra riktmärken genom naiva implementationer utan optimeringar, och genomströmningen förbättras ytterligare upp till 1.26x genom att utnyttja heterogena optimeringar i DNNVM. Slutligen, med ZU9 @330 MHz, uppnår vi toppmodern prestanda för VGG och ResNet50. Vi uppnår ett genomflöde på 2,82 TOP/s och en energieffektivitet på 123,7 GOP/s/W för VGG. Dessutom uppnår vi 1,38 TOPs/s för ResNet50.
En förlängning av detta arbete presenteras i REF, där författarna föreslår en end-to-end kompilator som integrerar optimerare för grafer, loopar och datalayouter.
DNNVM : End-to-End Compiler Leveraging Heterogeneous Optimizations on FPGA-based CNN Accelerators
{'venue': 'ArXiv', 'journal': 'ArXiv', 'mag_field_of_study': ['Computer Science']}