Files
oak-gpui/crates
Antonio Scandurra 97eae4b081 Improve rendering performance in gpui2 (#3605)
The biggest improvements come from preventing element moves where
unnecessary, and when they are absolutely needed, try to make the struct
we're moving as small as possible. Having big structs on the stack (such
as `Interactivity`) increases the cost of moving but also reduces
opportunities for other compiler optimizations (e.g., inlining).

One more notable change was using `FxHashMap` and `FxHashSet` in hot
code paths where we don't need those collections to be resistant to DoS.

Another thing I am seeing a lot in the profiler is interacting with
`StackingOrder` (cloning it, searching for it, inserting into the
`Scene`). I have some thoughts on how to optimize that but I punted on
it because performance seems to be pretty good now.

Release Notes:

- N/A
2023-12-12 15:09:43 +01:00
..
2023-11-14 08:28:57 -05:00
WIP
2023-12-05 19:27:15 +01:00
2023-11-02 10:55:02 -07:00
2023-11-17 12:54:16 -08:00
2023-12-08 12:48:02 -05:00
2023-12-05 14:57:20 +01:00
2023-12-04 23:35:31 +00:00
2023-11-02 10:55:02 -07:00
2023-12-11 12:28:22 +02:00
2023-11-03 12:15:23 -04:00
2023-11-02 19:18:01 -06:00
2023-11-14 00:06:33 -08:00
2023-11-18 10:46:35 -08:00
2023-11-30 13:07:47 +02:00
2023-11-08 21:23:31 -08:00
2023-12-11 14:21:21 -07:00
2023-11-29 11:52:26 +02:00
2023-12-12 13:50:23 +02:00
2023-12-12 13:34:46 +02:00
2023-12-12 13:50:23 +02:00
2023-12-11 12:28:22 +02:00
2023-12-11 12:28:22 +02:00
2023-12-11 15:06:51 -07:00
2023-12-11 09:38:23 -07:00
WIP
2023-11-16 10:40:02 +02:00
2023-11-03 14:53:08 +01:00
2023-11-03 12:15:23 -04:00
2023-12-07 17:16:19 -08:00
2023-12-11 11:40:54 -07:00
2023-12-11 16:12:17 -07:00
2023-10-23 11:06:58 +02:00
2023-12-12 13:50:23 +02:00
2023-12-06 14:29:09 -08:00
2023-12-11 11:00:55 -07:00
2023-10-28 11:37:25 -04:00