Skip to main content

ProtoGen: Automatically generating directory cache coherence protocols from atomic specifications

Publication ,  Conference
Oswald, N; Nagarajan, V; Sorin, DJ
Published in: Proceedings - International Symposium on Computer Architecture
July 19, 2018

Designing directory cache coherence protocols is complicated because coherence transactions are not atomic in modern multicore processors. A coherence transaction comprises multiple messages, and these messages can interleave with other conflicting coherence transactions initiated by other cores. To overcome this architectural challenge, we present ProtoGen, an automated tool for taking the description of a directory protocol with atomic transactions (i.e., no concurrency) and generating the corresponding protocol for a multicore with non-atomic transactions. ProtoGen outputs the finite state Machines for the cache and directory controllers, including all of the transient states that are possible with concurrent transactions. We have used ProtoGen to generate complete MSI, MESI, and MOSI protocols given their stable state protocol specifications. We have verified the generated protocols for safety and deadlock freedom using the Murϕ model checker. Our generated protocols are identical to or better than manually generated protocols, at times even discovering opportunities to reduce stalling.

Duke Scholars

Published In

Proceedings - International Symposium on Computer Architecture

DOI

ISSN

1063-6897

ISBN

9781538659847

Publication Date

July 19, 2018

Start / End Page

247 / 260
 

Citation

APA
Chicago
ICMJE
MLA
NLM
Oswald, N., Nagarajan, V., & Sorin, D. J. (2018). ProtoGen: Automatically generating directory cache coherence protocols from atomic specifications. In Proceedings - International Symposium on Computer Architecture (pp. 247–260). https://doi.org/10.1109/ISCA.2018.00030
Oswald, N., V. Nagarajan, and D. J. Sorin. “ProtoGen: Automatically generating directory cache coherence protocols from atomic specifications.” In Proceedings - International Symposium on Computer Architecture, 247–60, 2018. https://doi.org/10.1109/ISCA.2018.00030.
Oswald N, Nagarajan V, Sorin DJ. ProtoGen: Automatically generating directory cache coherence protocols from atomic specifications. In: Proceedings - International Symposium on Computer Architecture. 2018. p. 247–60.
Oswald, N., et al. “ProtoGen: Automatically generating directory cache coherence protocols from atomic specifications.” Proceedings - International Symposium on Computer Architecture, 2018, pp. 247–60. Scopus, doi:10.1109/ISCA.2018.00030.
Oswald N, Nagarajan V, Sorin DJ. ProtoGen: Automatically generating directory cache coherence protocols from atomic specifications. Proceedings - International Symposium on Computer Architecture. 2018. p. 247–260.

Published In

Proceedings - International Symposium on Computer Architecture

DOI

ISSN

1063-6897

ISBN

9781538659847

Publication Date

July 19, 2018

Start / End Page

247 / 260