Show simple item record

dc.contributor.authorZyulkyarov, Ferad
dc.contributor.authorGajinov, Vladimir
dc.contributor.authorUnsal, Osman Sabri
dc.contributor.authorCristal Kestelman, Adrián
dc.contributor.authorAyguadé Parra, Eduard
dc.contributor.authorHarris, Tim
dc.contributor.authorValero Cortés, Mateo
dc.contributor.otherUniversitat Politècnica de Catalunya. Departament d'Arquitectura de Computadors
dc.identifier.citationZyulkyarov, F. [et al.]. Atomic quake: using transactional memory in an interactive mulitplayer game Server. A: ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming. "14th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming". Raligh, North Carolina: 2009. p. 25-34.
dc.description.abstractTransactional Memory (TM) is being studied widely as a new technique for synchronizing concurrent accesses to shared memory data structures for use in multi-core systems. Much of the initial work on TM has been evaluated using microbenchmarks and application kernels; it is not clear whether conclusions drawn from these workloads will apply to larger systems. In this work we make the first attempt to develop a large, complex, application that uses TM for all of its synchronization. We describe how we have taken an existing parallel implementation of the Quake game server and restructured it to use transactions. In doing so we have encountered examples where transactions simplify the structure of the program. We have also encountered cases where using transactions occludes the structure of the existing code. Compared with existing TM benchmarks, our workload exhibits non-block-structured transactions within which there are I/O operations and system call invocations. There are long and short running transactions (200– 1.3M cycles) with small and large read and write sets (a few bytes to 1.5MB). There are nested transactions reaching up to 9 levels at runtime. There are examples where error handling and recovery occurs inside transactions. There are also examples where data changes between being accessed transactionally and accessed nontransactionally. However, we did not see examples where the kind of access to one piece of data depended on the value of another.
dc.format.extent10 p.
dc.subjectÀrees temàtiques de la UPC::Enginyeria de la telecomunicació
dc.subject.lcshParallel programming (Computer science)
dc.subject.lcshSignal theory (Telecommunication)
dc.titleAtomic quake: using transactional memory in an interactive mulitplayer game Server
dc.typeConference report
dc.subject.lemacSenyal, Teoria del (Telecomunicació)
dc.contributor.groupUniversitat Politècnica de Catalunya. CAP - Grup de Computació d'Altes Prestacions
dc.rights.accessOpen Access
dc.description.versionPostprint (published version)
upcommons.citation.authorZyulkyarov, F.; Gajinov, V.; Unsal, O.; Cristal, A.; Ayguade, E.; Harris, T.; Valero, M.
upcommons.citation.contributorACM SIGPLAN Symposium on Principles and Practice of Parallel Programming
upcommons.citation.pubplaceRaligh, North Carolina
upcommons.citation.publicationName14th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming

Files in this item


This item appears in the following Collection(s)

Show simple item record

All rights reserved. This work is protected by the corresponding intellectual and industrial property rights. Without prejudice to any existing legal exemptions, reproduction, distribution, public communication or transformation of this work are prohibited without permission of the copyright holder