Reduce dotnet runtime#168
Conversation
✅ Deploy Preview for webkit-jetstream-preview ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
|
@maraf Have you seen issues with different builds of the same sources failing? Also, do you have comments or concerns with the PR? |
|
Sorry for late reply, I was OOF in recent days. I'll take lot at changes. I'll take a look at removing the BatchSize property as well, but it should simply fail during (normal) .NET build and not result in OOM at runtime. It looks more like mismatch between build individual files or unrelated to the property removal. Was it interp or AOT? Or both? I didn't encounter any build flakiness, what arch/os is your host? |
|
I know the interpreter was the one that had flakey builds for me. Not sure about the removing Maybe it's the macOS version of dotnet that has issues? I'm on: |
|
I wasn't able to reproduce the build problem from 0b7a21d on I believe removing the |
|
LGTM. Regarding the flaky build: I could just rebuild successfully with the provided dotnet/system information: |
|
@kmiller68 shall we merge this? |
Sounds good. We can always remove the now dead |
Forgot to get back to you on this. It seems like the issue was with stale build artifacts. Once I added |
|
@kmiller68 We have seen some problem with build incrementalism, but not in such a simple case as we have here. The |
|
@maraf I have a |
|
Hmm, apparently I'm not able to. I have an account on slack, but when I try to log in at webkit.slack.com it keeps telling me "No account found". Anyway, can you please send me the binlog by email, marekfisera at microsoft? |
Add a parameter to pass in the BenchTask batch size from benchmark.js. This makes it possible to change the workload without rebuilding the .wasm blobs. The new batch size is dramatically smaller (100/50/10 for old/aot/interp respectively). I also reduced the frame size for the RayTracing half of the benchmark.
Overall though the distribution of time within the .NET wasm blobs is roughly the same between the two versions (in jsc anyway). With the exception of the interpreter subtest spending roughly 10% longer in the interpreter loop.
Lastly, I added some commentary to the README.md about what the benchmark is doing.
N.B.: I tried to remove the old BenchSize getter but that caused some .NET Out of Memory exceptions in the MONO runtime. The whole build process seems weirdly flakey. Sometimes the build will just not run. In fact 0b7a21d is one that fails and the subsequent commit e3dc40e (which didn't change anything, just rebuilt) works.