TokamakUI / Tokamak

SwiftUI-compatible framework for building browser apps with WebAssembly and native apps for other platforms
Apache License 2.0
2.62k stars 111 forks source link

Add file size to benchmark script #496

Closed ezraberch closed 2 years ago

ezraberch commented 2 years ago

As suggested in #490, this PR adds a file size display to CI. The benchmark script will now display the file size of both benchmarks.

Additionally, the TokamakDemo build in CI was still disabled. This has been fixed.

MaxDesiatov commented 2 years ago

How hard would it be instead of logging this from benchmark.sh to post it as a comment on PR being tested? Looks like there's a seemingly simple GHA script solution for posting the actual comment, the question is only about passing this data to the comment https://stackoverflow.com/a/64126737/442427

To avoid spamming every PR we could only post a comment when there's a significant enough change in size, say 5%+. WDYT?

carson-katri commented 2 years ago

Also, should/can we track the size of the SwiftWasm build as well?

MaxDesiatov commented 2 years ago

Yes, size of .wasm binaries produced by carton bundle is the main thing I'm personally interested in.

ezraberch commented 2 years ago

How hard would it be instead of logging this from benchmark.sh to post it as a comment on PR being tested?

That's doable, but wouldn't an annotation (like what codecov does) be more appropriate?

Also, should/can we track the size of the SwiftWasm build as well?

Are you referring to this from the bundle check?

Right after building the main binary size is 31.67 MB

After stripping debug info the main binary size is 20.61 MB
MaxDesiatov commented 2 years ago

That's doable, but wouldn't an annotation (like what codecov does) be more appropriate? I've been thinking about that, but the problem with annotations is that they're easy to miss.

Maybe we could start with annotation for now if that's easier to implement.

Are you referring to this from the bundle check?

Right after building the main binary size is 31.67 MB

After stripping debug info the main binary size is 20.61 MB

Yes, but maybe it's easier to avoid parsing the output from carton bundle and to just run du -h Bundle/*.wasm as a step in swiftwasm_bundle_5_6 job and get output from that into an annotation or a comment.