Hyper-V, Dynamic Memory, Memory Demand more than Maximum memory

Hi,
I have found that for some VMs Demand Memory more that Maximum Memory set.
Where can I found any documentation about this?

A VM can 'demand' more memory than is possible'
But it will never actually be given more then the maximum.
In the VM the application is asking for more RAM from the virtual memory manager of the OS in the VM (not to be confused with any memory management that the hypervisor is doing).
When the VM hits its Maximum setting it is no different than a physical machine hitting its physical RAM cap - the OS begins paging to give the application the additional RAM it is asking for.
It simply means that you have a greedy application.  SQL and the Exchange mailbox role have a long history of being very greedy applications (SQL made many changes to work in concert with dynamic memory) - taking all of the RAM they could get.
In your case, you have a startup of 32GB a minimum of 24GB and a Maximum of 36GB.  And the application in the VM would 'like' to have 54GB.  If you look in your VM OS you will probably find that it is paging to disk.
What is your allocation setting?  The default of 20%  Higher?
Personally - I see little value in using dynamic memory with such a small window of difference between the startup, minimum, and maximum.  It is as if you are trying to micro manage the feature, instead of allowing the feature to work as designed.
Dynamic memory is designed to balance RAM between all of the VMs on a particular hypervisor at the same time.  And to allow use of all the RAM the machine has, if there is a workload that can use it.  If the VM wants 64GB, why not give it that. 
Dynamic memory will not starve other VMs to give this VM more RAM (unless you give this VM a higher priority).  But it will take RAM away from a VM (if absolutely necessary) to allow another VM to meet its requirements.
Any VM is always guaranteed its startup, at boot time.  And dynamic memory will not starve it below it minimum - and if the VM is not using RAM it will take RAM away down to the minimum.  And a VM will never be given more than the maximum, even
if the VM wants more.
Brian Ehlert
http://ITProctology.blogspot.com
Learn. Apply. Repeat.
Disclaimer: Attempting change is of your own free will.

