0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Webpack继任者Turbopack公布性能基准测试

OSC开源社区 来源:OSC开源社区 作者:OSC开源社区 2022-11-02 13:01 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

Vercel 公司上周在 Next.js Conf 大会上发布了 Next.js 13,同时宣布了最新的开源项目:Turbopack。Turbopack 是面向 JavaScript 和 TypeScript 优化的增量打包工具和构建系统,采用 Rust 编写,声称是 Webpack 的继任者。

其实 Turbopack 正是出自 Webpack 作者 Tobias Koppers 之手,这是他去年加入 Vercel 之后所主导的核心项目。Tobias 深度参与了 Turbopack 的开发。

官方在宣传 Turbopack 时强调了其速度之快 —— 号称热更新速度比 Webpack 快 700 倍、比 Vite 快 10 倍;冷启动速度比 Webpack 快 5 倍。这是因为 Turbopack 在打包时仅引入所需的最少资源,因此冷启动时间非常快。Turbopack 称在包含 3,000 个模块的应用程序中,其冷启动时间为 1.8 秒,而 Vite 需要 11.4 秒,Webpack 需要 16.5 秒。

此外,根据 Turbopack 的官方解释,它基于一个用 Rust 编写的增量计算引擎 Turbo,Turbo 可实现细分到函数粒度的结果缓存、支持内存缓存,未来还将有持久化缓存和远程缓存,以及支持按需编译,尽量减少计算量。

b5437b7a-5a5e-11ed-a3b6-dac502259ad0.png

