Skip to main content

.NET Memory Expert

43h 15m 52s
English
Paid

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

This is a demo lesson (10:00 remaining)

You can watch up to 10 minutes for free. Subscribe to unlock all 65 lessons in this course and access 10,000+ hours of premium content across all courses.

View Pricing
0:00
/
#1: Introduction

All Course Lessons (65)

#Lesson TitleDurationAccess
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 subscription

Books

Read Book .NET Memory Expert

#Title
1M01L01Introduction
2M01L02Runtime
3M01L03Homework
4M01L03HomeworkSolutions
5M02L01ValueVsReferenceType
6M02L02StackVsHeap
7M02L03null
8M02L04ArrayVsList
9M02L05Homework
10M03L01AutomaticMemory
11M03L02PausesThroughpu
12M03L03PerformanceGoal
13M03L04Homework
14M04L01GCinNET
15M04L02GCModes
16M04L03Homework
17M05L01ToolsIntro
18M05L02ToolsEvents
19M05L03ToolsETW
20M05L04ToolsLTTng
21M05L05ToolsEventPipes
22M05L06Homework
23M05L06HomeworkSolutions
24M06L01ToolsCounters
25M06L02ToolsDumps
26M06L03ToolsProfilersAPMs
27M06L04ToolsCloudContainers
28M06L05Homework
29M06L05HomeworkSolutions
30M07L01GenerationsAndHeaps
31M07L02Roots
32M07L03Homework
33M07L03HomeworkSolutions
34M08L01OperatingSystem
35M08L02Paritioning
36M08L03Phases
37M08L04Homework
38M08L04HomeworkSolutions
39M09L01MemoryLeakNoGCs
40sM09L02MemoryLeakFragmentation
41M09L03MemoryLeakRoots
42M09L04MidLifeCrisisAndNepotism
43M09L05Homework
44M09L06
45M09L07Dotnetos_NETCoreTroubleshootingSlides
46M10L01Allocations
47M10L02ReducingHidden
48M10L03ReducingPooling
49M10L04ReducingStructs
50M10L05ReducingStrings
51M10L06Homework
52M11L01Finalization
53M11L02DisposableObjects
54M11L03IoCContainers
55M11L04WeakReferences
56M11L05HomeworkInstructions
57M12L01ManagedPointers
58M12L02SpanMemory
59M12L03Unsafe
60M12L04Pipellines
61M12L05Homework
62M13L01Hardware
63M13L02ObjectLayoutVsCache
64M13L03AccessPatterns
65M13L04HomeworkInstructions
66M14L01Pinning
67M14L02OffTheHeap
68M14L03FunctionPointers
69M14L04HomeworkInstructions

Comments

0 comments

Want to join the conversation?

Sign in to comment

Similar courses

Unity RPG Shops & Abilities: Intermediate C# Game Coding

Unity RPG Shops & Abilities: Intermediate C# Game Coding

Sources: gamedev.tv
Using Unity 2020.2, we’ll show you how to include three essential game mechanics, Shops, Special Abilities and Traits, in your games.
18 hours 51 minutes 42 seconds
Building Applications with React 17 and ASP.NET Core 6

Building Applications with React 17 and ASP.NET Core 6

Sources: udemy
With ASP.NET Core we can develop Web APIs using C#. With React you can create modern, fast and flexible web applications. In this course we will use both tools
19 hours 28 minutes 31 seconds
Design Patterns in C# and .NET

Design Patterns in C# and .NET

Sources: udemy
Discover the modern implementation of design patterns with C# and .NET. This course provides an overview of all the Gang of Four (GoF) design patterns as outlined in their semin...
20 hours 15 minutes 1 second