Sciweavers

HIPEAC
2011
Springer

TypeCastor: demystify dynamic typing of JavaScript applications

12 years 10 months ago
TypeCastor: demystify dynamic typing of JavaScript applications
Dynamic typing is a barrier for JavaScript applications to achieve high performance. Compared with statically typed languages, the major overhead of dynamic typing comes from runtime type resolution and runtime property lookup. Common folks’ belief is that the traditional static compilation techniques are no longer effective for dynamic languages. The best known JavaScript engines such as Mozilla TraceMonkey and Chrome V8 have developed non-traditional techniques to reduce the runtime overhead. This paper describes TypeCastor, a new JavaScript engine that tries to investigate where and how much the dynamism really is in JavaScript applications, thus to demystify their dynamic typing behavior. To verify our findings, we evaluate TypeCastor with SunSpider benchmark. For type resolution, we find 99% of all the primitive type instances can be statically identified before the program execution. For object property lookup, more than 97% of all runtime property accesses can be satisfied by...
Shisheng Li, Buqi Cheng, Xiao-Feng Li
Added 23 Dec 2011
Updated 23 Dec 2011
Type Journal
Year 2011
Where HIPEAC
Authors Shisheng Li, Buqi Cheng, Xiao-Feng Li
Comments (0)