Turbopack 声称热更新速度比 Vite 快 10 倍,但由于在发布时 Turbopack 没有为这些对比数据提供测试基准,Vue.js 和 Vite 的创建者尤雨溪便亲自创建了测试基准来比较 Vite 和 Turbopack 在 HMR(模块热加载)方面的性能差异,并将测试方法和数据公开在 GitHub 仓库中 (https://github.com/yyx990803/vite-vs-next-turbo-hmr)。

最终的测试结果显示,Turbopack 的热加载速度确实比 Vite 快,但远远没有 10 倍的差距。尤雨溪承认了两者的差距,同时希望 Vercel 公司能提供更透明的基准测试,并在营销过程中使用更准确的表达。

b56173fa-5a5e-11ed-a3b6-dac502259ad0.png

就在今天,Turbopack 公布了性能基准测试方法,并将他们的基准测试结果提供给公众进行验证。

如需运行基准测试,查看 Turbopack 基准测试文档:https://turbo.build/pack/docs/benchmarks

b57bf202-5a5e-11ed-a3b6-dac502259ad0.png

下图是 Vite 与 Turbopack 的 HMR 性能测试对比。Turbopack 表示,当应用程序的模块数量增加到 30k 以上时,Turbopack 的 HMR 速度比 Vite 快 10 倍。而且随着模块数量的增加,差距也更明显 —— 当模块数量超过 50k 时,Turbopack 比 Vite 快 20 倍。

b58ac282-5a5e-11ed-a3b6-dac502259ad0.png

对于 Turbopack 迟来的性能基准测试,尤雨溪再度发声,并说道:“Turbopack 真的比 Vite 快 10 倍吗?”

b5b1c1f2-5a5e-11ed-a3b6-dac502259ad0.png

尤雨溪在阅读 Turbopack 的基准测试后发现,他和 Turbopack 的测试方法和环境存在较大差异,比如 Vite 使用默认的、基于 Babel 的 React 插件,没有使用 RSC,而在 Next.js 中默认启用了 RSC。在这种前提下,这种性能比较缺乏了公平的场景。甚至在小数点的取舍时,Turbopack 都选择了对自己有利的方法 ——Turbopack 的 15ms 四舍五入为 0.01s,而 Vite 的 87ms 则四舍五入为 0.09s。

尤雨溪认为,开源软件的竞争应该建立在开放的沟通、公平的比较和相互尊重的基础上。所以当他看到 Vercel 使用了精心挑选、未经同行评审、存在误导的数据来进行营销时,感到失望和担忧,因为这种场景通常只在商业竞争中发生。

审核编辑 :李倩

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 开源软件
    +关注

    关注

    0

    文章

    214

    浏览量

    16532
  • 缓存
    +关注

    关注

    1

    文章

    248

    浏览量

    27660
  • 函数
    +关注

    关注

    3

    文章

    4408

    浏览量

    66909

原文标题:Webpack继任者Turbopack公布性能基准测试,Vite创建者尤雨溪再度发声

文章出处:【微信号:OSC开源社区,微信公众号:OSC开源社区】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    聊聊 Webpack 那些安全事儿:打包风险与防护小技巧

    Webpack 作为前端工程化的核心工具,几乎成为现代 Web 应用打包的标配。它通过模块合并、代码压缩、依赖管理等功能提升开发效率,但也因配置复杂、代码混淆等特性,潜藏着诸多安全风险。本文结合实战
    的头像 发表于 09-02 10:22 509次阅读
    聊聊 <b class='flag-5'>Webpack</b> 那些安全事儿:打包风险与防护小技巧

    【上海晶珩睿莓1开发板试用体验】4、Coremark性能测试

    CoreMark 介绍 CoreMark 是由 EEMBC(嵌入式微处理器基准委员会)维护的一个轻量、可移植的基准套件,用于评估处理器的整型性能和基本控制/算术工作负载。CoreMark 设计目标
    发表于 08-18 22:18

    是德示波器MSOX2024A时间基准稳定性的测试方法

    一、时间基准稳定性对示波器性能的影响 1.1 时间基准稳定性如何影响示波器的测量精度 时间基准稳定性直接影响示波器测量精度。若时间基准不稳定
    的头像 发表于 08-18 17:19 529次阅读
    是德示波器MSOX2024A时间<b class='flag-5'>基准</b>稳定性的<b class='flag-5'>测试</b>方法

    【米尔RK3576开发板免费体验】1.米尔RK3576性能测试

    --cpu-max-prime=30000 --threads=4 run 2。图形性能测试 GLMark2是专门针对 OpenGL ES 的跨平台基准测试工具,可
    发表于 07-15 21:17

    1.9倍性能提升!英特尔至强6在MLPerf基准测试中表现卓越

    与第五代至强处理器相比,英特尔至强6性能核的性能平均提高了1.9倍。 今日,MLCommons公布了最新的MLPerf推理v5.0基准测试
    的头像 发表于 04-07 10:58 533次阅读

    国产电压基准源替换RFE3012应用于测试测量设备

    国产电压基准源替换RFE3012应用于测试测量设备
    的头像 发表于 03-06 10:43 660次阅读
    国产电压<b class='flag-5'>基准</b>源替换RFE3012应用于<b class='flag-5'>测试</b>测量设备

    曙光存储FlashNexus登顶SPC-1基准测评

    近日,国际存储性能委员会(SPC)公布SPC-1 V3基准测试最新成绩,曙光存储集中式全闪FlashNexus以32控、超3000万IOPS的卓越
    的头像 发表于 02-27 11:17 909次阅读

    AWTK-WEB 快速入门(4) - JS Http 应用程序

    导读XMLHttpRequest改变了Web应用程序与服务器交换数据的方式,fetch是其继任者。本文介绍一下如何使用JS语言开发AWTK-WEB应用程序,并用fetch访问远程数据。用AWTKDesigner新建一个应用程
    的头像 发表于 01-22 11:31 747次阅读
    AWTK-WEB 快速入门(4) - JS Http 应用程序

    SPEC ML基准测试新增模算效率指标

    近日,国际标准性能评估组织SPEC宣布了AI基准测试SPEC ML的最新进展。此次更新标志着SPEC ML基准测试在面向不同AI负载下的软硬
    的头像 发表于 01-15 14:28 783次阅读

    AWTK-WEB 快速入门(3) - C 语言 Http 应用程序

    导读XMLHttpRequest改变了Web应用与服务器交换数据的方式,fetch是XMLHttpRequest继任者,具有更简洁的语法。本文
    的头像 发表于 01-15 11:38 667次阅读
    AWTK-WEB 快速入门(3) - C 语言 Http 应用程序

    E2000 Speedometer测试浏览器性能

    E2000 Speedometer****测试浏览器性能 Version:V1.0 日期:2024-12-5 1、浏览器基准测试Speedometer Speedometer是一款专为
    发表于 01-10 21:33

    MPU的性能评估方法

    MPU(Microprocessor Unit,微处理器单元)的性能评估是确保其在实际应用中能够满足需求的重要环节。以下是一些常用的MPU性能评估方法: 一、基准测试(Benchmar
    的头像 发表于 01-08 09:39 1312次阅读

    如何测试电子开关的性能

    测试电子开关的性能是确保其质量和可靠性的重要环节。以下是一些常用的测试方法和步骤: 一、基本性能测试 标志检查 :确保产品有清晰的标志和说明
    的头像 发表于 12-30 14:55 1811次阅读

    RISC-V基金会CEO宣布辞职,谁将成为继任者

    RISC-VInternational首席执行官我怀着深深的感激之情宣布辞去RISC-VInternational的职务,因为我接受了职业生涯下一步的新角色。我在RISC-V的时光是一段非凡的旅程,由一个非凡社区的集体努力和热情塑造。我们共同取得了令人难以置信的进步,为未来几代人重新定义计算奠定了基础。回顾过去几年,我对我们作为一个团队所取得的成就感到无比自
    的头像 发表于 12-17 16:43 925次阅读
    RISC-V基金会CEO宣布辞职,谁将成为<b class='flag-5'>继任者</b>

    如何设计ADC和DAC的基准源,以及基准源如何影响ADC与DAC那些性能

    如何设计ADC和DAC的基准源,以及基准源如何影响ADC与DAC那些性能?有没有相关的资料参考?
    发表于 12-17 06:27