Software transactional memory for implicitly parallel functional language

Petr Krajča, Vilém Vychodil · 2010

During the last decade, software transactional memory (STM) gained wide popularity in many areas of parallel computing. In this paper, we introduce LISP-derived language equipped with automatic parallel execution and mutations based on software transactional memory. The novel idea is that we do not incorporate transactions as a language construct but rather use them as a mean of runtime environment to run each computation in a consistent memory and thus provide correct results. STM enables us to efficiently manage concurrent object updates and resolve collisions. In this paper, we describe a variant of deferred lockless STM mechanism with direct updates that enables us to use mutations with minimal costs.

Read the paper · More papers on PaperTik