Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

YouTube

Evolving the Go Memory Manager's RAM and CPU Efficiency

Gopher Academy via YouTube

Overview

Explore recent improvements to the Go memory manager in this GopherCon 2020 talk by Michael Knyszek. Dive into the runtime's enhanced responsiveness in releasing unused memory and the increased scalability of the memory allocator. Gain insights into the inner workings of the Go runtime, examine motivating examples, and learn about the challenges encountered during implementation. Discover how these changes may impact the performance of Go applications. While a basic understanding of operating systems concepts is beneficial, the talk introduces necessary concepts for clarity. Cover topics such as dynamic memory allocation, heap memory lifecycle, allocation policies, scenarios involving large allocations and heap spikes, lock collapse, bitmap implementation, page caching, and bitmap summarization. Walk away with a deeper understanding of Go runtime functionality and its potential effects on application performance.

Syllabus

Intro
Overview
Orientation
Dynamic Memory Allocation
The Heap Memory "Lifecycle"
Talking policy
Scenario: Large allocation to fragmented heap
Picking a policy
Scenario: Heap Spikes
Lock collapse
Bitmaps!
Caching pages
Summarizing the bitmap
Takeaways

Taught by

Gopher Academy

Reviews

Start your review of Evolving the Go Memory Manager's RAM and CPU Efficiency

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.