none
Adjust Virtual memory paging file size

    Question

  • All of my new x64 computers have 8GB of RAM.  I believe having an 8GB paging file is way too much.  I typically adjust this with Custom size Initial 1024, and Maximum 2048.  Or course this requires a reboot in addition to taking 7GB more than I want it to right from the start.

    Can MDT adjust Virtual Memory during the automated deployment?

    Secondary question:

    Now with x64 and crazy amounts of RAM, does having virtual memory make sense anymore?  I would be curious to see how other Deployers are handling the new virtual memory question?

    thanks!

    -mark

    Thursday, February 24, 2011 8:53 PM

Answers

  • I'm sorry that did not work for you.

    Here is a registry file that works on Windows 7 and Windows 2008 R2 Server.
    I've set the Initial page size to 1024 and Maximumpagefile to 2048 for C:\pagefile.sys

    Save the file to scripts directory and run with regedit /s "%Scriptroot%\yourregfile.reg" as you did before.

    Windows Registry Editor Version 5.00
    
    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management]
    "PagingFiles"=hex(7):63,00,3a,00,5c,00,70,00,61,00,67,00,65,00,66,00,69,00,6c,\
     00,65,00,2e,00,73,00,79,00,73,00,20,00,31,00,30,00,32,00,34,00,20,00,32,00,\
     30,00,34,00,38,00,00,00,00,00
    
    • Marked as answer by Str1ct Tuesday, March 15, 2011 4:59 PM
    Friday, February 25, 2011 4:04 PM

All replies

  • I would suggest creating a vbs script to set the page file. Have it executed before application install or the first Windows update.

    Dim objWMIService, colPageFiles, objPageFile
    
    Set objWMIService = GetObject("winmgmts:\\.\root\cimv2")
    
    Set colPageFiles = objWMIService.ExecQuery _
      ("Select * from Win32_PageFileSetting")
    
    For Each objPageFile in colPageFiles
      'set the page file to 4000 mb
      objPageFile.InitialSize = 4000
      objPageFile.MaximumSize = 4000
      objPageFile.Put_
    Next
    
    Set objWMIService = Nothing
    Set colPageFiles = Nothing
    Set objPageFile = Nothing
    The pagefile will be changed after the next reboot.
    Thursday, February 24, 2011 9:32 PM
  • perfect, thanks!  i am still having a hard time with scripts with in the TS.  does this look right:

     

    Friday, February 25, 2011 1:07 AM
  • Best page file sizes always depends on the workload of the system. There is no magic one size fits all formula: http://blogs.technet.com/b/markrussinovich/archive/2008/11/17/3155406.aspx.

    For desktops; its probably not worth going through a lot of benchmarking, but with disk space being cheap (unless this is VDI deployment), why do you care if its 8GB?


    Jason | http://myitforum.com/cs2/blogs/jsandys | http://blogs.catapultsystems.com/jsandys/default.aspx | Twitter @JasonSandys
    Friday, February 25, 2011 2:29 AM
  • Best page file sizes always depends on the workload of the system. There is no magic one size fits all formula: http://blogs.technet.com/b/markrussinovich/archive/2008/11/17/3155406.aspx.

    For desktops; its probably not worth going through a lot of benchmarking, but with disk space being cheap (unless this is VDI deployment), why do you care if its 8GB?


    Jason | http://myitforum.com/cs2/blogs/jsandys | http://blogs.catapultsystems.com/jsandys/default.aspx | Twitter @JasonSandys

    yes VDI.  in addition our desktops have 60GB SSD's.  so space is an issue.

    Friday, February 25, 2011 3:07 PM
  • this did not work for me.  I beleive this is not compatable with Windows 7.  I got the following powershell script to work:

    $RAM = Get-WmiObject -Class Win32_OperatingSystem | Select TotalVisibleMemorySize

    $RAM = ($RAM.TotalVisibleMemorySize / 1kb).tostring("F00")

    $PageFile = Get-WmiObject -Class Win32_PageFileSetting

    $PageFile.InitialSize = 1024

    $PageFile.MaximumSize = 2048

    [Void]$PageFile.Put()

     

    however its not signed and ps wont run it.  plus im not sure if i have my task script setup correctly:

    powershell.exe -File "%SCRIPTROOT%\adjust_pagefile.ps1"

     

    -mark

    Friday, February 25, 2011 3:09 PM
  • I'm sorry that did not work for you.

    Here is a registry file that works on Windows 7 and Windows 2008 R2 Server.
    I've set the Initial page size to 1024 and Maximumpagefile to 2048 for C:\pagefile.sys

    Save the file to scripts directory and run with regedit /s "%Scriptroot%\yourregfile.reg" as you did before.

    Windows Registry Editor Version 5.00
    
    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management]
    "PagingFiles"=hex(7):63,00,3a,00,5c,00,70,00,61,00,67,00,65,00,66,00,69,00,6c,\
     00,65,00,2e,00,73,00,79,00,73,00,20,00,31,00,30,00,32,00,34,00,20,00,32,00,\
     30,00,34,00,38,00,00,00,00,00
    
    • Marked as answer by Str1ct Tuesday, March 15, 2011 4:59 PM
    Friday, February 25, 2011 4:04 PM
  • If you are having troubles running powershell scripts within a Task Sequence, read: http://blogs.technet.com/b/mniehaus/archive/2009/09/22/running-powershell-scripts-as-part-of-a-task-sequence.aspx
    Keith Garner (KeithGa.com) - Deployment Consultant - http://deployment.XtremeConsulting.com
    Friday, February 25, 2011 5:49 PM
    Moderator
  • Hi Mark

    How did it go with this?

    • Marked as answer by Str1ct Tuesday, March 15, 2011 4:58 PM
    • Unmarked as answer by Str1ct Tuesday, March 15, 2011 4:59 PM
    Friday, March 04, 2011 8:56 AM
  • I'm sorry that did not work for you.

    Here is a registry file that works on Windows 7 and Windows 2008 R2 Server.
    I've set the Initial page size to 1024 and Maximumpagefile to 2048 for C:\pagefile.sys

    Save the file to scripts directory and run with regedit /s "%Scriptroot%\yourregfile.reg" as you did before.

    Windows Registry Editor Version 5.00
    
    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management]
    "PagingFiles"=hex(7):63,00,3a,00,5c,00,70,00,61,00,67,00,65,00,66,00,69,00,6c,\
     00,65,00,2e,00,73,00,79,00,73,00,20,00,31,00,30,00,32,00,34,00,20,00,32,00,\
     30,00,34,00,38,00,00,00,00,00
    
    this worked flawlessly.  thanks!
    Tuesday, March 15, 2011 4:59 PM