Nice work! I remember getting similarly substantial speed-ups by pre-sizing my collections to the maximum size they'd need to be, since on large problem instances the overhead of re-allocating them as they grew was noticeable.
user92578
1:24 PM
Yeah, I suppose it's the few initial small allocations that really slow things down... probably some more proper initial size bounds would've been possible to figure out had I not been so tired of hitting my head against the problem
For me I was working in C#, so allocating new large collection sizes was probably triggering a full garbage collection sweep and compaction in the middle of the hot loop. 😖
I think it's valid to post here about bugs encountered in tools. There might be known community workarounds that are faster to implement than waiting on the bug report pipeline to do something about it. I just like to remind people to also report the bug in case their question here yields no such known fix.
user92578
Surely a known issue would have that information available in the official bug thread
Vectorization... In terms of ecs i always hear vectorization and cache friendliness. Those are two different things, right ? Is vectorization of loops where we acess structs even possible in c# ? I actually could only find stuff about c# vectorization of primitives like ints, float, doubles.
And they offer both because, it turns out to run a useful community site, you need both. Relying on help documentation alone doesn't solve the problem.
@genaray Some vectorization can be done for you by the compiler and even sometimes by the processor's microcode. There are also C# libraries that implement SIMD vectorization for some common use cases like vector math.
I just installed Universal Render Pipeline (10.5.1) into my Unity (2020.3.15f2) 2D project and believe I have everything configured correctly.
I created a new RenderPipeline asset
I deleted the default Renderer on it and added a new 2D Renderer
I added the RenderPipeline into the Graphics sectio...