2014
DOI: 10.1145/2666356.2594332
|View full text |Cite
|
Sign up to set email alerts
|

Improving JavaScript performance by deconstructing the type system

Abstract: Increased focus on JavaScript performance has resulted in vast performance improvements for many benchmarks. However, for actual code used in websites, the attained improvements often lag far behind those for popular benchmarks.This paper shows that the main reason behind this shortfall is how the compiler understands types. JavaScript has no concept of types, but the compiler assigns types to objects anyway for ease of code generation. We examine the way that the Chrome V8 compiler defines types, and identify… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
7
0

Year Published

2015
2015
2022
2022

Publication Types

Select...
6
1

Relationship

0
7

Authors

Journals

citations
Cited by 15 publications
(9 citation statements)
references
References 16 publications
0
7
0
Order By: Relevance
“…We reported this problem to the developers. 3 The root cause is that two arrays that are supposed to have the same length have a slightly different length. The problem does not crash the benchmark but leads to nonsensical computation.…”
Section: A Experimental Setupmentioning
confidence: 99%
See 1 more Smart Citation
“…We reported this problem to the developers. 3 The root cause is that two arrays that are supposed to have the same length have a slightly different length. The problem does not crash the benchmark but leads to nonsensical computation.…”
Section: A Experimental Setupmentioning
confidence: 99%
“…Optimizing JIT compilers benefit from inferred types to emit type-specialized code [20], [24], [36]. Ahn et al [3] improve the object representation to enable optimizations even though objects with different prototypes appear at a single code location. Our work avoids this problem by defining types independent of the prototype object.…”
Section: Related Workmentioning
confidence: 99%
“…It is sufficient to check a single word of memory directly after the object to determine if the object carries a memento. 1 Why not use an extra word in the object or information in the metadata of the object to store allocation site information? What about a hash map?…”
Section: Allocation Sites and Allocation Mementosmentioning
confidence: 99%
“…A detailed description of maps is beyond the scope of the paper; other works offer more detail, e.g. [1].…”
Section: Introductionmentioning
confidence: 99%
“…By manually replacing data structures in applications, the authors obtained significant energy savings as illustrated in Table 2.9. Because the authors of the above work report an extensive list of results, we compared the energy consumption of the most and least energy-efficient interface, 10 and we present in Table 2.9 the data structure with the most energy-efficient methods for each interface.…”
Section: Experimental Studiesmentioning
confidence: 99%