Goal Problem Solution Challenge Results Conclusions pdf/portada N ON -S PECULATIVE S TORE C OALESCING IN T OTAL S TORE O RDER Alberto Ros 1 Stefanos Kaxiras 2 1 Universidad de Murcia aros@ditec.um.es 2 Uppsala University stefanos.kaxiras@it.uu.se June 4th, 2018 A. Ros & S. Kaxiras ISCA’18 @ Los Angeles, CA, USA June 4th, 2018 1
Goal Problem Solution Challenge Results Conclusions O UTLINE Goal : Coalescing stores into a single write operation to reduce processor stalls and memory accesses A. Ros & S. Kaxiras ISCA’18 @ Los Angeles, CA, USA June 4th, 2018 2
Goal Problem Solution Challenge Results Conclusions O UTLINE Goal : Coalescing stores into a single write operation to reduce processor stalls and memory accesses Problem : Coalescing can break store order (and programming intuition for x86 processors) A. Ros & S. Kaxiras ISCA’18 @ Los Angeles, CA, USA June 4th, 2018 2
Goal Problem Solution Challenge Results Conclusions O UTLINE Goal : Coalescing stores into a single write operation to reduce processor stalls and memory accesses Problem : Coalescing can break store order (and programming intuition for x86 processors) Solution : Atomicity gives the illusion of order but is hard to scale and costly (e.g., centralized, transactional) A. Ros & S. Kaxiras ISCA’18 @ Los Angeles, CA, USA June 4th, 2018 2
Goal Problem Solution Challenge Results Conclusions O UTLINE Goal : Coalescing stores into a single write operation to reduce processor stalls and memory accesses Problem : Coalescing can break store order (and programming intuition for x86 processors) Solution : Atomicity gives the illusion of order but is hard to scale and costly (e.g., centralized, transactional) Challenge : To perform multiple stores atomically without speculation (without rollback) and in a distributed manner A. Ros & S. Kaxiras ISCA’18 @ Los Angeles, CA, USA June 4th, 2018 2
Goal Problem Solution Challenge Results Conclusions O UTLINE Goal : Coalescing stores into a single write operation to reduce processor stalls and memory accesses Problem : Coalescing can break store order (and programming intuition for x86 processors) Solution : Atomicity gives the illusion of order but is hard to scale and costly (e.g., centralized, transactional) Challenge : To perform multiple stores atomically without speculation (without rollback) and in a distributed manner We present the first solution to this challenge A. Ros & S. Kaxiras ISCA’18 @ Los Angeles, CA, USA June 4th, 2018 2
Goal Problem Solution Challenge Results Conclusions O UTLINE 1 G OAL : C OALESCING STORES 2 P ROBLEM : C OALESCING BREAKS STORE ORDER 3 S OLUTION : A TOMICITY 4 C HALLENGE : D ISTRIBUTED , NON - SPECULATIVE ATOMICITY 5 R ESULTS 6 C ONCLUSIONS A. Ros & S. Kaxiras ISCA’18 @ Los Angeles, CA, USA June 4th, 2018 3
Goal Problem Solution Challenge Results Conclusions S TORE BUFFER AND T OTAL S TORE O RDER Proc st a Store Program Buffer Order a Mem Store operations in current x86 processors A. Ros & S. Kaxiras ISCA’18 @ Los Angeles, CA, USA June 4th, 2018 4
Goal Problem Solution Challenge Results Conclusions S TORE BUFFER AND T OTAL S TORE O RDER Proc st b Store Program b Buffer Order a Mem Store operations in current x86 processors A. Ros & S. Kaxiras ISCA’18 @ Los Angeles, CA, USA June 4th, 2018 4
Goal Problem Solution Challenge Results Conclusions S TORE BUFFER AND T OTAL S TORE O RDER Proc Store Program b Buffer Order a Mem Store operations in current x86 processors A. Ros & S. Kaxiras ISCA’18 @ Los Angeles, CA, USA June 4th, 2018 4
Goal Problem Solution Challenge Results Conclusions S TORE BUFFER AND T OTAL S TORE O RDER Proc Store Program b Buffer Order a First-In First-Out (FIFO) a Mem Store operations in current x86 processors A. Ros & S. Kaxiras ISCA’18 @ Los Angeles, CA, USA June 4th, 2018 4
Goal Problem Solution Challenge Results Conclusions S TORE BUFFER AND T OTAL S TORE O RDER Proc Store Program b Buffer Order First-In First-Out (FIFO) a b Mem Store operations in current x86 processors A. Ros & S. Kaxiras ISCA’18 @ Los Angeles, CA, USA June 4th, 2018 4
Goal Problem Solution Challenge Results Conclusions S TORE BUFFER AND T OTAL S TORE O RDER Proc Store Program Buffer Order a Total Store Order (TSO) b Mem Store operations in current x86 processors A. Ros & S. Kaxiras ISCA’18 @ Los Angeles, CA, USA June 4th, 2018 4
Goal Problem Solution Challenge Results Conclusions L IMITATIONS AND THE SOLUTION OF COALESCING Proc st c c Store b Buffer a Mem A. Ros & S. Kaxiras ISCA’18 @ Los Angeles, CA, USA June 4th, 2018 5
Goal Problem Solution Challenge Results Conclusions L IMITATIONS AND THE SOLUTION OF COALESCING Proc � Stall c Store b Buffer a Mem A. Ros & S. Kaxiras ISCA’18 @ Los Angeles, CA, USA June 4th, 2018 5
Goal Problem Solution Challenge Results Conclusions L IMITATIONS AND THE SOLUTION OF COALESCING Proc � Stall c Store b Buffer a Individual writes � Mem A. Ros & S. Kaxiras ISCA’18 @ Los Angeles, CA, USA June 4th, 2018 5
Goal Problem Solution Challenge Results Conclusions L IMITATIONS AND THE SOLUTION OF COALESCING Proc st c Coalescing b Store Buffer a, c Stores to the same cache line (same color in the example) Mem can coalesce in a single write A. Ros & S. Kaxiras ISCA’18 @ Los Angeles, CA, USA June 4th, 2018 5
Goal Problem Solution Challenge Results Conclusions L IMITATIONS AND THE SOLUTION OF COALESCING Proc � No stall Coalescing b Store Buffer a, c Mem A. Ros & S. Kaxiras ISCA’18 @ Los Angeles, CA, USA June 4th, 2018 5
Goal Problem Solution Challenge Results Conclusions L IMITATIONS AND THE SOLUTION OF COALESCING Proc � No stall Coalescing b Store Buffer a, c Coalesced writes � Mem Performance and energy improvements A. Ros & S. Kaxiras ISCA’18 @ Los Angeles, CA, USA June 4th, 2018 5
Goal Problem Solution Challenge Results Conclusions O UTLINE 1 G OAL : C OALESCING STORES 2 P ROBLEM : C OALESCING BREAKS STORE ORDER 3 S OLUTION : A TOMICITY 4 C HALLENGE : D ISTRIBUTED , NON - SPECULATIVE ATOMICITY 5 R ESULTS 6 C ONCLUSIONS A. Ros & S. Kaxiras ISCA’18 @ Los Angeles, CA, USA June 4th, 2018 6
Goal Problem Solution Challenge Results Conclusions T HE PROBLEM OF COALESCING STORES Proc Coalescing b Store Buffer a, c Mem A. Ros & S. Kaxiras ISCA’18 @ Los Angeles, CA, USA June 4th, 2018 7
Goal Problem Solution Challenge Results Conclusions T HE PROBLEM OF COALESCING STORES Proc Coalescing b Store Buffer a, c First green ⇒ c overtakes b Mem A. Ros & S. Kaxiras ISCA’18 @ Los Angeles, CA, USA June 4th, 2018 7
Goal Problem Solution Challenge Results Conclusions T HE PROBLEM OF COALESCING STORES Proc Coalescing b Store Buffer a, c First green ⇒ c overtakes b First blue ⇒ b overtakes a Mem A. Ros & S. Kaxiras ISCA’18 @ Los Angeles, CA, USA June 4th, 2018 7
Goal Problem Solution Challenge Results Conclusions T HE PROBLEM OF COALESCING STORES Proc Coalescing b Store Buffer a, c First green ⇒ c overtakes b First blue ⇒ b overtakes a Mem Store order? � In the paper: A new litmus test that captures a TSO violation when breaking store order A. Ros & S. Kaxiras ISCA’18 @ Los Angeles, CA, USA June 4th, 2018 7
Goal Problem Solution Challenge Results Conclusions O UTLINE 1 G OAL : C OALESCING STORES 2 P ROBLEM : C OALESCING BREAKS STORE ORDER 3 S OLUTION : A TOMICITY 4 C HALLENGE : D ISTRIBUTED , NON - SPECULATIVE ATOMICITY 5 R ESULTS 6 C ONCLUSIONS A. Ros & S. Kaxiras ISCA’18 @ Los Angeles, CA, USA June 4th, 2018 8
Goal Problem Solution Challenge Results Conclusions A TOMICITY : I LLUSION OF STORE ORDER Proc Coalescing b Store Buffer a, c Store order ⇒ Atomicity Mem Coalescing forms atomic write groups A. Ros & S. Kaxiras ISCA’18 @ Los Angeles, CA, USA June 4th, 2018 9
Goal Problem Solution Challenge Results Conclusions F ORMING ATOMIC WRITE GROUPS st c b a Match younger write to the same cache line A. Ros & S. Kaxiras ISCA’18 @ Los Angeles, CA, USA June 4th, 2018 10
Goal Problem Solution Challenge Results Conclusions F ORMING ATOMIC WRITE GROUPS st c b b a, c a Writes to a, b, and c are indivisible A. Ros & S. Kaxiras ISCA’18 @ Los Angeles, CA, USA June 4th, 2018 10
Goal Problem Solution Challenge Results Conclusions F ORMING ATOMIC WRITE GROUPS st c st d b b b a, c a, c a A. Ros & S. Kaxiras ISCA’18 @ Los Angeles, CA, USA June 4th, 2018 10
Goal Problem Solution Challenge Results Conclusions F ORMING ATOMIC WRITE GROUPS st c st d st e d b b b b a, c a, c a, c a A. Ros & S. Kaxiras ISCA’18 @ Los Angeles, CA, USA June 4th, 2018 10
Goal Problem Solution Challenge Results Conclusions F ORMING ATOMIC WRITE GROUPS st c st d st e d d b, e b b b b a, c a, c a, c a, c a Writes to a, b, c, d, and e are indivisible A. Ros & S. Kaxiras ISCA’18 @ Los Angeles, CA, USA June 4th, 2018 10
Recommend
More recommend