{"id":797,"date":"2009-09-08T09:42:00","date_gmt":"2009-09-08T09:42:00","guid":{"rendered":"\/blogs\/paul\/post\/Memory-Large-Pages-and-MemToLeave.aspx"},"modified":"2013-01-01T19:05:13","modified_gmt":"2013-01-02T03:05:13","slug":"memory-large-pages-and-memtoleave","status":"publish","type":"post","link":"https:\/\/www.sqlskills.com\/blogs\/paul\/memory-large-pages-and-memtoleave\/","title":{"rendered":"Memory: Large Pages and MemToLeave"},"content":{"rendered":"<p>\n<font face=\"verdana,geneva\" size=\"2\">I&#39;m constantly surprised by the number of people that don&#39;t follow the <\/font><a href=\"http:\/\/blogs.msdn.com\/b\/psssql\/\"><font face=\"verdana,geneva\" size=\"2\">CSS SQL blog<\/font><\/a><font face=\"verdana,geneva\" size=\"2\"> &#8211; some of the best SQL people in the industry post there. I just revisited a couple of really interesting posts by my good friend Bob Ward on memory management internals that I&#39;d like to publicize.<\/font>\n<\/p>\n<p>\n<font face=\"verdana,geneva\" size=\"2\">The first (from June this year) discusses the Large Page allocations that can occur on 64-bit systems and how they affect the memory used by SQL Server. Apart from explaining how this works and the conditions under which it is possible, this post also explains some of the potential problems that may occur from using them, especially with fragmented Windows Server memory. You can get to the blog post at: <\/font><a href=\"http:\/\/blogs.msdn.com\/b\/psssql\/archive\/2009\/06\/05\/sql-server-and-large-pages-explained.aspx\"><font face=\"verdana,geneva\" size=\"2\">SQL Server and Large Pages Explained&#8230;<\/font><\/a>\n<\/p>\n<p>\n<font face=\"verdana,geneva\" size=\"2\">The second post from a week or so ago discusses the MemToLeave behavior of SQL Server (leaving memory from SQL Server&#39;s virtual address space for stuff outside the buffer pool) and some of the issues around that (and that it doesn&#39;t happen on 64-bit systems). You can get to that post at: <\/font><a href=\"http:\/\/blogs.msdn.com\/b\/psssql\/archive\/2009\/08\/26\/come-on-64bit-so-we-can-leave-the-mem.aspx\"><font face=\"verdana,geneva\" size=\"2\">Come on 64bit so we can leave the mem&#8230;<\/font><\/a>\n<\/p>\n<p>\n<font face=\"verdana,geneva\" size=\"2\">Enjoy!<\/font>\n<\/p>\n<p>\n<font face=\"verdana,geneva\" size=\"2\"><\/font><\/p>\n","protected":false},"excerpt":{"rendered":"<p>I&#39;m constantly surprised by the number of people that don&#39;t follow the CSS SQL blog &#8211; some of the best SQL people in the industry post there. I just revisited a couple of really interesting posts by my good friend Bob Ward on memory management internals that I&#39;d like to publicize. The first (from June [&hellip;]<\/p>\n","protected":false},"author":5,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[48,60],"tags":[],"class_list":["post-797","post","type-post","status-publish","format-standard","hentry","category-inside-the-storage-engine","category-memory"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Memory: Large Pages and MemToLeave - Paul S. Randal<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.sqlskills.com\/blogs\/paul\/memory-large-pages-and-memtoleave\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Memory: Large Pages and MemToLeave - Paul S. Randal\" \/>\n<meta property=\"og:description\" content=\"I&#039;m constantly surprised by the number of people that don&#039;t follow the CSS SQL blog &#8211; some of the best SQL people in the industry post there. I just revisited a couple of really interesting posts by my good friend Bob Ward on memory management internals that I&#039;d like to publicize. The first (from June [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.sqlskills.com\/blogs\/paul\/memory-large-pages-and-memtoleave\/\" \/>\n<meta property=\"og:site_name\" content=\"Paul S. Randal\" \/>\n<meta property=\"article:published_time\" content=\"2009-09-08T09:42:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2013-01-02T03:05:13+00:00\" \/>\n<meta name=\"author\" content=\"Paul Randal\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Paul Randal\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.sqlskills.com\/blogs\/paul\/memory-large-pages-and-memtoleave\/\",\"url\":\"https:\/\/www.sqlskills.com\/blogs\/paul\/memory-large-pages-and-memtoleave\/\",\"name\":\"Memory: Large Pages and MemToLeave - Paul S. Randal\",\"isPartOf\":{\"@id\":\"https:\/\/www.sqlskills.com\/blogs\/paul\/#website\"},\"datePublished\":\"2009-09-08T09:42:00+00:00\",\"dateModified\":\"2013-01-02T03:05:13+00:00\",\"author\":{\"@id\":\"https:\/\/www.sqlskills.com\/blogs\/paul\/#\/schema\/person\/ffcec826c18782e1e0adf173826a7fce\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.sqlskills.com\/blogs\/paul\/memory-large-pages-and-memtoleave\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.sqlskills.com\/blogs\/paul\/memory-large-pages-and-memtoleave\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.sqlskills.com\/blogs\/paul\/memory-large-pages-and-memtoleave\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.sqlskills.com\/blogs\/paul\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Memory: Large Pages and MemToLeave\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.sqlskills.com\/blogs\/paul\/#website\",\"url\":\"https:\/\/www.sqlskills.com\/blogs\/paul\/\",\"name\":\"Paul S. Randal\",\"description\":\"In Recovery...\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.sqlskills.com\/blogs\/paul\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.sqlskills.com\/blogs\/paul\/#\/schema\/person\/ffcec826c18782e1e0adf173826a7fce\",\"name\":\"Paul Randal\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.sqlskills.com\/blogs\/paul\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/0b6a266bba2f088f2551ef529293001bd73bf026bc1908b9866728c062beeeb6?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/0b6a266bba2f088f2551ef529293001bd73bf026bc1908b9866728c062beeeb6?s=96&d=mm&r=g\",\"caption\":\"Paul Randal\"},\"sameAs\":[\"http:\/\/3.209.169.194\/blogs\/paul\"],\"url\":\"https:\/\/www.sqlskills.com\/blogs\/paul\/author\/paul\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Memory: Large Pages and MemToLeave - Paul S. Randal","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.sqlskills.com\/blogs\/paul\/memory-large-pages-and-memtoleave\/","og_locale":"en_US","og_type":"article","og_title":"Memory: Large Pages and MemToLeave - Paul S. Randal","og_description":"I&#39;m constantly surprised by the number of people that don&#39;t follow the CSS SQL blog &#8211; some of the best SQL people in the industry post there. I just revisited a couple of really interesting posts by my good friend Bob Ward on memory management internals that I&#39;d like to publicize. The first (from June [&hellip;]","og_url":"https:\/\/www.sqlskills.com\/blogs\/paul\/memory-large-pages-and-memtoleave\/","og_site_name":"Paul S. Randal","article_published_time":"2009-09-08T09:42:00+00:00","article_modified_time":"2013-01-02T03:05:13+00:00","author":"Paul Randal","twitter_misc":{"Written by":"Paul Randal","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.sqlskills.com\/blogs\/paul\/memory-large-pages-and-memtoleave\/","url":"https:\/\/www.sqlskills.com\/blogs\/paul\/memory-large-pages-and-memtoleave\/","name":"Memory: Large Pages and MemToLeave - Paul S. Randal","isPartOf":{"@id":"https:\/\/www.sqlskills.com\/blogs\/paul\/#website"},"datePublished":"2009-09-08T09:42:00+00:00","dateModified":"2013-01-02T03:05:13+00:00","author":{"@id":"https:\/\/www.sqlskills.com\/blogs\/paul\/#\/schema\/person\/ffcec826c18782e1e0adf173826a7fce"},"breadcrumb":{"@id":"https:\/\/www.sqlskills.com\/blogs\/paul\/memory-large-pages-and-memtoleave\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.sqlskills.com\/blogs\/paul\/memory-large-pages-and-memtoleave\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.sqlskills.com\/blogs\/paul\/memory-large-pages-and-memtoleave\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.sqlskills.com\/blogs\/paul\/"},{"@type":"ListItem","position":2,"name":"Memory: Large Pages and MemToLeave"}]},{"@type":"WebSite","@id":"https:\/\/www.sqlskills.com\/blogs\/paul\/#website","url":"https:\/\/www.sqlskills.com\/blogs\/paul\/","name":"Paul S. Randal","description":"In Recovery...","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.sqlskills.com\/blogs\/paul\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.sqlskills.com\/blogs\/paul\/#\/schema\/person\/ffcec826c18782e1e0adf173826a7fce","name":"Paul Randal","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.sqlskills.com\/blogs\/paul\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/0b6a266bba2f088f2551ef529293001bd73bf026bc1908b9866728c062beeeb6?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/0b6a266bba2f088f2551ef529293001bd73bf026bc1908b9866728c062beeeb6?s=96&d=mm&r=g","caption":"Paul Randal"},"sameAs":["http:\/\/3.209.169.194\/blogs\/paul"],"url":"https:\/\/www.sqlskills.com\/blogs\/paul\/author\/paul\/"}]}},"_links":{"self":[{"href":"https:\/\/www.sqlskills.com\/blogs\/paul\/wp-json\/wp\/v2\/posts\/797","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.sqlskills.com\/blogs\/paul\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.sqlskills.com\/blogs\/paul\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.sqlskills.com\/blogs\/paul\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/www.sqlskills.com\/blogs\/paul\/wp-json\/wp\/v2\/comments?post=797"}],"version-history":[{"count":0,"href":"https:\/\/www.sqlskills.com\/blogs\/paul\/wp-json\/wp\/v2\/posts\/797\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.sqlskills.com\/blogs\/paul\/wp-json\/wp\/v2\/media?parent=797"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.sqlskills.com\/blogs\/paul\/wp-json\/wp\/v2\/categories?post=797"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.sqlskills.com\/blogs\/paul\/wp-json\/wp\/v2\/tags?post=797"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}