- AScalable,NonblockingApproachto
TransactionalMemory
HassanChafi AustenMcDonald
JaredCasper
ChiCaoMinh BrianD.Carlstrom WoongkiBaek ChristosKozyrakisKunleOlukotun
ComputerSystemLaboratory StanfordUniversity http://tcc.stanford.edu
AScalable,NonblockingApproachto TransactionalMemory JaredCasper - - PowerPoint PPT Presentation
AScalable,NonblockingApproachto TransactionalMemory JaredCasper HassanChafi BrianD.Carlstrom AustenMcDonald WoongkiBaek ChiCaoMinh ChristosKozyrakisKunleOlukotun
HassanChafi AustenMcDonald
ChiCaoMinh BrianD.Carlstrom WoongkiBaek ChristosKozyrakisKunleOlukotun
ComputerSystemLaboratory StanfordUniversity http://tcc.stanford.edu
Correctnessvs.performance
Programmerdefinedisolated,atomicregions Easytoprogram,comparableperformancetofinegrainedlocking Doneinsoftware(STM),hardware(HTM),orboth(Hybrid)
Optimistic:Detectconflictsattransactionboundaries Pessimistic:Detectconflictsduringexecution
Lazy:Speculativewriteskeptincacheuntilendoftransaction Eager:Speculativelywrite“inplace”,rollbackonabort
enough??
0x1000 ….. 0x0004 0x0000 Owned Marked PN … P1 P0 Address SharersList
NowServingTID(NSTID) SkipVector
Markedbitisusedintheprotocol
Usedtoensureaglobalorderingoftransactions SkipvectorusedtohelpmanageNSTID(seepaper)
Data Tag SM SR Valid Dirty
SharingVector WritingVector
Meaningthatlinewasreadorwritteninthecurrenttransaction
Simplebitvector
RequestTID Informalldirectoriesnotinwritingvectorwewillnotbewritingtothem(Skip) RequestNSTIDofalldirectoriesinwritingvector
Markalllinesthatwehavemodified
RequestNSTIDofalldirectoriesinsharingvector
Informalldirectoriesinwritingvectorofcommit Directoryinvalidatesallothercopiesofwrittenline,andmarkslineowned
% $ ! $" % $ ! $" % $ ! $" % $ ! $"
" # $
%
%
%
jaredc@stanford.edu