[{"data":1,"prerenderedAt":74},["ShallowReactive",2],{"term-m\u002Fmemory-fragmentation":3,"related-m\u002Fmemory-fragmentation":59},{"id":4,"title":5,"acronym":6,"body":7,"category":40,"description":41,"difficulty":42,"extension":43,"letter":44,"meta":45,"navigation":46,"path":47,"related":48,"seo":53,"sitemap":54,"stem":57,"subcategory":6,"__hash__":58},"terms\u002Fterms\u002Fm\u002Fmemory-fragmentation.md","Memory Fragmentation",null,{"type":8,"value":9,"toc":33},"minimark",[10,15,19,23,26,30],[11,12,14],"h2",{"id":13},"eli5-the-vibe-check","ELI5 - The Vibe Check",[16,17,18],"p",{},"Memory fragmentation is what happens when your program has plenty of free memory in total, but it's scattered around in small, useless chunks instead of one big usable block, like a parking lot with enough empty spots for a bus except they're all single-car-sized and spread out. Allocation requests start failing or slowing down even though there's technically enough memory, which is a uniquely frustrating bug to explain to someone watching the memory graph.",[11,20,22],{"id":21},"real-talk","Real Talk",[16,24,25],{},"Memory fragmentation occurs when free memory becomes divided into many small, non-contiguous blocks over time due to repeated allocation and deallocation of varying sizes, making it impossible to satisfy a large allocation request even though total free memory is sufficient. External fragmentation refers to scattered free blocks between allocations, while internal fragmentation refers to wasted space within an allocated block due to alignment or fixed-size allocation classes.",[11,27,29],{"id":28},"when-youll-hear-this","When You'll Hear This",[16,31,32],{},"\"We had 4GB free but the allocation still failed, that's fragmentation, not a leak.\" \u002F \"Switching to an arena allocator sidestepped the fragmentation entirely.\"",{"title":34,"searchDepth":35,"depth":35,"links":36},"",2,[37,38,39],{"id":13,"depth":35,"text":14},{"id":21,"depth":35,"text":22},{"id":28,"depth":35,"text":29},"backend","Memory fragmentation is what happens when your program has plenty of free memory in total, but it's scattered around in small, useless chunks instead of on...","intermediate","md","m",{},true,"\u002Fterms\u002Fm\u002Fmemory-fragmentation",[49,50,51,52],"Garbage Collection","Page Fault","Heap Dump","Memory Leak",{"title":5,"description":41},{"changefreq":55,"priority":56},"weekly",0.7,"terms\u002Fm\u002Fmemory-fragmentation","ophxr9h-dR2RR5lKeeasBP-3146NtEu0KyJcoIVvF8s",[60,65,68,71],{"title":49,"path":61,"acronym":62,"category":63,"difficulty":42,"description":64},"\u002Fterms\u002Fg\u002Fgarbage-collection","GC","general","Garbage collection is your programming language's automatic cleanup crew. When you create variables and objects, they take up memory.",{"title":51,"path":66,"acronym":6,"category":40,"difficulty":42,"description":67},"\u002Fterms\u002Fh\u002Fheap-dump","A heap dump is a full snapshot of every single object living in your program's memory at one exact moment, frozen so you can poke through it later.",{"title":52,"path":69,"acronym":6,"category":63,"difficulty":42,"description":70},"\u002Fterms\u002Fm\u002Fmemory-leak","A memory leak is when your program keeps grabbing more memory but never gives it back, like filling a bathtub without a drain.",{"title":50,"path":72,"acronym":6,"category":40,"difficulty":42,"description":73},"\u002Fterms\u002Fp\u002Fpage-fault","A page fault happens when your program reaches for a piece of memory that isn't actually sitting in physical RAM yet, maybe it was swapped out, maybe it's...",1792528099287]