Co-tuning of Software Specializers and Hardware Accelerators within a CNN Application
Electrical Engineering and Computer Sciences, University of California at Berkeley
University of California at Berkeley, Technical Report No. UCB/EECS-2016-53, 2016
@mastersthesis{Roberts:EECS-2016-53,
Author={Roberts, Sean},
Title={Co-tuning of Software Specializers and Hardware Accelerators within a CNN Application},
School={EECS Department, University of California, Berkeley},
Year={2016},
Month={May},
URL={http://www.eecs.berkeley.edu/Pubs/TechRpts/2016/EECS-2016-53.html},
Number={UCB/EECS-2016-53}
}
Software specializers and hardware accelerators share the common goal of decreasing the runtime of an operation while being parameterizable and abstracting away underlying optimizations from users. The competition for reconfigurable hardware resources among candidate hardware accelerators means that tuning must take place at an application level and not at an operation level as is the case for software specializers. This paper presents a methodology for the co-tuning of software specializers and hardware accelerators so that both may be simultaneously used in applications. To explore the validity of this approach, experiments were carried with software specialized and hardware accelerated 2D stencils performing convolutions for trial convolutional neural networks. The results demonstrate that an application level co-tuner can discover which operations are best suited for software specializers and which merit the limited reconfigurable hardware resources required for hardware acceleration.
June 7, 2016 by hgpu