+ All Categories
Home > Documents > CPU-GPU Collaboration for Output Quality Monitoring

CPU-GPU Collaboration for Output Quality Monitoring

Date post: 16-Feb-2016
Category:
Upload: mai
View: 42 times
Download: 0 times
Share this document with a friend
Description:
CPU-GPU Collaboration for Output Quality Monitoring. Mehrzad Samadi and Scott Mahlke University of Michigan March 2014. University of Michigan Electrical Engineering and Computer Science. Compilers creating custom processors. Output Quality Monitoring. Sampling over time - PowerPoint PPT Presentation
12
CPU-GPU Collaboration for Output Quality Monitoring Mehrzad Samadi and Scott Mahlke University of Michigan March 2014 Compilers creating custom processors University of Michigan Electrical Engineering and Computer Science
Transcript
Page 1: CPU-GPU Collaboration for Output Quality Monitoring

CPU-GPU Collaboration for Output Quality Monitoring

Mehrzad Samadi and Scott Mahlke

University of MichiganMarch 2014

Compilers creating custom processorsUniversity of MichiganElectrical Engineering and Computer Science

Page 2: CPU-GPU Collaboration for Output Quality Monitoring

2

Output Quality Monitoring• Sampling over time•Green[PLDI2010], SAGE[MICRO2013]

• Works fine for applications with temporal similarity for example video processing• What about applications without temporal similarity?

Quality

TOQTOQ + delta

TOQ - delta

Check the quality

Page 3: CPU-GPU Collaboration for Output Quality Monitoring

3

Output Quality Monitoring

• Sampling over time

• Sampling over space

Page 4: CPU-GPU Collaboration for Output Quality Monitoring

4

Partial Output Quality Monitoring

Accurate Version

ApproximateVersion

EvaluationMetric

Subset of Input Data

Page 5: CPU-GPU Collaboration for Output Quality Monitoring

5

CCG• Collaborative CPU-GPU Output Quality Monitoring

Approximate Run 0GPU

CPU

Approximate Run 1

Approximate Run 2

Approximate Run 3

Check 1 Check 2 Check 3 Check 4

Decision Decision Decision

• CPU performs the monitoring while GPU is executing the approximate code

Page 6: CPU-GPU Collaboration for Output Quality Monitoring

6

Evaluation• Two Image processing applications:• Mosaic• Mean Filter

• 1600 flower images• NVIDIA GTX 560 + Intel Core i7• CCG: Collaborative CPU-GPU approach

Time Sampling Conservative

Aggressive AdaptiveFixed

AdaptiveFixed CFI

CAI

AFIAAI

Page 7: CPU-GPU Collaboration for Output Quality Monitoring

7

Conservative/ Aggressive

Quality

TOQTOQ + delta

TOQ - delta

Speedup

Conservative

Aggressive

Page 8: CPU-GPU Collaboration for Output Quality Monitoring

8

Results

CFI

CAI

AFI

AAI

CCG

0 10 20 30 40 50 60

Mosaic Mean

Percentage of images with unacceptable quality

CFI

CAI

AFI

AAI

CCG

1 1.2 1.4 1.6 1.8 2 2.2 2.4 2.6 2.8

Speedup

Page 9: CPU-GPU Collaboration for Output Quality Monitoring

9

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 solution9

Page 10: CPU-GPU Collaboration for Output Quality Monitoring

CPU-GPU Collaboration for Output Quality Monitoring

Mehrzad Samadi and Scott Mahlke

University of MichiganMarch 2014

Compilers creating custom processorsUniversity of MichiganElectrical Engineering and Computer Science

Page 11: CPU-GPU Collaboration for Output Quality Monitoring

11

Fixed/Adaptive• Fixed

• Adaptive: Reduce the overhead of checking.

Quality

TOQTOQ + delta

TOQ - delta

Quality

TOQTOQ + delta

TOQ - delta

Page 12: CPU-GPU Collaboration for Output Quality Monitoring

12

Results

CFI

CAI

AFI

AAI

CCG

0 10 20 30 40 50 60

Mosaic Mean

Percentage of images with unacceptable quality

CFI

CAI

AFI

AAI

CCG

1 1.2 1.4 1.6 1.8 2 2.2 2.4 2.6 2.8

Speedup without checking overhead


Recommended