Phobos
Mars on Steriods

              Jamie Jablin
            Kamran Azam
          Suman Karumuri
          Nathan Back...
Map Reduce
• Given the stock data, compute the 200
  day moving average for all the stocks.
• Map
  – Filter stocks not in...
Continuous Map Reduce
• Given the stock data, compute the 200
  day moving average for all the stocks
  every 1 hour.
• Ma...
At t=0
         Window           Sub-piece/
Stream
                         Sub-window




                  time
At t=1
         Window
Stream
         Slides
Redundant map computation
         Window   Overlapping
Stream
                    Block
Enter Phobos
• Eliminate these redundant map
  computations.
• On CUDA.
• Design
  – Instead of computing map on entire wi...
Implementation
• Updated Mars
  – Added notion of windowing.
  – Eliminated redundant computations by using
    circular b...
Demo time!
Upcoming SlideShare
Loading in …5
×

Phobos

1,438 views
1,376 views

Published on

I implemented a continuous map-reduce framework called Phobos on top of NVIDIA CUDA. This presentation gives an intuition about the idea.

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,438
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
4
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Phobos

  1. 1. Phobos Mars on Steriods Jamie Jablin Kamran Azam Suman Karumuri Nathan Backman
  2. 2. Map Reduce • Given the stock data, compute the 200 day moving average for all the stocks. • Map – Filter stocks not in your portfolio. • Reduce – Compute the 200 day average for stocks in your portfolio.
  3. 3. Continuous Map Reduce • Given the stock data, compute the 200 day moving average for all the stocks every 1 hour. • Map – Filter stocks not in your portfolio. • Reduce – Compute the 200 day average for stocks in your portfolio.
  4. 4. At t=0 Window Sub-piece/ Stream Sub-window time
  5. 5. At t=1 Window Stream Slides
  6. 6. Redundant map computation Window Overlapping Stream Block
  7. 7. Enter Phobos • Eliminate these redundant map computations. • On CUDA. • Design – Instead of computing map on entire window, compute map on the new sub-window. – Compute the reduce on the whole window. • How? Keep old data around. • How long? In a circular buffer of size num of sub windows per window.
  8. 8. Implementation • Updated Mars – Added notion of windowing. – Eliminated redundant computations by using circular buffer. • Trade off latency for more working memory. – Keep the old data on host instead of the device.
  9. 9. Demo time!

×