scispace - formally typeset
Proceedings ArticleDOI

MuscalietJS: rethinking layered dynamic web runtimes

Reads0
Chats0
TLDR
This paper proposes a layered architecture, called MuscalietJS2, that splits the responsibilities of a JavaScript engine between a high-level, JavaScript-specific component and a low- level, language-agnostic .NET VM, and proposes a two pronged approach to make up for the performance loss due to layering.
Abstract
Layered JavaScript engines, in which the JavaScript runtime is built on top another managed runtime, provide better extensibility and portability compared to traditional monolithic engines. In this paper, we revisit the design of layered JavaScript engines and propose a layered architecture, called MuscalietJS2, that splits the responsibilities of a JavaScript engine between a high-level, JavaScript-specific component and a low-level, language-agnostic .NET VM. To make up for the performance loss due to layering, we propose a two pronged approach: high-level JavaScript optimizations and exploitation of low-level VM features that produce very efficient code for hot functions. We demonstrate the validity of the MuscalietJS design through a comprehensive evaluation using both the Sunspider benchmarks and a set of web workloads. We demonstrate that our approach outperforms other layered engines such as IronJS and Rhino engines while providing extensibility, adaptability and portability.

read more

Citations
More filters
Proceedings ArticleDOI

Deoptimization for dynamic language JITs on typed, stack-based virtual machines

TL;DR: This paper proposes a novel technique that enables deoptimization for dynamic language runtimes implemented on top of typed, stack-based virtual machines, and implements this technique in a JavaScript language implementation, MCJS, running ontop of the Mono runtime (CLR).
Journal ArticleDOI

Concurrency in Mobile Browser Engines

TL;DR: This work uses the Zoomm browser and the MuscalietJS JavaScript engine as running examples of highly concurrent Web browser and JavaScript engines to show how concurrency is effectively exploited at different levels toSpeed up computation performance, preload network resources, and preprocess resources outside the critical path to speed up page loading and Web workloads.
References
More filters
Proceedings ArticleDOI

Trace-based just-in-time type specialization for dynamic languages

TL;DR: This work presents an alternative compilation technique for dynamically-typed languages that identifies frequently executed loop traces at run-time and then generates machine code on the fly that is specialized for the actual dynamic types occurring on each path through the loop.

The design and implementation of the self compiler, an optimizing compiler for object-oriented programming languages

TL;DR: By applying a collection of implementation techniques that can improve the run-time performance of object-oriented languages, the performance of the SELF system is five times better than the fastest Smalltalk-80 system, better than that of an optimizing Scheme implementation, and close to half that of a optimizing C implementation.
Proceedings Article

JSMeter: comparing the behavior of JavaScript benchmarks with real web applications

TL;DR: This paper evaluates the behavior of JavaScript web applications from commercial web sites and compares this behavior with the benchmarks, finding that the benchmarks are not representative of many real web Sites and that conclusions reached from measuring the benchmarks may be misleading.
Book

Node.js

TL;DR: Node.js as discussed by the authors is an evented I/O framework for the V8 JavaScript engine, which is intended for writing scalable network programs such as web servers and includes a REPL environment for interactive testing.
Proceedings ArticleDOI

Selective specialization for object-oriented languages

TL;DR: This paper presents a more general framework for specialization in object-oriented languages and describes a goal directed specialization algorithm that makes selective decisions to apply specialization to those cases where it provides the highest benefit.
Related Papers (5)