性能测试

所有基准测试均使用 ubuntu-latest 矩阵在 GitHub Actions 上运行。各种指标由以下应用程序测量:

Tauri Wry Electron
tauri_cpu_intensive wry_cpu_intensive electron_cpu_intensive
tauri_hello_world wry_hello_world electron_hello_world
tauri_3mb_transfer wry_custom_protocol electron_3mb_transfer
备注

CPU 密集测试使用无阻塞 UI 来计算至一定数量上限的素数值,最后通过 Web Worker 汇报计算了多少。

执行时长

初始化应用程序和等待 DOMContentLoaded 事件总共需要多少时间。 其底层使用 hyperfine。在运行完三个预热序列后,程序会再运行十个序列来计算平均执行时间。

wry_cpu_intensive
wry_custom_protocol
wry_hello_world
tauri_3mb_transfer
tauri_cpu_intensive
tauri_hello_world
electron_3mb_transfer
electron_cpu_intensive
electron_hello_world

40403232242416168800seconds

10 Sep10 Sep20 Sep20 SepOct '23Oct '2310 Oct10 Oct20 Oct20 OctNov '23Nov '2310 Nov10 Nov20 Nov20 Nov

二进制文件大小

所有二进制文件均以发行模式 (Release) 编译。

tao_rlib
wry_cpu_intensive
wry_custom_protocol
wry_hello_world
wry_rlib
tauri_3mb_transfer
tauri_cpu_intensive
tauri_hello_world
electron_3mb_transfer
electron_cpu_intensive
electron_hello_world

160 MBs160 MBs120 MBs120 MBs80 MBs80 MBs40 MBs40 MBs0 MBs0 MBsmegabytes10 Sep10 Sep20 Sep20 SepOct '23Oct '2310 Oct10 Oct20 Oct20 OctNov '23Nov '2310 Nov10 Nov20 Nov20 Nov

内存用量

使用 mproff 来获取测试过程中的最大内存使用量。 越小越好。

wry_cpu_intensive
wry_custom_protocol
wry_hello_world
tauri_3mb_transfer
tauri_cpu_intensive
tauri_hello_world
electron_3mb_transfer
electron_cpu_intensive
electron_hello_world

560 MBs560 MBs480 MBs480 MBs400 MBs400 MBs320 MBs320 MBs240 MBs240 MBs160 MBs160 MBsmegabytes10 Sep10 Sep20 Sep20 SepOct '23Oct '2310 Oct10 Oct20 Oct20 OctNov '23Nov '2310 Nov10 Nov20 Nov20 Nov

线程数

应用程序使用的线程数量。 越小越好。

wry_cpu_intensive
wry_custom_protocol
wry_hello_world
tauri_3mb_transfer
tauri_cpu_intensive
tauri_hello_world
electron_3mb_transfer
electron_cpu_intensive
electron_hello_world

10010090908080707060605050threads10 Sep10 Sep20 Sep20 SepOct '23Oct '2310 Oct10 Oct20 Oct20 OctNov '23Nov '2310 Nov10 Nov20 Nov20 Nov

系统调用数

应用程序时执行的系统调用总数。 越小越好。

wry_cpu_intensive
wry_custom_protocol
wry_hello_world
tauri_3mb_transfer
tauri_cpu_intensive
tauri_hello_world
electron_3mb_transfer
electron_cpu_intensive
electron_hello_world

480004800042000420003600036000300003000024000240001800018000syscalls10 Sep10 Sep20 Sep20 SepOct '23Oct '2310 Oct10 Oct20 Oct20 OctNov '23Nov '2310 Nov10 Nov20 Nov20 Nov

依赖数

Wry Linux
Wry Windows
Wry macOS
Tauri Linux
Tauri Windows
Tauri macOS

350350280280210210140140707000dependencies25 Oct25 Oct27 Oct27 Oct29 Oct29 Oct31 Oct31 Oct02 Nov02 Nov04 Nov04 Nov06 Nov06 Nov08 Nov08 Nov10 Nov10 Nov12 Nov12 Nov14 Nov14 Nov16 Nov16 Nov18 Nov18 Nov20 Nov20 Nov22 Nov22 Nov