Transaktionsminne (TM) är en lovande teknik som förenklar parallell programmering för delade minnesapplikationer. Hittills har de flesta TM-system utformats för att effektivt stödja parallellism på en nivå. För att uppnå utbredd användning och maximera prestandavinster måste TM stödja nästintill parallellism som finns i många tillämpningar och stöds av flera programmeringsmodeller. Vi presenterar NesTM, en programvara TM (STM) system som stöder slutna-nested parallella transaktioner. NesTM är baserat på en högpresterande, blockerande STM som använder ivrig versionshantering och Word-granularity konfliktdetektering. Dess algoritm riktar sig mot tillstånd och drifttid overheads av bosatta parallella transaktioner. Vi beskriver också flera subtila korrekthetsproblem genom att stödja inbäddade parallella transaktioner i NesTM och diskutera deras effekt på prestandan. Genom vår utvärdering analyserar vi kvantitativt NesTM:s prestanda med hjälp av STAMP-applikationer och mikrobenchmarks baserade på samtidiga datastrukturer. För det första visar vi att prestandan hos NesTM är rimlig när parallellism på en nivå används. För det andra kvantifierar vi de inkrementella omkostnaderna för NesTM när parallellismen utnyttjas i djupare häckningsnivåer och drar slutsatser som kan vara användbara för att utforma en boningaware TM runtime miljö. Slutligen visar vi på ett användningsområde där inbäddad parallellism förbättrar prestandan hos en transaktionell mikrobenchmark.
Detta beslut träder i kraft dagen efter det att det har offentliggjorts i Europeiska unionens officiella tidning. REF presenterar NesTM-stöd för parallella transaktioner med slutna nät.
Implementing and evaluating nested parallel transactions in software transactional memory
{'venue': "SPAA '10", 'journal': None, 'mag_field_of_study': ['Computer Science']}