When we talk about allocations, we have basically two truth: allocations are really fast - and don't allocate if you haven't to. The practical trade-off is between writing easy allocate-y code, and improving it with different methods - which make it harder to write and maintain but putting less pressure to GC. We will consider allocating and deallocating memory as an overhead for some useful job we want use memory for and try to decide what are these trade offs. We will try to derive how GC works from simple performance tests to make it more practical. Yes, it is gonna be Sherlock's detective story, keep your magnifying glass ready!
YOU MAY ALSO LIKE:
- Software Architecture for Developers Workshop (in London on 2nd - 3rd December 2019)
- Functional Concurrency in .NET with C# and F# (in London on 9th - 10th December 2019)
- F# eXchange 2020 (in London on 2nd - 3rd April 2020)
- ProgNET London 2020 (in London on 16th - 18th September 2020)
- Designing embodied human-computer interactions with audio processing parameters (in London on 22nd October 2019)
- Keynote by Konrad Kokosa: What’s New in .NET Core 3.0 and .NET 5.0 for Performance and Memory-Aware Folks? (in London on 29th October 2019)
- A special Linuxing In London evening: NVIDIA AI at the Edge (SkillsCast recorded in September 2019)
- Type-Safe Datatype-Generic Programming in F# (SkillsCast recorded in September 2019)
Pragmatic Memory Management
Anatoly Zhmur is working with .net from times of early beta in 2001. Now he is Senior Technical Architect doing Bitemporal NoSQL database at Broadridge. He spends a lot of time on optimizing his code to sub milliseconds latencies or multi-gigabyte per second throughputs.