ISCA 2005 Panel Guri Sohi 1 2015 Code

  • Slides: 8
Download presentation
ISCA 2005 Panel Guri Sohi 1

ISCA 2005 Panel Guri Sohi 1

2015 Code • Reliable software for unreliable hardware – Lots of redundant computation •

2015 Code • Reliable software for unreliable hardware – Lots of redundant computation • “Probabilistic” vs. deterministic applications – Dependences and “incorrect computation” may or may not impact outcome • Heavy use of object-oriented programming style – Well-behaved and isolatable blocks of code 2

Parallelism Opportunities (4 -5 X each) • Extra functionality in applications – e. g.

Parallelism Opportunities (4 -5 X each) • Extra functionality in applications – e. g. , for reliability • Newer applications/algorithm/computation styles – e. g. , “possibly incorrect” computation on multimedia data • New models for parallelization of traditional (sequential) code – Remember programming style 3

Models for Sequential Parallelization • Control-driven speculative parallelization – A. k. a multiscalar, transactions,

Models for Sequential Parallelization • Control-driven speculative parallelization – A. k. a multiscalar, transactions, etc. • Data-driven speculative parallelization – E. g. , program demultiplexing 4

Program Demultiplexing Sequential Program M 21() M 31() M 41() PD Runtime M 12()

Program Demultiplexing Sequential Program M 21() M 31() M 41() PD Runtime M 12() P 1 P 2 M 11() M 21() M 31() P 3 P 4 M 41() M 12() M 91() M 51() M 61() M 42() M 12() M 91() M 61() M 51() M 42() Out-of-order execution of program functions/methods FU = processor Instruction = Function 5

Program Demultiplexing Sequential Execution Demultiplexed Execution On Trigger - Execute M 5() Trig. Handler

Program Demultiplexing Sequential Execution Demultiplexed Execution On Trigger - Execute M 5() Trig. Handler M 5() On Call - Use Triggers - Usually fires after data deps for M are satisfied - Need hardware to check this Case Study - Small and specialized methods - Identifiable triggers 6

Program Demultiplexing (20% overheads) M 5() Y X X /1. 2 Y Time 25%

Program Demultiplexing (20% overheads) M 5() Y X X /1. 2 Y Time 25% 10% 60% 25% 30% 33% 32% 15% 29% 5% 15% % of dyn. instructions contributed 7

Parallelism for 2015 Processors We will have more opportunities for innovation that we have

Parallelism for 2015 Processors We will have more opportunities for innovation that we have ever had before 8