1 / 6

Epoch parallelism: One execution is not enough

Epoch parallelism: One execution is not enough. Jessica Ouyang, Kaushik Veeraraghavan, Dongyoon Lee, Peter Chen, Jason Flinn, Satish Narayanansamy University of Michigan. Motivation. Write a single program that is both fast & correct Make it easier for programmers

greenemegan
Download Presentation

Epoch parallelism: One execution is not enough

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Epoch parallelism:One execution is not enough Jessica Ouyang, Kaushik Veeraraghavan, Dongyoon Lee, Peter Chen, Jason Flinn, Satish Narayanansamy University of Michigan OSDI ’10 Research Visions 3 October 2010

  2. Motivation • Write a single program that is both fast & correct • Make it easier for programmers • Change approach to programming • Write program that is fast or correct – not both • Combine multiple, specialized executions • Fast/buggy accelerates slow/correct • Slow/correct checks fast/buggy Fast & Correct Fast & Buggy Fast & Buggy Slow & Correct Slow & Correct Jessica Ouyang

  3. Epoch parallelism Fast & buggy Slow & correct E0 E0 E1 E1 E1 E2 != ==? 1. Checkpoint state E3 E2 E2 2. Start epoch 3. Check state E3 E3 4. Roll back &Re-execute E3 E3 Time Jessica Ouyang

  4. Uniprocessor execution Multiprocessor Uniprocessor CPU 0 CPU 1 CPU 2 CPU 3 A0 A0 B0 E0 • Nice properties of uniprocessor • Fewer races • Stronger memory consistency model • Easier to replay A1 B1 E1 E0 E1 A1 Performance B0 B1 Jessica Ouyang

  5. Using epoch parallelism Multi-threaded Single-threaded CPU 0 CPU 1 CPU 2 CPU 3 E0 S0 A0 B0 E0 Transform function A1 B1 E1 E1 S1 • Challenges • Importingstate to start epochs • Checking state Jessica Ouyang

  6. Conclusion • Rethink having a single program/execution be both fast & correct • Use separate, specialized executions to achieve different goals Jessica Ouyang - University of Michigan

More Related