Not So Fast: Analyzing the Performance of WebAssembly vs. Native Code

被引:0
|
作者
Jangda, Abhinav [1 ]
Powers, Bobby [1 ]
Berger, Emery D. [1 ]
Guha, Arjun [1 ]
机构
[1] Univ Massachusetts, Amherst, MA 01003 USA
基金
美国国家科学基金会;
关键词
D O I
暂无
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
All major web browsers now support WebAssembly, a low-level bytecode intended to serve as a compilation target for code written in languages like C and C++. A key goal of Web-Assembly is performance parity with native code; previous work reports near parity, with many applications compiled to WebAssembly running on average 10% slower than native code. However, this evaluation was limited to a suite of scientific kernels, each consisting of roughly 100 lines of code. Running more substantial applications was not possible because compiling code to WebAssembly is only part of the puzzle: standard Unix APIs are not available in the web browser environment. To address this challenge, we build BROWSIX-WASM, a significant extension to BROWSIX [29] that, for the first time, makes it possible to run unmodified WebAssembly-compiled Unix applications directly inside the browser. We then use BROWSIX-WASM to conduct the first large-scale evaluation of the performance of WebAssembly vs. native. Across the SPEC CPU suite of benchmarks, we find a substantial performance gap: applications compiled to WebAssembly run slower by an average of 45% (Firefox) to 55% (Chrome), with peak slowdowns of 2:08 x (Firefox) and 2:5 x (Chrome). We identify the causes of this performance degradation, some of which are due to missing optimizations and code generation issues, while others are inherent to the WebAssembly platform.
引用
收藏
页码:107 / 120
页数:14
相关论文
共 50 条
  • [21] Native Speaker Teachers vs. Non-native Speaker Teachers
    卢秋霞
    校园英语, 2020, (13) : 8 - 8
  • [22] Code Writing vs Code Completion Puzzles: Analyzing Questions in an E-exam
    Sindre, Guttorm
    2020 IEEE FRONTIERS IN EDUCATION CONFERENCE (FIE 2020), 2020,
  • [23] Analyzing The Outputs — Dehydrated Vs. Composted Food Scraps
    Alexander, Ron
    BioCycle, 2024, 65 (10)
  • [24] High Performance and Low Power Architectures: GPU vs. FPGA for Fast Factorized Backprojection
    Wielage, M.
    Cholewa, F.
    Fahnemann, C.
    Pirsch, P.
    Blume, H.
    2017 FIFTH INTERNATIONAL SYMPOSIUM ON COMPUTING AND NETWORKING (CANDAR), 2017, : 351 - 357
  • [25] Microservices: Granularity vs. Performance
    Shadija, Dharmendra
    Rezai, Mo
    Hill, Richard
    COMPANION PROCEEDINGS OF THE 10TH INTERNATIONAL CONFERENCE ON UTILITY AND CLOUD COMPUTING (UCC'17 COMPANION), 2017, : 215 - 220
  • [26] Emergency vs. In House Code Stoke: Differences and Similarities
    Jones, Robin R.
    Buckner, Amy M.
    Taylor, Reid
    STROKE, 2013, 44 (02)
  • [27] Fire Behaviour of Structural Steel - Code vs. Tests
    Petrina, Tudor
    WORLD MULTIDISCIPLINARY EARTH SCIENCES SYMPOSIUM (WMESS 2016), PTS 1-4, 2016, 44
  • [28] Tracing vs. Writing Code: Beyond the Learning Hierarchy
    Harrington, Brian
    Cheng, Nick
    SIGCSE'18: PROCEEDINGS OF THE 49TH ACM TECHNICAL SYMPOSIUM ON COMPUTER SCIENCE EDUCATION, 2018, : 423 - 428
  • [29] Native botulinum toxin type A vs. redesigned botulinum toxins in pain: What did we learn so far?
    Matak, Ivica
    Lackovic, Zdravko
    CURRENT OPINION IN PHARMACOLOGY, 2024, 78
  • [30] Diversity of Entrepreneurial Perceptions: Immigrants vs. Native Population
    Kushnirovich, Nonna
    Heilbrunn, Sibylle
    Davidovich, Liema
    EUROPEAN MANAGEMENT REVIEW, 2018, 15 (03) : 341 - 355