Download presentation

Presentation is loading. Please wait.

Published byHannah Barnes Modified over 2 years ago

1
Semantics Consistent Parallelism Li-Yi Wei Microsoft Research

2
Parallelism Algorithm API Hardware parallel ? CUDA, BSGP CPU, GPU parallel

3
Traditional parallelization Sequential consistency [Lampert] parallel algorithms do NOT change result sorting, FFT, matrix, etc sort

4
New parallelization (cheating) Not all algorithms need to be seq-consistent perception (graphics/vision/image/video), statistics approximate solutions might suffice more parallel Semantic consistency

5
Examples

6
Pseudo Random Number Generator The main source of randomness in programs e.g. rand() in c/c++ Desirable properties white noise statistics repeatable, fast computation Traditional sequential method e.g. x n = (a x n-1 + b) mod c

7
Parallel PRNG 1. input trivially prepared in parallel, e.g. linear ramp 2. feed input value into hash, independently & in parallel 3. output white noise key idea: borrow cryptographic hash! [Tzeng and Wei I3D 2008] hash input output

8
How to start a bar flight

9
How to stop the bar flight Parallel GPU run time (slow motion) 4M Poisson disk samples / sec in parallel!

10
Poisson disk sampling A set of samples that are as random as possible remain a minimum distance r away from each other Why pick this problem? important algorithm - sampling, graphics, statistics seemly non-parallelizable

11

12
Dart throwing [Cook 1986] Loop: random sample from the entire domain accept sample if not in conflict with existing ones O High quality ground truth X Slow speed inherently sequential

13
Parallel Poisson disk sampling [Wei SIGGRAPH 2008] Samples from a grid 1 sample per grid cell Sample grid cells far apart in parallel Watch out for bias! Tricks to avoid bias

14
Image cloning

15

16
Poisson image editing [Perez et al. SIGGRAPH 2003] State-of-art for image cloning + other stuff Solving Poisson equation interior detail (source) boundary condition (target) Heavy computation

17
[Farbman et al. SIGGRAPH 2009] p = w i b i Easy computation Run parallel on a GPU Coordinate interpolation

18
Summary Conclusion sequential consistency too strict semantic consistency (perceptual, statistical, etc) Future work parallelism via semantic consistency individual algorithms / applications general methodology?

19

20
Parallelism Processors are becoming parallel Intel Larrabee, NVIDIA, AMD/ATI, IBM/Sony Cell, etc. So are programming interfaces BSGP, CUDA, CAL, Ct, DX, OpenGL, etc. As well as applications To take advantage of parallel environment

21
Parallel Algorithm Traditional parallelization methods Sequential consistency [Lampert] - sorting, FFT, matrix, etc. Not all algorithms need to be seq-consistent perception (graphics/vision/image/video), statistics Approximate solutions might suffice Opportunities for new parallelization methods

22
Image cloning

23

Similar presentations

© 2016 SlidePlayer.com Inc.

All rights reserved.

Ads by Google