Thread-Level Speculation for Web Applications

Document type: Conference Papers
Peer reviewed: Yes
Full text:
Author(s): Jan Kasper Martinsen, Håkan Grahn
Title: Thread-Level Speculation for Web Applications
Translated title: Spekulativ trådexekvering i Webapplikationer
Conference name: Second Swedish Workshop on Multi-Core Computing (MCC-09)
Year: 2009
Pagination: 80-88
Publisher: SICS
City: Uppsala, Sweden
Organization: Blekinge Institute of Technology
Department: School of Computing (Sektionen för datavetenskap och kommunikation)
School of Computing S-371 79 Karlskrona
+46 455 38 50 00
Authors e-mail:,
Language: English
Abstract: Thread Level Speculation (TLS) has been suggested as a mean to automatically (or semi-automatically) extract parallelism from sequential programs. While there have been multiple attempts both in hardware and software to implement real time TLS, to the best of our knowledge all attempts have so far been on a byte code level or with statically typed languages.

In this study, we examine the potential of TLS for Web Applications, using the popular scripting language JavaScript(JS).We have chosen to execute the programs by traversing their parse trees, taking advantage of information from the programming language that are normally lost when compiled to, e.g., byte code.

We have performed a test where we automatically have divided the execution of the parsing tree among 1, 2, 4, and 8 cores for four benchmark programs. We have found that this approach has a small number of rollbacks (i.e. error correction when speculation fails) and significantly increases the performance of our benchmarks.
Subject: Computer Science\Computersystems
Computer Science\General
Keywords: JavaScript, Multicore, Multiprocessors, Parallellism, Speculative execution