M03 A Comprehensive Analysis of Approximate Computing Techniques: From Component- to Application-Level