Mehrzad Samadi and Scott Mahlke University of Michigan March 2014 Compilers creating custom processors University of Michigan Electrical Engineering and Computer Science Output Quality Monitoring ID: 243951
Download Presentation The PPT/PDF document "CPU-GPU Collaboration for Output Quality..." is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.
Slide1
CPU-GPU Collaboration for Output Quality Monitoring
Mehrzad Samadi and Scott MahlkeUniversity of MichiganMarch 2014
Compilers creating custom processors
University of Michigan
Electrical Engineering and Computer ScienceSlide2
Output Quality Monitoring
Sampling over timeGreen[PLDI2010], SAGE[MICRO2013] Works fine for applications with temporal similarity for example video processing What about applications without temporal similarity?QualityTOQ
TOQ + delta
TOQ - delta
Check the qualitySlide3
Output Quality Monitoring
Sampling over time
Sampling over spaceSlide4
Partial Output Quality Monitoring
Accurate VersionApproximate
Version
Evaluation
Metric
Subset of
Input DataSlide5
CCG
Collaborative CPU-GPU Output Quality MonitoringApproximate Run 0GPUCPU
Approximate Run 1
Approximate
Run 2Approximate
Run 3
Check 1
Check
2
Check 3
Check
4
Decision
Decision
Decision
CPU performs the monitoring while GPU is executing the approximate codeSlide6
Evaluation
Two Image processing applications: Mosaic Mean Filter 1600 flower images NVIDIA GTX 560 + Intel Core i7 CCG: Collaborative CPU-GPU approachTime SamplingConservative
Aggressive
Adaptive
Fixed
Adaptive
Fixed
CFI
CAI
A
FI
A
AISlide7
Conservative/ Aggressive
QualityTOQ
TOQ + delta
TOQ - delta
Speedup
Conservative
AggressiveSlide8
ResultsSlide9
Conclusions
Sampling over time is not the answer for all applications We need to check all invocations for most of the applications Full quality monitoring has really high overhead Partial quality monitoring can be a solution9Slide10
CPU-GPU Collaboration for Output Quality Monitoring
Mehrzad Samadi and Scott MahlkeUniversity of MichiganMarch 2014
Compilers creating custom processors
University of Michigan
Electrical Engineering and Computer ScienceSlide11
Fixed/Adaptive Fixed
Adaptive: Reduce the overhead of checking.QualityTOQ
TOQ + delta
TOQ - delta
Quality
TOQ
TOQ + delta
TOQ - deltaSlide12
Results