2023.1.0b11 - Editor: Reduced cost of outline rendering, which improves the frame rate of the editor when many objects are selected.
Again a tiny change; I switched some allocations to a temp allocator. It's nothing world changing, but it's noticeable - there's more to do here.
2023.1.0b11 - Kernel: Performance in heavily run code paths for NativeArray, UnsafeUtility, and AtomicSafetyHandle improved through inlining
This one isn't mine :) - Scott Williams did all the work here. But it's a good change! Scott took a close look at how NativeArray performs hen used with Mono (in Release in particular). Mono isn't the best when it comes to inlining, but you can help it using the MethodImpl attribute to force inlining.
2023.1.0b11 - Scripting: Switched some path sorting during compilation from an invariant culture compare to an ordinal compare, speeding up C# compilation when scripts are changed.
Another tiny one! I'm always surprised by how much we pay because some places that use strings are not specifying to use ordinal comparison. That's of course sometimes not the right thing to do either, but when you aren't dealing with user input but simply want to sort some paths ordinal is just fine.
2023.1.0b11 - Shaders: Reduced the time spent in the asset post processing code for shader assets, which speeds-up the import of shaders.
Same story! More paths, more culture-sensitive string comparisons. This quickly piles up - costs seconds when importing many shaders.
2023.1.0b12 - VFX Graph: Greatly reduced the import cost of VFX Graph objects, especially when importing many at once.
This is two changes in one changelog item :) The first may sound counter-intuitive: There's some shader generation code that uses a StringBuilder and I made that faster by instead allocating a bunch of strings. Huh? It turns out that we only use the StringBuilder to replace text... and replacing text in a StringBuilder doesn't use ordinal comparison and can't be changed. :(