zlacker

[return to "Keeping Figma Fast: perf-testing the WASM editor"]
1. titzer+lF[view] [source] 2023-08-30 18:28:09
>>imslav+(OP)
Really awesome work! If the authors happen to drop by, I'd be curious if some of the work in their pipeline might be able to help for other types of GUI applications with Wasm. I'm also very curious to see what role, if any the Wasm engine's performance plays in the overall story, and be able to distill out any key workloads that can help Wasm engines improve.
◧◩
2. imslav+9g1[view] [source] 2023-08-30 20:54:06
>>titzer+lF
Thank you for your comment!

WASM gave Figma a lot of speed by default for a lot of perf-sensitive code like rendering, layouts, applying styles and materializing component instances, our GUI code is mostly React and CSS.

WASM engine performance has not been a problem for us, instead we are constantly looking forward improvements in the devex department: debugging, profiling and modularization.

One of the largest challenges of the platform we face today is the heap size limit. While Chrome supports up to 4GB today, that's not yet the case for all browsers. And even with that, we are still discovering bugs in the toolchain (see this recent issue filed by one of our engineers) https://github.com/emscripten-core/emscripten/issues/20137

The challenge of the perf-testing at scale in our company is helping developers to detect perf regressions when they don't expect them - accidental algorithmic errors, misused caches, over-rendering React components, dangerously inefficient CSS directives, etc.

◧◩◪
3. jjcm+mk1[view] [source] 2023-08-30 21:12:42
>>imslav+9g1
+1 to heap size limit speaking as a PM over here at Figma. We regularly see files with hundreds of thousands of layers, and trying to keep those enormous files under 2GB of memory for usage across all supported browsers is a constant struggle.

Would love to see that cap get raised across the board, it'd enable us and others to do so much more.

◧◩◪◨
4. Keyfra+rB1[view] [source] 2023-08-30 23:05:31
>>jjcm+mk1
It's amazing what we lost moving from desktop to retrograde world of the web. I wonder what's next in the indirection game?
◧◩◪◨⬒
5. Alread+vC9[view] [source] 2023-09-02 12:56:34
>>Keyfra+rB1
If you put a shareable state into desktop apps it could swing the other way. I'm not a designer but to just put a url to a mock-up is amazing.
[go to top]