Office of Technology Transfer – University of Michigan

Input Responsive Approximation

Technology #6411

With increasing computational processing demands required by next generation devices, there is a growing need for better methods of improving performance and efficiency for handling these compute intensive applications. Areas such as data mining, machine learning, and processing audio/visual streams could benefit greatly from enhanced computing methods. The central tenant of approximate computation is to find ways to trade small amounts of output accuracy for large improvements in performance and energy. However, previous software-based approaches to solving this problem have shown limited performance gains and an energy ceiling effect. There are two main limitations to these previous methods: 1) Software approximation caters the approximation technique to the worst case across a number of inputs, resulting in a one-size-fits-all approximation that is unnecessarily conservative in the majority of cases and 2) it requires taking the computationally expensive step of calculating the exact solution as a baseline for gaging the accuracy of approximate solutions. In either case, performance and energy improvements are functionally limited.

Input responsive approximation

The proposed technology introduces a new software-based approximation technique called Input Responsive Approximation (IRA), which addresses these previous limitations and removes the low ceilings on software-based approximation by dynamically and automatically configuring software-based approximation to be maximally effective for each problem input. IRA works by sampling down the full input into a much smaller version of the input that statistically preserves its properties. This input is used to rapidly configure the approximation options, and to choose the most effective option from the available alternatives. IRA produces and approximates the solution for the full input by running it with the chosen configuration.

Applications

  • Big data
  • Image and sound processing
  • Medical imaging
  • Computer vision
  • Machine learning
  • Data mining
  • Augmented reality
  • Artificial intelligence
  • Internet of Things
  • Wearable devices

Advantages

  • IRA can achieve an average speedup of 9.2x at a target output quality of 90% across many applications in the fields of image processing, machine learning, data mining, computer vision, etc.
  • IRA is completely software-based.