Similar Messages

  • How come free memory will be more than physical memory?

    Hello Guruz,
    Interesting, I installed one zone with 1Gb dedicated memory, But when I type top command I am getting o/p as below.
    Memory: 1024M phys mem, 1972M free mem
    How come free memory will be more than physical memory?
    If that so, how can we get exact memory utilization on non-global zones.
    Thanks in advance.
    Thanks & Regards
    Prakash K
    Off: +91 2022970906

    Hi Prakash,
    Please run the following command on the Global Zone and Non - Global Zone and upload the output.
    # prtconf |grep -i memory
    SK

  • PCI 5112 and fetch more than available memory

    Would anyone confirm that  pci 5112 can run fetch more than available memory vi with a large number of records(more than onboard memory)? Mine appears not able. thanks.

    see attached screen shot. the error message is different from that in the cited article.
    Attachments:
    niscope_error.jpg ‏86 KB

  • More than maximum 5 filtered album lists trying to register. This will fail,Why i am getting this error when i pick video from Photo library.

    I am able to pick 4 videos from the Photo library in my iPhoneAPP but when i try to pick 5th one it throws an error:
    "More than maximum 5 filtered album lists trying to register. This will fail,Why i am getting this error when i pick video from Photo library."

    Hello Tate r Bulic
    I don't have any idea how to remove this error,can i pick more than 5 videos from the photo library...
    If it's then please help me and gimme idea..Thanks

  • Importing more than one Memory Card at the same time

    As a productivity tool for professionnals, Lightroom should allow us to import from more than one source at the same time, as Aperture do.  I have a multiple Flash Card reader, and we cannot import all of them at the same time in Lightroom...
    I know that I can copy them in a folder, then importing them in LR...  But this is time and space consuming  if I want to convert the file in DNG : it's okay if photography is a hobby for you, but when it's your full time job, and  you often import 4 16Gb Compact Flash Cards at the same time, you don't want to waste time to wait the copying process on your hard disk, and then   wait for the "import  and convert to DNG" process : this process require to duplicate the files : RAW to DNG on the same hard disk, instead of Direct copy and convert to DNG from your memory cards to your Hard Disk.

    You can have multiple remotes for one ATV, and one remote for multiple ATVs.
    In our house we have two iPhones and one iPod iPod Touch, all able to control the same ATV at the same time (much to the delight of my daughter who enjoys ousting my music choices for her own).
    Why have iPod touch in each room? Its not a wired remote - its a mobile device. Think of a landline vs mobile telephone - landlines are one per room, mobiles are one per person - that's how an iPod is used, even as a remote - you take it with you.
    Just like a mobile phone, you'd have one personalised iPod Touch or iPhone per person, not per ATV or room.

  • Black screen when adding more than 2gb memory

    I have Toshiba Satellite P105-6147. I recently added 1 gb to my machine, and wth the 512mb worked fine.  I want to replace 512mb with 2gb - for a total of 3gb - but computer will not boot up in that configuration.  Any suggestions on how to get it to work the extra memory?  Does this model even support more than 2 gb?  Thanks.

    Satellite P105-S6147
    for a total of 3gb
    According to the spec above, the maximum is 2 GB.
    But that model should never had been configured with less than 2 GB. Vista will barely even boot with 1 GB.
    -Jerry

  • HT6162 My devices are telling me that u need to upgrade my software but it tells me that I do t have the memory to do so. I have MORE than enough memory. Can anyone help??!!?

    My iPhone and iPad are telling me that I need to upgrade my software but that I don't have enough memory. I have tons of memory. What can I do?

    Perform the updates using a computer with iTunes.  You can also back up prior to upgrading doing it that way.

  • Dynamic Calc member has more than 100 children

    In my db, I've a dynamic calc member, in say hierarchy Accounts, that has more than 100 members under it (children).
    I'm using MaxL scripts to update the Accounts hierarchy i.e. adding new members, tagging UDA's etc.
    However, the MaxL command is erroring out with a Network Error: Cannot Recieve/Send data. I understand if I try doing the update via
    EAS and try to save the outline, it gives me the more than 100 children warning but still allows me to save it but via MaxL I cannot force
    it to do so.
    This is just a warning and shouldn't MaxL still save the outline? Is there something else that am missing or is there any solution for this issue.
    This is a Sparse dimension. More members will be added to the hierarchy monthly, thereby not reducing the count below hundred.
    Any help/advise is much appreciated. Thanks.
    @deepak

    I am envisioning an entire sparse Accounts dimension with all of the upper levels dynamic. If it is like most accounts dimensions I have seen it has a lot of level zero members and a lot of parent rollups. looking at top level members could be very slow (relative to if they were calculated or dense). We have all done interesting things in our cubes to gain some performance measure trading off calculation and retrieval performance. Doing something like this is an area where a testing is crital

  • Can I turn up the volume more than maximum volume?

    I'm using iMac with no external speakers connected. I always want to turn up the volume more than the maximum volume but I don't know how to do. Is there any ways? Thanks.

    Ahh, think about it a moment. It's called "maximum" for a reason.
    If you want louder sound connect a set of powered external speakers.

  • Can't add more than one memory stick

    Hi guys,
    I could really use some help, this is driving me insane for weeks and I can't find any solution among teh interweb or this forum.
    My problem: I've a very instable system : different bsod on win7 start up, infinite reboot, random black screen, freeze...even the bios freeze once.
    My 2cts: Memory trouble. By using various ineffective methods (listed below), the only repetitive pattern I've found is that -> the more memory stick I use, the more instable the system became.
     - With 1 stick I get sometime a stable system (3 days without trouble) but it goes back to infinite loop after a crash
     - With 2 sticks I get a stable windows but freeze after 5-10min of gaming, and infinite loop
     - With 3 sticks I can't get pass windows start up, and infinite loop most of the time
    My current solution: I manage to get these results with by downgrading the memory (otherwise I get bsod on start up or infinite reboot every time even with one stick).
     - EIST and Intel Turbo Boost turn off
     - Ram frequency set to 1066Hz (instead of 1333) -> Funny this parameter seems not to hold, it goes back to 1333
     - Unlink ram configuration: CRate at 2 and 9-9-9-27 (instead of 9-9-9-24) -> not sure because the value on center column is still at 24
     - Vram set between 1.5v and 1.65v (instead of 1.46 in auto)
    Other unsuccessful stuff I've tried:
     - each tests are made with barebone configuration (one HDD, no DVD, etc...)
     - multiple CMOS clearing (all night with jumper)
     - several clean win7 install
     - several tests with each of my 4 ram sticks alone (on DIMM 1)
     - all drivers update
     - return the motherboard to get a new one (the actual is 3 months old)
     - buying 2 more ram sticks
     - BIOS flash with 1.H, 1.G and even the brand new one 1.I !
    My configuration :
    i5 2500K @3.3Gb
    P67A-GD55 (b3)
    GIGABYTE GTX 560 ti
    2x2Gb Crucial DDR3 1333MHz (CT25664BA1339.M8FR)
    2x2Gb GSkill DDR3 1333MHz (F3-10600CL9D-4GBNT)
    SSD HD for system
    Windows 7 64bits PRO sp1
    Corsair TX650
    No fancy keyboard like GR11 (microsoft wireless 10.A)
    Logitech G500 usb mouse
    Any ideas ?? Thanks ! 

    Quote
    2x2Gb Crucial DDR3 1333MHz (CT25664BA1339.M8FR)
    2x2Gb GSkill DDR3 1333MHz (F3-10600CL9D-4GBNT)
    Sorry! Not going to work, no way, no how!
    Ditch the G.Skill & use just the Crucial. RAM defaults the way it does because of the SPD profiles programmed on the chips. Use either 'Link' or Auto. Set Dram V. to 1.514-1.521v., manually set timings to CR 1, 9 9 9 24.

  • Memory allocation much more than size of table TST03

    Hi all,
    I found a strange situation, in our system, memory allocation in SP12 shows 2GB is used in DB side, but when I go to transaction DB02 to check the table TST03, it only has 50MB. Our parameter rspo/store_location is already set to 'db'.
    System environment is: ECC6 running on AIX 53/Oracle 10g, 64bit.
    In my opinion, temse data will be stored in TST03, so I think TST03 size should be larger than memory allocation result in SP12.
    Could you please help me about this?
    Thanks and regards

    Hi Justin
    Nice question, really made me think. I just checked, in the newer SAP versions, TST03 has a BLOB column, in the older versions there was a LONG RAW col.
    I bet you have the BLOB (ECC6), you can check in sqlplus:
    [code]SQL> desc sapsr3.tst03
    Name                                      Null?    Type
    DCLIENT                                   NOT NULL VARCHAR2(9)
    DNAME                                     NOT NULL VARCHAR2(60)
    DPART                                     NOT NULL NUMBER(5)
    DROWNO                                    NOT NULL NUMBER(10)
    DDATALEN                                  NOT NULL NUMBER(5)
    DCONTENT                                           BLOB[/code]
    A lob column is stored in a seperate segment:
    [code]SQL> select SEGMENT_NAME from dba_lobs where table_name = 'TST03';
    SEGMENT_NAME
    SYS_LOB0000031954C00006$$[/code]
    Just replace your segment_name to get the size, you can enter the segment in DB02 too:
    [code]SQL> select BYTES/1024/1024 "SIZE_MB" from dba_segments where segment_name = 'SYS_LOB0000031954C00006$$';
       SIZE_MB
            12[/code]
    Regards
    Michael

  • Can i use more than 4GB memory in my laptop dv6700t if I install windows 7 64bit?

    The pavilion dv6700t autodetects as 6853ea. It runs 32bit Vista in 3 GB mem.
    I know I can go up to 4 GB using the 2 slots, but can I use more when I install the 64bit version of Windows 7? If so, should I install the memory first, or the OS?
    Thanks.

    Hi:
    The specs for your notebook state max memory is 4 GB.
    However you should be able to install 8 GB with a 64 bit OS, because you have the Mobile Intel 965 chipset.
    I would install the 64 bit OS first, so you see the memory go over 4 GB in Windows after you install the memory.
    See this post:
    http://h30434.www3.hp.com/t5/Notebook-Hardware/The​-dv6700z-And-dv9700z-WILL-Support-Over-4gb-of-RAM/​...
    Paul

  • Memory usage in more than 1 instance

    Hi,
    We have 2 instances on linux, RAM is 16GB. SGA_MAX_SIZE is 3 GB each instance and kernel parameter shmmax is set to 8GB.
    Now i wanted to know that how oracle calculates the memory in the server. Is it calculates (3gb+3gb=6gb) or (3gb) only.
    If possible then please provide any doc. link.
    Thanx

    Each instance has its own memory that is never shared with any other instance.
    Oracle instance memory is always SGA and PGA.
    See Concepts Guide for more info: http://download.oracle.com/docs/cd/E11882_01/server.112/e10713/memory.htm#i12483

  • Dynamic select list with more than one value?

    I am creating a simple CRUD component for our company's Joomla site. This component allows our users to create discount bundles for our cart according to shopper group and products.  I've been using Dreamweaver to author the administrator forms and have run into a bit of a problem.  All of my forms work properly, but I need to be able to collect two values from each chosen multi-select listing. 
    Right now, when a user chooses an item under 'products', the site pushes back product_id, one of the variables I need.  I would also like product_parent_id to return with each result as well.  I need to be able to insert product_parent_id after the user has chosen their desired products.  product_parent_id is located in the same table as product_id.
    In the end, I need those two values to be pushed to another table, essentially creating a new entry for each product in the bundle.  Referenced by ID and parent ID.
    Pasted below is the administrator form code.  Any suggestions would be wonderful.
    Thanks!
    <?php require_once('Connections/SQLTest.php'); ?>
    <?php
    if (!function_exists("GetSQLValueString")) {
    function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "")
      if (PHP_VERSION < 6) {
        $theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue;
      $theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue);
      switch ($theType) {
        case "text":
          $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
          break;   
        case "long":
        case "int":
          $theValue = ($theValue != "") ? intval($theValue) : "NULL";
          break;
        case "double":
          $theValue = ($theValue != "") ? doubleval($theValue) : "NULL";
          break;
        case "date":
          $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
          break;
        case "defined":
          $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
          break;
      return $theValue;
    $editFormAction = $_SERVER['PHP_SELF'];
    if (isset($_SERVER['QUERY_STRING'])) {
      $editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']);
    if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) {
      $insertSQL = sprintf("INSERT INTO jos_vm_related_products (product_id, related_product_id) VALUES (%s, %s)",
                           GetSQLValueString($_POST['products'], "int"),
                           GetSQLValueString($_POST['products'], "int"));
      mysql_select_db($database_SQLTest, $SQLTest);
      $Result1 = mysql_query($insertSQL, $SQLTest) or die(mysql_error());
    if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) {
      $insertSQL = sprintf("INSERT INTO jos_vm_relations (discount_type, discount, shopper_group_id) VALUES (%s, %s, %s)",
                           GetSQLValueString($_POST['amount_off_total'], "text"),
                           GetSQLValueString($_POST['dollar_amount'], "int"),
                           GetSQLValueString($_POST['shoper_group'], "int"));
      mysql_select_db($database_SQLTest, $SQLTest);
      $Result1 = mysql_query($insertSQL, $SQLTest) or die(mysql_error());
    if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) {
      $insertSQL = sprintf("INSERT INTO jos_vm_relations_messages (discount_message) VALUES (%s)",
                           GetSQLValueString($_POST['discount_message'], "text"));
      mysql_select_db($database_SQLTest, $SQLTest);
      $Result1 = mysql_query($insertSQL, $SQLTest) or die(mysql_error());
    $maxRows_Products = 10;
    $pageNum_Products = 0;
    if (isset($_GET['pageNum_Products'])) {
      $pageNum_Products = $_GET['pageNum_Products'];
    $startRow_Products = $pageNum_Products * $maxRows_Products;
    mysql_select_db($database_SQLTest, $SQLTest);
    $query_Products = "SELECT * FROM jos_vm_product";
    $query_limit_Products = sprintf("%s LIMIT %d, %d", $query_Products, $startRow_Products, $maxRows_Products);
    $Products = mysql_query($query_limit_Products, $SQLTest) or die(mysql_error());
    $row_Products = mysql_fetch_assoc($Products);
    if (isset($_GET['totalRows_Products'])) {
      $totalRows_Products = $_GET['totalRows_Products'];
    } else {
      $all_Products = mysql_query($query_Products);
      $totalRows_Products = mysql_num_rows($all_Products);
    $totalPages_Products = ceil($totalRows_Products/$maxRows_Products)-1;
    mysql_select_db($database_SQLTest, $SQLTest);
    $query_shopper_group = "SELECT * FROM jos_vm_shopper_group";
    $shopper_group = mysql_query($query_shopper_group, $SQLTest) or die(mysql_error());
    $row_shopper_group = mysql_fetch_assoc($shopper_group);
    $totalRows_shopper_group = mysql_num_rows($shopper_group);
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Untitled Document</title>
    </head>
    <body>
    <form id="form1" name="form1" method="POST" action="<?php echo $editFormAction; ?>">
      <p>
        <label for="products"></label>
      Choose the product(s) you would like to add to your new discount bundle.</p>
      <p>
        <select name="products" size="1" multiple="MULTIPLE" id="products">
          <option value=""></option>
          <?php
    do { 
    ?>
          <option value="<?php echo $row_Products['product_id']?>"><?php echo $row_Products['product_name']?></option>
          <?php
    } while ($row_Products = mysql_fetch_assoc($Products));
      $rows = mysql_num_rows($Products);
      if($rows > 0) {
          mysql_data_seek($Products, 0);
      $row_Products = mysql_fetch_assoc($Products);
    ?>
        </select>
      </p>
    <p>
      <input type="hidden" name="hiddenField" id="hiddenField" />
      </p>
      <p>Choose the subscriber group that you would like this discount to apply to.</p>
      <p>
        <select name="shoper_group">
          <?php
    do { 
    ?>
          <option value="<?php echo $row_shopper_group['shopper_group_id']?>"><?php echo $row_shopper_group['shopper_group_name']?></option>
          <?php
    } while ($row_shopper_group = mysql_fetch_assoc($shopper_group));
      $rows = mysql_num_rows($shopper_group);
      if($rows > 0) {
          mysql_data_seek($shopper_group, 0);
      $row_shopper_group = mysql_fetch_assoc($shopper_group);
    ?>
        </select>
      </p>
      <p>Please enter the dollar amount that you would like to adjust.
        <label for="dollar_amount"><br />
        </label>
        <input type="text" name="dollar_amount" id="dollar_amount" />
      </p>
      <p>
        <input name="amount_off_total" type="hidden" id="amount_off_total" value="amount_off_total" />
      </p>
      <p>Enter any message you would like the shopper to view during shopping and checkout when this discount is applied.</p>
      <p>
        <label for="discount_message"></label>
        <textarea name="discount_message" id="discount_message" cols="45" rows="5"></textarea>
      </p>
      <p>
        <input type="hidden" name="MM_insert" value="form1" />
      </p>
      <p>
        <input type="submit" name="submit" id="submit" value="Submit" />
      </p>
    </form>
    <br />
    </body>
    </html>
    <?php
    mysql_free_result($Products);
    mysql_free_result($shopper_group);
    ?>

    Thanks guys for you reply , [Cor Ligthert] I post this in Visual basic section, I appreciate your solution [dbasnett],
    Thanks for that idea of attribute <Flags> [Blackwood] ,
    Dictionary will not work in IF Statement as I want it , also ParamArray tbl() , thanks guys.
    Here is the code
    Module myModule
    <Flags()>
    Enum Table As Integer
    Table1 = 2
    Table2 = 4
    Table3 = 8
    Table4 = 16
    Table5 = 32
    End Enum
    Public Sub MySub(ByVal Table As Table)
    If (Table And Table.Table1) = Table.Table1 Then
    MsgBox((Table And Table.Table1))
    End If
    If (Table And Table.Table2) = Table.Table2 Then
    MsgBox((Table And Table.Table2))
    End If
    If (Table And Table.Table3) = Table.Table3 Then
    MsgBox((Table And Table.Table3))
    End If
    If (Table And Table.Table4) = Table.Table4 Then
    MsgBox((Table And Table.Table4))
    End If
    If (Table And Table.Table5) = Table.Table5 Then
    MsgBox((Table And Table.Table5))
    End If
    End Sub
    End Module
    Class Myclass
    Private sub CallTables()
    MySub(Table.Table1 Or Table.Table2)
    MySub(Table.Table2 Or Table.Table3 Or Table.Table4)
    MySub(Table.Table1 Or Table.Table4 Or Table.Table5)
    MySub(Table.Table1 Or Table.Table2 Or Table.Table4 Or Table.Table5)
    MySub(Table.Table1 Or Table.Table2 Or Table.Table3 Or Table.Table4 Or Table.Table5)
    end sub
    end Class

  • Planned orders created with more than Maximum lot size??

    Hi Gurus,
    we have a lot size 'EX' with maximum lot size =480.
    But, for the materail when we run MRP we found that aplanned order is created for 1000.
    Please help me to find the root cause.
    Thank you.
    Naveen.

    Hi
    What is that material. If it fert and then yes system will create if you have mentioned max lot size.
    Because the max lot size does not control prodcution, it only controls the procurement side
    krishna

Maybe you are looking for