Para acceder a los documentos con el texto completo, por favor, siga el siguiente enlace:

TM-dietlibc: A TM-aware real-world system library
Smiljkovic, Vesna; Nowack, Martin; Miletic, Nebojša; Harris, Tim; Unsal, Osman Sabri; Cristal Kestelman, Adrián; Valero Cortés, Mateo
Universitat Politècnica de Catalunya. Departament d'Arquitectura de Computadors; Universitat Politècnica de Catalunya. CAP - Grup de Computació d´Altes Prestacions
The simplicity of concurrent programming with Transactional Memory (TM) and its recent implementation in mainstream processors greatly motivates researchers and industry to investigate this field and propose new implementations and optimizations. However, there is still no standard C system library which a wide range of TM developers can adopt. TM application developers have been forced to avoid library calls inside of transactions or to execute them irrevocably (i.e. in serial order). In this paper, we present the first TM-aware system library, a complex software implementation integrated with TM principles and suited for software (STM), hardware (HTM) and hybrid TM (HyTM). The library we propose is derived from a modified lock-based implementation and can be used with the existing standard C API. In our work, we describe design challenges and code optimizations that would be specific to any TMbased system library or application. We argue about system call execution within transactions, highlighting the possibility of unexpected results from threads. For this reason we propose: (1) a mechanism for detecting conflicts over kernel data in user space, and (2) a new barrier to allow hybrid TM to be used effectively with system libraries. Our evaluation includes different TM implementations and the focus is on memory management and file operations since they are widely used in applications and require additional mechanisms for concurrent execution. We show the benefit we gain with our libc modifications providing parallel execution as much as possible. The library we propose shows high scalability when linked with STM and HTM. For file operations it shows on average a 1.1, 2.6 and 3.7x performance speedup for 8 cores using HyTM, STM and HTM, respectively (over a lock-based single-threaded execution). For a red-black tree it shows on average 3.14x performance speedup for 8 cores using STM (over a multi-read single-threaded execution).
Peer Reviewed
Àrees temàtiques de la UPC::Informàtica::Arquitectura de computadors
Parallel programming (Computer science)
Computer storage devices
Transactional memory
System library
System calls
Memory allocation
Programació en paral·lel (Informàtica)
Ordinadors -- Memòries
Institute of Electrical and Electronics Engineers (IEEE)

Mostrar el registro completo del ítem

Documentos relacionados

Otros documentos del mismo autor/a

Smiljkovic, Vesna; Stipic, Srdjan; Fetzer, Christof; Unsal, Osman Sabri; Cristal Kestelman, Adrián; Valero Cortés, Mateo
Stipic, Srdjan; Karakostas, Vasileios; Smiljkovic, Vesna; Gajinov, Vladimir; Unsal, Osman Sabri; Cristal Kestelman, Adrián; Valero Cortés, Mateo
Vallejo, Enrique; Sanyal, Sutirtha; Harris, Tim; Vallejo, Fernando; Beivide, Ramón; Unsal, Osman Sabri; Cristal Kestelman, Adrián; Valero Cortés, Mateo
Zyulkyarov, Ferad; Gajinov, Vladimir; Unsal, Osman Sabri; Cristal Kestelman, Adrián; Ayguadé Parra, Eduard; Harris, Tim; Valero Cortés, Mateo
Cristal Kestelman, Adrián; Felber, Pascal; Riviere, Etienne; Moreira, Walter Maldonado; Harmanci, Derin; Marlier, Patrick; Diestelhorst, Stephan; Hohmuth, Michael; Pohlack, Martin; Afek, Yehuda; Tomić, Saša; Drepper, Ulrich; Gramoli, Vincent; Kapalka, Michal; Guerraoui, Rachid; Dragojevic, Aleksandar; Stenstrom, Per; Unsal, Osman Sabri; Hur, Ibrahim; Korland, Guy; Nowack, Martin; Riegel, Torvald; Shavit, Nir; Fetzer, Christof