.NET Memory Expert
Course description
«.NET Memory Expert» is a 14-week online program dedicated to efficient memory management in .NET. The course covers everything from the basics of value and reference types to advanced topics such as Span<T> and working with native memory in the context of Data-Oriented Design.
Despite the automation of memory management in .NET, it is important to understand how to optimize its usage, especially in situations involving memory leaks or excessive CPU load.
Participants will learn to use tools like PerfView for memory analysis, as well as write efficient C# code. Every module is accompanied by practical assignments to reinforce the material.
Watch Online
Watch Online .NET Memory Expert
All Course Lessons (65)
| # | Lesson Title | Duration | Access |
|---|---|---|---|
| 1 | Introduction Demo | 28:25 | |
| 2 | .NET runtime - IL, JIT, assembler | 02:54:18 | |
| 3 | Homework | 00:52 | |
| 4 | Value vs reference type - layout, passing by value and reference | 45:19 | |
| 5 | Stack vs heap | 01:08:33 | |
| 6 | null/NullReferenceException | 20:30 | |
| 7 | Array/list of classes/structs | 15:25 | |
| 8 | Homework | 00:37 | |
| 9 | Automatic memory management | 01:07:43 | |
| 10 | Pauses/throughput/latency/aggressiveness | 53:05 | |
| 11 | Your performance goal? Don't guess, measure | 26:52 | |
| 12 | Homework | 01:24 | |
| 13 | GC in .NET | 31:40 | |
| 14 | GC modes, latency modes and other settings | 01:56:25 | |
| 15 | Homework | 01:05 | |
| 16 | Intro | 06:13 | |
| 17 | Events | 20:29 | |
| 18 | Event Tracing for Windows (ETW) | 01:12:48 | |
| 19 | Linux Trace Toolkit Next Generation (LTTng) | 25:50 | |
| 20 | EventPipes & CLI Diagnostic Tools | 44:45 | |
| 21 | Homework | 00:16 | |
| 22 | Counters | 49:11 | |
| 23 | Dumps | 01:32:49 | |
| 24 | Profilers & Application Performance Monitoring | 19:40 | |
| 25 | Cloud & containers | 57:41 | |
| 26 | Homework | 00:15 | |
| 27 | Generations and other heaps | 02:00:23 | |
| 28 | Roots | 01:58:16 | |
| 29 | Homework | 00:16 | |
| 30 | Operating system cooperation | 01:03:21 | |
| 31 | The GC partitioning internals | 01:17:47 | |
| 32 | The GC phases internals | 01:11:07 | |
| 33 | Homework | 00:27 | |
| 34 | Memory leak - because of no GCs | 31:30 | |
| 35 | Memory leak - because of fragmentation | 31:20 | |
| 36 | Memory leak - because of roots | 58:59 | |
| 37 | Mid-life crisis and Nepotism | 30:34 | |
| 38 | Homework | 00:11 | |
| 39 | Andrey Akinshin | 01:23:13 | |
| 40 | Christophe Nasarre | 01:10:55 | |
| 41 | Konrad Kokosa - live Q&A | 01:06:37 | |
| 42 | Measuring and self-measuring | 01:05:09 | |
| 43 | Reducing allocations - hidden allocations | 42:10 | |
| 44 | Reducing allocations - pooling | 26:19 | |
| 45 | Reducing allocations - structs | 52:45 | |
| 46 | Reducing allocations - strings | 01:10:17 | |
| 47 | Homework | 00:30 | |
| 48 | Finalization | 53:46 | |
| 49 | Disposable objects | 29:44 | |
| 50 | IoC containers | 12:35 | |
| 51 | Weak references | 23:37 | |
| 52 | Homework | 00:12 | |
| 53 | Managed pointers | 59:20 | |
| 54 | Span<T> and Memory<T> | 01:41:49 | |
| 55 | Unsafe class | 20:48 | |
| 56 | Pipelines | 17:03 | |
| 57 | Homework | 00:21 | |
| 58 | Hardware - memory, cache, CPU | 35:29 | |
| 59 | Object layout vs cache | 26:01 | |
| 60 | Access patterns | 40:49 | |
| 61 | Homework | 00:13 | |
| 62 | Pinning | 29:01 | |
| 63 | Off the heap | 09:19 | |
| 64 | Function pointers | 11:20 | |
| 65 | Homework | 00:09 |
Unlock unlimited learning
Get instant access to all 64 lessons in this course, plus thousands of other premium courses. One subscription, unlimited knowledge.
Learn more about subscriptionBooks
Read Book .NET Memory Expert
| # | Title |
|---|---|
| 1 | M01L01Introduction |
| 2 | M01L02Runtime |
| 3 | M01L03Homework |
| 4 | M01L03HomeworkSolutions |
| 5 | M02L01ValueVsReferenceType |
| 6 | M02L02StackVsHeap |
| 7 | M02L03null |
| 8 | M02L04ArrayVsList |
| 9 | M02L05Homework |
| 10 | M03L01AutomaticMemory |
| 11 | M03L02PausesThroughpu |
| 12 | M03L03PerformanceGoal |
| 13 | M03L04Homework |
| 14 | M04L01GCinNET |
| 15 | M04L02GCModes |
| 16 | M04L03Homework |
| 17 | M05L01ToolsIntro |
| 18 | M05L02ToolsEvents |
| 19 | M05L03ToolsETW |
| 20 | M05L04ToolsLTTng |
| 21 | M05L05ToolsEventPipes |
| 22 | M05L06Homework |
| 23 | M05L06HomeworkSolutions |
| 24 | M06L01ToolsCounters |
| 25 | M06L02ToolsDumps |
| 26 | M06L03ToolsProfilersAPMs |
| 27 | M06L04ToolsCloudContainers |
| 28 | M06L05Homework |
| 29 | M06L05HomeworkSolutions |
| 30 | M07L01GenerationsAndHeaps |
| 31 | M07L02Roots |
| 32 | M07L03Homework |
| 33 | M07L03HomeworkSolutions |
| 34 | M08L01OperatingSystem |
| 35 | M08L02Paritioning |
| 36 | M08L03Phases |
| 37 | M08L04Homework |
| 38 | M08L04HomeworkSolutions |
| 39 | M09L01MemoryLeakNoGCs |
| 40 | sM09L02MemoryLeakFragmentation |
| 41 | M09L03MemoryLeakRoots |
| 42 | M09L04MidLifeCrisisAndNepotism |
| 43 | M09L05Homework |
| 44 | M09L06 |
| 45 | M09L07Dotnetos_NETCoreTroubleshootingSlides |
| 46 | M10L01Allocations |
| 47 | M10L02ReducingHidden |
| 48 | M10L03ReducingPooling |
| 49 | M10L04ReducingStructs |
| 50 | M10L05ReducingStrings |
| 51 | M10L06Homework |
| 52 | M11L01Finalization |
| 53 | M11L02DisposableObjects |
| 54 | M11L03IoCContainers |
| 55 | M11L04WeakReferences |
| 56 | M11L05HomeworkInstructions |
| 57 | M12L01ManagedPointers |
| 58 | M12L02SpanMemory |
| 59 | M12L03Unsafe |
| 60 | M12L04Pipellines |
| 61 | M12L05Homework |
| 62 | M13L01Hardware |
| 63 | M13L02ObjectLayoutVsCache |
| 64 | M13L03AccessPatterns |
| 65 | M13L04HomeworkInstructions |
| 66 | M14L01Pinning |
| 67 | M14L02OffTheHeap |
| 68 | M14L03FunctionPointers |
| 69 | M14L04HomeworkInstructions |
Comments
0 commentsSimilar courses

C# Application from Start to Finish

ASP.NET Core Identity - Authentication & Authorization

What's New in C# 12: A Practical Guide with Exercises

Want to join the conversation?
Sign in to comment