ultra low power render based collision detection for cpu
play

Ultra-Low Power Render-Based Collision Detection for CPU/GPU - PowerPoint PPT Presentation

48 th International Symposium on Microarchitecture Ultra-Low Power Render-Based Collision Detection for CPU/GPU Systems Enrique de Lucas Pedro Marcuello Joan-Manuel Parcerisa Antonio Gonzlez Market Mobile devices market is


  1. 48 th International Symposium on Microarchitecture Ultra-Low Power Render-Based Collision Detection for CPU/GPU Systems Enrique de Lucas Pedro Marcuello Joan-Manuel Parcerisa Antonio González

  2. Market  Mobile devices market is growing fast 1400 1200 PC Smartphone 1000 Millions of unit shipped 800 600 400 200 0 2008 2009 2010 2011 2012 2013 2014 Enrique de Lucas 1. Motivation 2

  3. Mobile Systems ● Users demand realistic and complex graphics like in laptops and desktops – Battery life is about 4 hours for GFXBench 3.0! 1 – Heat dissipation ● “ CPU , GPU and screen are the dominant energy consumers on a smartphone” 2 ● Graphics animation applications are quite popular – Collision Detection is an important task 1. With an ARM Mali 400MP GPU, www.gfxbench.com 2. Mittal et al., Empowering Developers to Estimate App Energy Consumption, Aug. 2012. Enrique de Lucas 1. Motivation 3

  4. Outline 1. Motivation 2. Collision Detection (CD) 3. Render-Based CD in the GPU 4. Results 5. Conclusions Enrique de Lucas 4

  5. Collision Detection (CD) Frame i Frame i+2 Contact! CD identifies the contact points between objects Bounding Volume Enrique de Lucas 2. Collision Detection 5

  6. Bounding Volumes False Collisions! Collision Bounding Volume Cuboid Convex Hull Accuracy Low Medium Computing Cost Low High false area = false collisions Enrique de Lucas 2. Collision Detection 6

  7. Image-Based CD (IBCD) ● CD performed at pixel granularity ● No Bounding Volumes ● Higher Accuracy ● Computing/Energy Cost ● CPU: huge ● Our technique (GPU): tiny Enrique de Lucas 2. Collision Detection 7

  8. How does IBCD work? n S c r e e P1 Depth Steps of Image-Based CD Enrique de Lucas 2. Collision Detection 8

  9. How does IBCD work? n S c r e e Screen Pixels P1 P1 Depth Steps of Image-Based CD Depth Enrique de Lucas 2. Collision Detection 9

  10. How does IBCD work? n S c r e e Screen Pixels P1 P1 Depth Steps of Image-Based CD 1) Project objects onto a plane (screen) Depth Enrique de Lucas 2. Collision Detection 10

  11. How does IBCD work? n S c r e e Screen Pixels P1 P1 Depth Steps of Image-Based CD 1) Project objects onto a plane (screen) Depth Enrique de Lucas 2. Collision Detection 11

  12. How does IBCD work? n S c r e e Screen Pixels P1 P1 Depth Steps of Image-Based CD 1) Project objects onto a plane (screen) Depth Enrique de Lucas 2. Collision Detection 12

  13. How does IBCD work? n S c r e e Screen Pixels P1 P1 Depth Steps of Image-Based CD 1) Project objects onto a plane (screen) Depth Enrique de Lucas 2. Collision Detection 13

  14. How does IBCD work? n S c r e e Screen Pixels P1 P1 Depth Steps of Image-Based CD 1) Project objects onto a plane (screen) 2) Rasterize surface of the objects and store Depth depths in a list List for P1 Enrique de Lucas 2. Collision Detection 14

  15. How does IBCD work? n S c r e e Screen Pixels P1 P1 Depth Steps of Image-Based CD 1) Project objects onto a plane (screen) 2) Rasterize surface of the objects and store Depth depths in a list List for P1 Enrique de Lucas 2. Collision Detection 15

  16. How does IBCD work? n S c r e e Screen Pixels P1 P1 Depth Steps of Image-Based CD 1) Project objects onto a plane (screen) 2) Rasterize surface of the objects and store 1 Depth depths in a list 1 List for P1 Enrique de Lucas 2. Collision Detection 16

  17. How does IBCD work? n S c r e e Screen Pixels P1 P1 Depth Steps of Image-Based CD 1) Project objects onto a plane (screen) 2) Rasterize surface of the objects and store 1 7 Depth depths in a list 1 7 List for P1 Enrique de Lucas 2. Collision Detection 17

  18. How does IBCD work? n S c r e e Screen Pixels P1 P1 Depth Steps of Image-Based CD 1) Project objects onto a plane (screen) 2) Rasterize surface of the objects and store 1 5 7 Depth depths in a list 1 7 5 List for P1 Enrique de Lucas 2. Collision Detection 18

  19. How does IBCD work? n S c r e e Screen Pixels P1 P1 Depth Steps of Image-Based CD 1) Project objects onto a plane (screen) 2) Rasterize surface of the objects and store 1 2 5 7 Depth depths in a list 1 7 5 2 List for P1 Enrique de Lucas 2. Collision Detection 19

  20. How does IBCD work? n S c r e e Screen Pixels P1 P1 Depth Steps of Image-Based CD 1) Project objects onto a plane (screen) 2) Rasterize surface of the objects and store 1 2 5 6 7 Depth depths in a list 1 7 5 6 2 List for P1 Enrique de Lucas 2. Collision Detection 20

  21. How does IBCD work? n S c r e e Screen Pixels P1 P1 Depth Steps of Image-Based CD 1) Project objects onto a plane (screen) 2) Rasterize surface of the objects and store 1 2 5 6 7 8 Depth depths in a list 1 7 5 6 8 2 List for P1 Enrique de Lucas 2. Collision Detection 21

  22. How does IBCD work? n S c r e e Screen Pixels P1 P1 Depth Steps of Image-Based CD 1) Project objects onto a plane (screen) 2) Rasterize surface of the objects and store 1 2 3 5 6 7 8 Depth depths in a list 1 7 5 6 8 3 2 List for P1 Enrique de Lucas 2. Collision Detection 22

  23. How does IBCD work? n S c r e e Screen Pixels P1 P1 Depth Steps of Image-Based CD 1) Project objects onto a plane (screen) 2) Rasterize surface of the objects and store 1 2 3 4 5 6 7 8 Depth depths in a list 1 7 5 6 8 3 2 4 List for P1 Enrique de Lucas 2. Collision Detection 23

  24. How does IBCD work? n S c r e e Screen Pixels P1 P1 Depth Steps of Image-Based CD 1) Project objects onto a plane (screen) 2) Rasterize surface of the objects and store depths 1 2 3 4 5 6 7 8 Depth in a list 1 7 5 6 8 3 2 4 List for P1 3) Sort values by depth 1 3 4 5 8 Sort 2 6 7 Enrique de Lucas 2. Collision Detection 24

  25. How does IBCD work? n S c r e e Screen Pixels P1 P1 Depth Steps of Image-Based CD 1) Project objects onto a plane (screen) 2) Rasterize surface of the objects and store depths in a list 1 2 3 4 5 6 7 8 Depth 3) Sort values by depth 1 7 5 6 8 3 2 4 List for P1 4) Detect overlapping depth-ranges 1 3 4 5 8 Sort 2 6 7 Depth-ranges Enrique de Lucas 2. Collision Detection 25

  26. How does IBCD work? n S c r e e Screen Pixels P1 P1 Depth Steps of Image-Based CD 1) Project objects onto a plane (screen) 2) Rasterize surface of the objects and store depths in a list 1 2 3 4 5 6 7 8 Depth 3) Sort values by depth 1 7 5 6 8 3 2 4 List for P1 4) Detect overlapping depth-ranges 1 3 4 5 8 Sort 2 6 7 Depth-ranges Enrique de Lucas 2. Collision Detection 26

  27. How does IBCD work? n S c r e e Screen Pixels P1 P1 Depth Steps of Image-Based CD 1) Project objects onto a plane (screen) 2) Rasterize surface of the objects and store depths in a list 1 2 3 4 5 6 7 8 Depth 3) Sort values by depth 1 7 5 6 8 3 2 4 List for P1 4) Detect overlapping depth-ranges 1 3 4 5 8 Sort 2 6 7 Depth-ranges Enrique de Lucas 2. Collision Detection 27

  28. How does IBCD work? n S c r e e Screen Pixels P1 P1 Depth Steps of Image-Based CD 1) Project objects onto a plane (screen) 2) Rasterize surface of the objects and store depths in a list 1 2 3 4 5 6 7 8 Depth 3) Sort values by depth 1 7 5 6 8 3 2 4 List for P1 4) Detect overlapping depth-ranges 1 3 4 5 8 Sort 2 6 7 Depth-ranges Enrique de Lucas 2. Collision Detection 28

  29. How does IBCD work? n S c r e e Screen Pixels P1 P1 Depth Steps of Image-Based CD 1) Project objects onto a plane (screen) 2) Rasterize surface of the objects and store depths in a list 1 2 3 4 5 6 7 8 Depth 3) Sort values by depth 1 7 5 6 8 3 2 4 List for P1 4) Detect overlapping depth-ranges 1 3 4 5 8 Sort 2 6 7 Depth-ranges Enrique de Lucas 2. Collision Detection 29

  30. How does IBCD work? n S c r e e Screen Pixels P1 P1 Depth Steps of Image-Based CD Collision! 1) Project objects onto a plane (screen) 2) Rasterize surface of the objects and store depths in a list 1 2 3 4 5 6 7 8 Depth 3) Sort values by depth 1 7 5 6 8 3 2 4 List for P1 4) Detect overlapping depth-ranges 1 3 4 5 8 Sort 2 6 7 Depth-ranges Overlap! Enrique de Lucas 2. Collision Detection 30

  31. How does IBCD work? n S c r e e Screen Pixels P1 P1 Depth Steps of Image-Based CD Collision! 1) Project objects onto a plane (screen) 2) Rasterize surface of the objects and store depths in a list 1 2 3 4 5 6 7 8 Depth 3) Sort values by depth 1 7 5 6 8 3 2 4 List for P1 4) Detect overlapping depth-ranges 1 3 4 5 8 Sort 2 6 7 Depth-ranges Overlap! Enrique de Lucas 2. Collision Detection 31

  32. How does IBCD work? n S c r e e Screen Pixels P1 P1 Depth Steps of Image-Based CD Collision! 1) Project objects onto a plane (screen) 2) Rasterize surface of the objects and store depths in a list 1 2 3 4 5 6 7 8 Depth 3) Sort values by depth 1 7 5 6 8 3 2 4 List for P1 4) Detect overlapping depth-ranges 1 3 4 5 8 Sort 2 6 7 Depth-ranges Overlap! Already done for image rendering! Enrique de Lucas 2. Collision Detection 32

  33. Outline 1. Motivation 2. Collision Detection (CD) 3. Render-Based CD in the GPU 4. Results 5. Conclusion Enrique de Lucas 33

Recommend


More recommend