Problem in dynamic memory allocation

Hi,
My name is Ravi Kumar. I'm working on a project to improve organizational performance which include visual studio for simulation. I'm using dynamic memory allocation to allocate space for the array that are used in the program. Now I have run-time error
which I can't understand where it is going wrong. Can someone please help me regrading this issue. 
If anyone interested in helping please leave a comment with your email id so that I will share the whole project folder.
Thanks,
Ravi

Hi Ravi,
Don is right that this is the forum to discuss questions and feedback for Microsoft Office client.
Please post in MSDN forum of Visual Studio, where you can get more experienced responses:
https://social.msdn.microsoft.com/Forums/en-US/home?forum=visualstudiogeneral
The reason why we recommend posting appropriately is you will get the most qualified pool of respondents, and other partners who read the forums regularly can either share their knowledge or learn from your interaction with us. Thank you for your understanding.
Regards,
Ethan Hua
TechNet Community Support
It's recommended to download and install
Configuration Analyzer Tool (OffCAT), which is developed by Microsoft Support teams. Once the tool is installed, you can run it at any time to scan for hundreds of known issues in Office
programs.

Similar Messages

  • Queue of arrays without dynamic memory allocation

    Hey folks,
    I'm working on optimizing a timing critical VI. This VI is the
    producer in a producer consumer architecture. I'm trying to populate
    a queue from file in a manner that is as efficient as possible. My
    current plan of attack is:
    - read block of data from file and populate array (pre-allocated).
    - add array (always of the same size) to Queue with a max size defined
    (e.g. 50 elements)
    - This is in a while loop as is the standard producer consumer model.
    To improve the performance I would like to ensure that there is no
    dynamic memory allocation on the Queue's behalf. This is easily done,
    from what I understand, if the data type in the queue is of the same
    type (e.g. double, int). However, since the size of an array can vary
    does this mean that any queue of arrays will always dynamically
    allocate memory? Is there a way to ensure that the queue will always
    use the same memory as in a circular queue?
    Thanks,
    Steve

    Duplicate.
    Try to take over the world!

  • Templates and Dynamic Memory Allocation Templates

    Hi , I was reading a detailed article about templates and I came across the following paragraph
    template<class T, size_t N>
    class Stack
    T data[N]; // Fixed capacity is N
    size_t count;
    public:
    void push(const T& t);
    };"You must provide a compile-time constant value for the parameter N when you request an instance of this template, such as *Stack<int, 100> myFixedStack;*
    Because the value of N is known at compile time, the underlying array (data) can be placed on the run time stack instead of on the free store.
    This can improve runtime performance by avoiding the overhead associated with dynamic memory allocation.
    Now in the above paragraph what does
    "This can improve runtime performance by avoiding the overhead associated with dynamic memory allocation." mean ?? What does template over head mean ??
    I am a bit puzzled and i would really appreciate it if some one could explain to me what this sentence means thanks...

    The run-time memory model of a C or C++ program consists of statically allocated data, automatically allocated data, and dynamically allocated data.
    Data objects (e.g. variables) declared at namespace scope (which includes global scope) are statically allocated. Data objects local to a function that are declared static are also statically allocated. Static allocation means the storage for the data is available when the program is loaded, even before it begins to run. The data remains allocated until after the program exits.
    Data objects local to a function that are not declared static are automatically allocated when the function starts to run. Example:
    int foo() { int i; ... } Variable i does not exist until function foo begins to run, at which time space for it appears automatically. Each new invocation of foo gets its own location for i independent of other invocations of foo. Automatic allocation is usually referred to as stack allocation, since that is the usual implementation method: an area of storage that works like a stack, referenced by a dedicated machine register. Allocating the automatic data consists of adding (or subtracting) a value to the stack register. Popping the stack involves only subtracting (or adding) a value to the stack register. When the function exits, the stack is popped, releasing storage for all its automatic data.
    Dynamically allocated storage is acquired by an explicit use of a new-expression, or a call to an allocation function like malloc(). Example:
    int* ip = new int[100]; // allocate space for 100 integers
    double* id = (double*)malloc(100*sizeof(double)); // allocate space for 100 doublesDynamic storage is not released until you release it explicitly via a delete-expression or a call to free(). Managing the "heap", the area from where dynamic storage is acquired, and to which it is released, can be quite time-consuming.
    Your example of a Stack class (not to be confused with the program stack that is part of the C or C++ implementation) uses a fixed-size (that is, fixed at the point of template instance creation) automatically-allocated array to act as a stack data type. It has the advantage of taking zero time to allocate and release the space for the array. It has the disadvantages of any fixed-size array: it can waste space, or result in a program failure when you try to put N+1 objects into it, and it cannot be re-sized once created.

  • Degree in Dynamic memory allocation need help!

    I'm a student in the University of Bucharest in Computer-Science in the senior year. I'm looking for some specs for my degree in Dynamic memory allocation. In particular I was looking for specs about how the JVM heap and garbage collector work. Can you please direct me to someone how can help me find the necessary specs?
    Thank you.

    [http://java.sun.com/javase/technologies/hotspot/]
    ~

  • Dynamic memory allocation failure

    Dear reader,
    We sometimes have a problem where our windows 2012 r2 RDS virtual servers, that reside on windows 2012r2 hyper-v hosts, loose their dynamic memory and only have their startup memory left to work with. Users start complaining that things are very slow etc.
    If I check several screens (RDS Broker load balancing, hyper-v manager, cluster manager and the vm's task manager) it's clear that the vm only has its startup memory allocated. I'm not sure if this happens instantly or immidiatly after the nightly reboot.
    To resolve the problem we have to call all users on the vm where it happens and ask them to logoff (if they are even able to), and then we reboot the machine.
    I have checked the logs from the machine where the VM resides on and the logs from the vm itself. But I cannot find anything. We also have alot of windows 2008r2 vm's with dynamivc memory, but none of those have ever had this problem.
    Searched the internet, but so far it seems we are only.
    Can anyone give me a lead to troubleshoot this?
    Best regards,
    Ruud Boersma
    MCITP Enterprise administrator

    Hi all,
    I'm going to be "one of those people" who revives dead posts for something that is relevant but obviously not fixed... sorry in advance!
    We have the exact same situation, a bunch of RDSH guests with Dynamic memory turned on (60+ of them). every day between 1-8 of them will fail to allocate Dynamic memory and will be stuck on their startup RAM amount. This really hurts our users at peak
    times.
    I have engaged our TAM and have raised a case with PSS, Usual story "your the only one with this problem". Which obviously isn't true.
    So, we have tons of free RAM on the hosts, 600GB+ on most of them, the issue affects RDSH hosts at random, across multiple hosts and clusters.
    The screen shots attached are of one of our hosts from this morning. it has 8GB startup, 8GB minimum, 32GB Maximum RAM configured, with a 23% buffer. the host has 752GB RAM FREE. Notice how the perf counter "Hyper-V Dynamic Memory Integration Service"
    is reporting "0", it should be reporting "32768". also under task manager on the VM we are missing "Maximum memory" which should be just below "Hardware reserved" in the bottom right hand corner.
    Looks like the balloon driver is being delayed at boot time, we are going to XPerf all the servers in the hope that we can catch the critter. It's an unusual problem.
    We only have Acrobat PDF viewer, word viewer, excel viewer and two custom dot.NET applications installed on the guests. Some of the servers are also just dumb RDSH hosts, with not connection broker configured, using an F5 loadbalancer for load distribution
    and session management. All guests are 2012R2 patched up to March 2015, integration Services are installed and up to date (its an enlightened OS remember).

  • Crash the dynamic memory allocation

    hi
    i am new to java, my prof said to crash the java prog. write simple prog. which allocate dynamic memory in C++ and Java. push the limits to see how much allocation cause the programs to crash.
    how do i implement this in java.. can any one help out here.
    thanks in advances.

    Write a program that allocates larger and larger objects until it crashes. Make sure it prints the sizes of the objects as it runs.

  • Dynamic memory allocation on HP-UX for multiple instances on one host

    Hi everyone,
    I was wondering what the current possibilities are nowadays on running multiple SAP instances on one very large host with regard to resource sharing. Normally, for each instance, using PHYS_MEMSIZE etc you have to set the memory to a fixed size and then optimize it.
    Preferrably we would like the memory to be allocated based upon actual usage. Is that possible at all? on HP-UX? Using third party techniques?
    Thank you
    Marcel Rabe

    Hello Marcel,
    As Juan said you may not be able to change the parameters at runtime.
    The only parameters that can be dynamically switched are :
    ztta/roll_first
    ztta/roll_extension
    ztta/roll_area
    abap/heap_area_dia
    abap/heap_area_nondia
    abap/heap_area_total
    em/stat_log_size_MB
    em/stat_log_timeout
    These parameters would put a cap on memory allocations, however they wouldn't help increase the total addressable memory area.
    I would suggest that you consider Adaptive Computing for dynamic use of resources.
    Adaptive Computing
    Regards,
    Siddhesh

  • Dynamic memory allocation

    Hi, guys, does anyone know whether I can use dyanmic memory allocation on the Real time system with "call library function" node. DLL is programmed using C language. Thanks.
    Machman

    You certainly can. LabVIEW Real-Time functionality is really not much different than what you can do on Windows. The only difference being that you can now assign priorty and timing to your execution loops; essentially, you have determinism with RT whereas with Windows, you never have a guarantee.
    Thus, in regards to calling a dll, you can perform this the same way you would in LabVIEW for Windows. Here's a KnowledgeBase article on how to do this if you're not already familiar.
    Cheers,
    Emilie K. | Applications Engineer | National Instruments

  • Why doesn't the debugger follow dynamic memory allocations well?

    Here's an example of a code block that doesn't seem to work right with the CVI compiler/debugger, but works fine with other C compilers/debuggers
    struct arg_int* arg_intn(const char* shortopts,
    const char* longopts,
    const char *datatype,
    int mincount,
    int maxcount,
    const char *glossary)
    size_t nbytes;
    struct arg_int *result;
    /* foolproof things by ensuring maxcount is not less than mincount */
    maxcount = (maxcount<mincount) ? mincount : maxcount;
    nbytes = sizeof(struct arg_int) /* storage for struct arg_int */
    + maxcount * sizeof(int); /* storage for ival[maxcount] array */
    result = (struct arg_int*)malloc(nbytes);
    if (result)
    /* init the arg_hdr struct */
    result->hdr.flag = ARG_HASVALUE;
    result->hdr.shortopts = shortopts;
    result->hdr.longopts = longopts;
    result->hdr.datatype = datatype ? datatype : "<int>";
    result->hdr.glossary = glossary;
    result->hdr.mincount = mincount;
    result->hdr.maxcount = maxcount;
    result->hdr.parent = result;
    result->hdr.resetfn = (arg_resetfn*)resetfn;
    result->hdr.scanfn = (arg_scanfn*)scanfn;
    result->hdr.checkfn = (arg_checkfn*)checkfn;
    result->hdr.errorfn = (arg_errorfn*)errorfn;
    /* store the ival[maxcount] array immediately after the arg_int struct */
    result->ival = (int*)(result+1);
    result->count = 0;
    /*printf("arg_intn() returns %p\n",result);*/
    return result;
    When I try to dereference this structure's 'ival[0]' the debugger constantly complains of a fatal runtime error and declares it out of the array bounds.
    This is from the argtable2 open source library available at http://argtable.sourceforge.net/ if you want to try and reproduce it.  I'm using CVI 2010 SP1.

    Unfortunately, you have run into one of the inherent limitations of CVI's run-time checking. Even though it is perfectly legal in C and somewhat common practice, our run-time checking doesn't like it when you conceptually split up a block of memory and treat it as two or more separate blocks. 
    While I cannot fix the problem in our run-time checking without breaking other use cases, I can explain what's causing the error and how you can work around it.
    When you malloc memory, we assume that the memory block is going to hold one or more instances of the type to which you're casting the memory block. In this case, CVI is treating the new memory block as an array of arg_info structures. But your new memory block is not big enough to hold more than one instance of struct arg_info, so we implicitly truncate the memory block to sizeof(struct arg_info). Because of the implicit truncation, s->values is now pointing past the end of the memory block and any access will result in an error.
    #include <ansi_c.h>
    struct arg_int {
    char some_large_block[64];
    int count;
    int *values;
    int main (int argc, char *argv[])
    int i, n = 4;
    struct arg_int *s = malloc(sizeof *s + n * sizeof *s->values);
    s->count = n;
    s->values = (int *)(s+1);
    for (i = 0; i < n; ++i)
    s->values[i] = i;
    return 0;
    You can avoid the implicit truncation in the original code by assigning to a (void*) first. This retains the original block size by keeping the actual type of the data in the memory block in limbo. Subsequent casts do not truncate the block. We truncate only when the cast occurs implicitly as part of a malloc. s->values points to the remainder of the block and you can access it freely, but you do not get any run-time checking on it.
    #include <ansi_c.h>
    struct arg_int {
    char some_large_block[64];
    int count;
    int *values;
    int main (int argc, char *argv[])
    int i, n = 4;
    struct arg_int *s;
    void *memory = malloc(sizeof *s + n * sizeof *s->values);
    s = memory;
    s->count = n;
    s->values = (int *)(s+1);
    for (i = 0; i < n; ++i)
    s->values[i] = i;
    return 0;
    If you want full run-time checking on s->values, you have to allocate the two components separately.
    #include <ansi_c.h>
    struct arg_int {
    char some_large_block[64];
    int count;
    int *values;
    int main (int argc, char *argv[])
    int i, n = 4;
    struct arg_int *s = malloc(sizeof *s);
    s->count = n;
    s->values = malloc(n * sizeof *s->values);
    for (i = 0; i < n; ++i)
    s->values[i] = i;
    return 0;
    Another option is to use an incomplete array. An incomplete array is an array of unspecified or zero size at the end of a structure definition. CVI is implicitly growing the array to fill up the rest of the allocated memory block. You do not get run-time checking for the array.
    #include <ansi_c.h>
    struct arg_int {
    char some_large_block[64];
    int count;
    int values[0];
    int main (int argc, char *argv[])
    int i, n = 4;
    struct arg_int *s = malloc(sizeof *s + n * sizeof *s->values);
    s->count = n;
    for (i = 0; i < n; ++i)
    s->values[i] = i;
    return 0;
    You can also disable run-time checking for your memory block by going through a series of casts: http://zone.ni.com/reference/en-XX/help/370051K-01/cvi/disablinguserprotectionforindividualpointer/
    Best regards.

  • Finding dynamic memory allocations in core file

    Hi,
    Is it possible to find out which data structures were allocated by analysing a core file?
    I want to find out which objects are causing the memory to increase, and I have the core file of the program.
    Thanks in advance,
    Paulo

    It's almost impossible. Anyway, it would be pure heuristics - looking at stack contents, finding familiar patterns in heap, etc, etc.

  • Dynamic Memory on Linux VM

    Hello!
    Hyper-V 3.0 is great! After it will be released, I think it will become the most popular hypervisor. But it remains a major drawback.
    Nowhere announced support for dynamic memory for Linux VM on Hyper-V.
    Planned at least in some perspective to implement this functionality?
    Now we have to use two different hypervisors, as Hyper-V does not meet all the requirements of our customers.
    Mark Tepterev
    Oversun

    ~
    ~
    Moved  P.P.P.S.
    Q from Brian Wong:
    ----- Original Message -----
    From: "Brian Wong"
    To: <[email protected]>
    Sent: Thursday, March 06, 2014 9:24 AM
    Subject: Re: Linux does not use more than the startup RAM under Hyper-V with dynamic memory enabled
    On 3/6/2014 1:20 AM, Brian Wong wrote:
    > The kernel is built with the full set of Hyper-V drivers, including the
    > key "Microsoft Hyper-V Balloon Driver" as well as memory hot-add and
    > hot-remove functionality. This is happening with both the Gentoo-patched
    > 3.10.32 kernel and the vanilla 3.12.5 kernel. The host machine has a
    > total of 24 GB of memory.
    >
    > For now, I am working around the issue by starting the VM with the
    > startup memory set to the maximum and letting Hyper-V take the usused
    > memory back when it is not in use. The VM will then get the extra memory
    > when it needs it.
    >
    > Have I encountered a bug in the Hyper-V balloon driver?
    >
    Just a correction: the vanilla kernel version is 3.13.5, not 3.12.5.
    Sorry for any confusion.
    Brian Wong
    http://www.fierydragonlord.com
    ----- Original Message -----
    From: "Brian Wong"
    To: <[email protected]>
    Sent: Thursday, March 06, 2014 9:20 AM
    Subject: Linux does not use more than the startup RAM under Hyper-V with dynamic memory enabled
    I'm new to LKML, so please don't be too hard on me :)
    I'm running Gentoo Linux under Microsoft Client Hyper-V on Windows 8.1
    Pro, and I've noticed some odd behavior with respect to dynamic memory
    (aka memory ballooning). The system will never use more than the startup
    memory defined in the virtual machine's settings.
    ( VVM: typewriting error viRtual fixed by me, for best search in future )
    For example, if I set the startup memory to 512 MB, and enable dynamic
    memory with a minimum of 512 MB and a maximum of 8192 MB, the system
    will never allocate than 512 MB of physical memory, despite Hyper-V
    assigning more memory to the VM and the added memory being visible in
    the output of "free" and "htop". Attempting to use more memory causes
    the system to start paging to swap, rather than actually allocating the
    memory above the startup memory assigned to the VM.
    The kernel is built with the full set of Hyper-V drivers, including the
    key "Microsoft Hyper-V Balloon Driver" as well as memory hot-add and
    hot-remove functionality. This is happening with both the Gentoo-patched
    3.10.32 kernel and the vanilla 3.12.5 kernel. The host machine has a
    total of 24 GB of memory.
      Brian Wong wrote On 3/6/2014 1:20 AM:
     Just a correction: the vanilla kernel version is 3.13.5, not 3.12.5. )
    For now, I am working around the issue by starting the VM with the
    startup memory set to the maximum and letting Hyper-V take the usused
    memory back when it is not in use. The VM will then get the extra memory
    when it needs it.
    Have I encountered a bug in the Hyper-V balloon driver?
    Brian Wong
    http://www.fierydragonlord.com
    ----- Original Message -----
    From: "Victor Miasnikov"
    To:  [email protected]; "Brian Wong"
    Cc: "Abhishek Gupta (LIS)" ( zzzzzzzzzzzzzzz (at) microsoft.com>; "KY Srinivasan" zzzzzzzzzzz (at) microsoft.com
    Sent: Thursday, March 06, 2014 1:07 PM
    Subject: Re: Linux does not use more than the startup RAM under Hyper-V with dynamic memory enabled RE: [PATCH 2/2]
    Drivers: hv: balloon: Online the hot-added memory "in context" Re: [PATCH 1/1] Drivers: hv:
    Hi!
     Short:
     Question to Linux kernel team:
    may be patch
    >>> [PATCH 2/2] Drivers: hv: balloon: Online the hot-added memory "in context"
    can solve problems with dynamic memory hot add in Hyper-V VMs with Linux OS ?
     Full:
    BW>> .., if I set the startup memory to 512 MB, and enable dynamic
    BW>> memory with a minimum of 512 MB and a maximum of 8192 MB,
    BW>>  the system will never allocate than 512 MB of physical memory
    BW>>
    BW>> Have I encountered a bug in the Hyper-V balloon driver?
    BW>>
     Unfortunately,  It's long story . . . :-(
    a)
     I already ( on January 09, 2014 2:18 PM )  write about problems with "Online the hot-added memory"  in "user space" see
    P.P.S.
    b)
      See
    Bug 979257 -[Hyper-V][RHEL6.5][RFE]in-kernel online support for memory hot-add
    https://bugzilla.redhat.com/show_bug.cgi?id=979257
     (  Info from this topic may be interessant not only for RedHat users )
    b2)
     Detail about pathes related problem "Online the hot-added memory"  in "user space" :
    >>> [PATCH 2/2] Drivers: hv: balloon: Online the hot-added memory "in context"
    >>>
    >>>
    >>> === 0001-Drivers-base-memory-Export-functionality-for-in-kern.patch
    >>>  . . .
    >>> +/*
    >>> + * Given the start pfn of a memory block; bring the memory
    >>> + * block online. This API would be useful for drivers that may
    >>> + * want to bring "online" the memory that has been hot-added.
    >>> + */
    >>> +
    >>> +int online_memory_block(unsigned long start_pfn) {  struct mem_section
    >>> +*cur_section;  struct memory_block *cur_memory_block;
    >>>
    >>>  . . .
    >>> ===
    >>>
    >>>
    >>> ==
    >>>  . . .
    >>> == 0002-Drivers-hv-balloon-Online-the-hot-added-memory-in-co.patch
    >>>   . . .
    >>>    /*
    >>> -   * Wait for the memory block to be onlined.
    >>> -   * Since the hot add has succeeded, it is ok to
    >>> -   * proceed even if the pages in the hot added region
    >>> -   * have not been "onlined" within the allowed time.
    >>> +   * Before proceeding to hot add the next segment,
    >>> +   * online the segment that has been hot added.
    >>>     */
    >>> -  wait_for_completion_timeout(&dm_device.ol_waitevent, 5*HZ);
    >>> +  online_memory_block(start_pfn);
    >>>
    >>>   }
    c)
      Before apply patches ( see in P.S. about native udev-script) we are need use one of this methods:
     [ VVM:   URL of this topic skipped ]
    c1)
    "/bin/cp method" by Nikolay Pushkarev :
    Following udev rule works slightly faster for me (assuming that memory0 bank always in online state):
    SUBSYSTEM=="memory", ACTION=="add", DEVPATH=="/devices/system/memory/memory[1-9]*",
    RUN+="/bin/cp /sys$devpath/../memory0/state /sys$devpath/state"}}
    ( VVM : of course all need be place in one line, 2 line in this msg. -- only for good visual formating reasons )
    c2)
    udev rule using "putarg" by Nikolay Pushkarev :
     Even "/bin/cp method" udev rule work time to time not as need :-(
    As a result, Nikolay Pushkarev write a program putarg.c, that is even faster than "/bin/cp method" :
    ==
    #include <stdio.h>
    #include <fcntl.h>
    #include <sys/ioctl.h>
    #include <string.h>
    int main(int argc, char** argv) {
      int i, fd;
      if (argc < 2) return 0;
      if ((fd = open(argv[1], O_RDWR)) < 0) return 1;
      for (i = 2; i < argc; i++) {
        if (write(fd, argv[i], strlen(argv[i])) < 0) {
          close(fd);
          return i;
      close(fd);
      return 0;
    ==
     The first argument - the name of the output file ,
    and argument number 2 ( and all subsequent (  if exist ) ) - are text that are wiil be written in output file.
     Compile source code to executable file by run command:
    gcc -o putarg -s putarg.c
    The resulting binary need be placed an accessible location , such as /usr/bin, or wherever you want.
    Now udev rule using "putarg" can be written as :
    SUBSYSTEM=="memory", ACTION=="add", RUN+="/usr/bin/putarg /sys$devpath/state online"
    This complex solutions ( compiled file and udev-rule ) works exceptionally fast.
    Best regards, Victor Miasnikov
    Blog:  http://vvm.blog.tut.by/
    P.S.
    Nikolay Pushkarev about standart udev-script :
    Strange, that the native udev-script
    SUBSYSTEM=="memory", ACTION=="add", ATTR{state}="online"
    triggered somehow through time ( VVM: very often not work as need )
    P.P.S.
    ----- Original Message -----
    From: "Victor Miasnikov"
    To: "Dan Carpenter"; "K. Y. Srinivasan" ; <[email protected]>
    Cc: "Greg KH" ; <[email protected]>; <olaf (at) aepfle.de>; ""Andy Whitcroft"" <zzzzzzzzzzzz (at)
    canonical.com>;
    <jasowang (at) redhat.com>
    Sent: Thursday, January 09, 2014 2:18 PM
    Subject: RE: [PATCH 2/2] Drivers: hv: balloon: Online the hot-added memory "in context" Re: [PATCH 1/1] Drivers: hv:
    Implement the file copy service
    Hi!
    > Is there no way we could implement file copying in user space?
      For "file copy service"  "user space"  may be pretty good
    But I ( and other Hyper-V sysadmin)  see non-Ok ( in "political correct" terminalogy) results with "hv: balloon: Online
    the hot-added memory" in "user space"
    ==
     [PATCH 2/2] Drivers: hv: balloon: Online the hot-added memory "in context"
    ==
     What news?  Roadmap?
    Best regards, Victor Miasnikov
    Blog:  http://vvm.blog.tut.by/
    ~
    ~
    ~
    ~
    ~
    ~
    ~
    ~
    ~
    ----- Original Message -----
    From: "KY Srinivasan"
    To: "Victor Miasnikov"; [email protected]; "Brian Wong"
    Cc: "Abhishek Gupta (LIS)"
    Sent: Thursday, March 06, 2014 1:23 PM
    Subject: RE: Linux does not use more than the startup RAM under Hyper-V with dynamic memory enabled RE: [PATCH 2/2]
    Drivers: hv: balloon: Online the hot-added memory "in context" Re: [PATCH 1/1] Drivers: hv:
    > -----Original Message-----
    > From: Victor Miasnikov
    > Sent: Thursday, March 6, 2014 3:38 PM
    > To: [email protected]; Brian Wong
    > Cc: Abhishek Gupta (LIS); KY Srinivasan
    > Subject: Re: Linux does not use more than the startup RAM under Hyper-V
    > with dynamic memory enabled RE: [PATCH 2/2] Drivers: hv: balloon: Online
    > the hot-added memory "in context" Re: [PATCH 1/1] Drivers: hv:
    >
    Victor,
    I will try to get my in-context onlining patches accepted upstream.
    K. Y

  • Reliability of protected void finalize() for freeing native dynamic memory

    In different places, I've been reading different things about the specification of garbage collection in Java. From what I've found so far, it is pretty clear that if the garbage collector of the VM used decides to reclaim object X, then X.finalize() is called. However, opinions vary on whether the garbage collector will ever decide to reclaim X.
    I'm using the JNI and, unfortunately, have to keep a few bits in memory on the native side. Even worse, I keep those bits in dynamic memory (allocated with C's malloc). These chunks of memory always correspond to a single object on the Java side, so I thought it would be a good idea to have my objects in the native interface include this bit of code:
    native void free();
    protected void finalize() throws Throwable {
      Exception x = null;
      try {
        free();
        /* whatever other destruction seems usefull */
      } catch(Exception e) {
        CentralHandler.handle(this, e);
        x = e;
      } finally {
        try {
          super.finalize();
        } catch(Exception e) {
          CentralHandler.handle(this, e);
          if(x != null)
            throw CentralHandler.combine(x,e);
    }I have been told the problem with this is that I can't be sure the garbage collector will ever clear out this object, even when the program comes to an end (inside the VM; when the VM itself is killed, the user's on his own). Does it matter if finalize is never called and will all my malloc-ed memory just become free with the disappearance of the VM?

    What you have been told about GC is correct: You should not depend on finalize for anything.
    Assuming yours is a real-world program (and won't be graded), then if you are simply worried about memory being freed up when your program exits: Don't worry about it.

  • Office 2001/Dynamic Memory?

    Do the programs in Office 2001 have Dynamic Memory while using OS 9.2?

    Hi, HappyWarlock -
    Welcome to Apple's Discussions.
    Do the programs in Office 2001 have Dynamic Memory while using OS 9.2?
    Probably not. I don't use Office, but the vast majority of programs in OS 9 do not have the ability to use dynamic memory allocation; a couple of exceptions are the OS itself (Finder), and SimpleText.
    You can change the allocation for the programs in Office manually; the number to change is the Preferred allocation amount.
    Article #18278 - Assigning More Memory to an Application

  • 9400 Graphics Memory Allocation

    For the GeForce 9400M chip is it possible to increase the graphics memory allocation if I were to upgrade the system memory?
    In other words: Does the GeForce 9400M chip and Mac OS Leopard+ support dynamic memory allocation for the graphics memory?
    If I increase the system RAM from 2GB to 4GB will the 9400 graphics memory allocation increase from 256MB to 512MB?
    (The Intel graphics chipset supported it)

    No. The 9400 uses 256 MBs of RAM, no more.

  • Request additional allocation of dynamic memory

    Hyper-V 2012 host
    Server 2012 R2 guest
    The guest is configured for startup and minimum memory of 2 GB with a maximum memory of 64 GB.  Once per day a PowerShell script runs which uses 7-Zip.exe to compress some large files.  The 7-Zip command fails if there is less than 10 GB of memory
    immediately available.  I do not want to allocate that much minimum memory to the guest, as it doesn't need it for anything but this one script.
    How can I programmatically request or instruct the host to allocate 10 GB to the guest before I run the 7zip command?
    Currently I am launching a PowerShell job running Sysinternals TestLimit64.exe and running it until I see the allocated memory go up on the host.  But this workaround is inelegant, inexact, imprecise, and slow.
    Thank you.
    Tim Curwick
    MadWithPowerShell.com

    Hi Tim,
    Please refer to the following link which are related to scripting dynamic memory:
    Scripting dynamic memory, part 1: reading the configuration<o:p></o:p>
    http://blogs.msdn.com/b/virtual_pc_guy/archive/2010/09/07/scripting-dynamic-memory-part-1-reading-the-configuration.aspx<o:p></o:p>
    Scripting dynamic memory, part 2: displaying current usage information<o:p></o:p>
    http://blogs.msdn.com/b/virtual_pc_guy/archive/2010/09/08/scripting-dynamic-memory-part-2-displaying-current-usage-information.aspx<o:p></o:p>
    Scripting dynamic memory, part 3: looking at performance counters<o:p></o:p>
    http://blogs.msdn.com/b/virtual_pc_guy/archive/2010/09/13/scripting-dynamic-memory-part-3-looking-at-performance-counters.aspx<o:p></o:p>
    Scripting dynamic memory, part 4: configuring memory<o:p></o:p>
    http://blogs.msdn.com/b/virtual_pc_guy/archive/2010/09/14/scripting-dynamic-memory-part-4-configuring-memory.aspx<o:p></o:p>
    Scripting dynamic memory, part 5: changing minimum memory
    http://blogs.msdn.com/b/virtual_pc_guy/archive/2010/09/15/scripting-dynamic-memory-part-5-changing-minimum-memory.aspx
    Best Regards,
    Vincent Wu
    Please remember to click “Mark as Answer” on the post that helps you, and to click “Unmark as Answer” if a marked post does not actually answer your question. This can be beneficial to other community members reading the thread.

Maybe you are looking for

  • How to pull only column names from a SELECT query without running it

    How to pull only column names from a SELECT statement without executing it? It seems there is getMetaData() in Java to pull the column names while sql is being prepared and before it gets executed. I need to get the columns whether we run the sql or

  • Error while Adding field on Screen Variant

    Hi SAP Gurus, I want to add one field Trading partner in Fast entry screen. I am getting below error message while adding one field Trading Partner in Screen Variant ES007(O7E6) FIELD instruction for field BSEG-VBUND missing on template screen Messag

  • Problems installing new Adobe Flash Player

    Several web sites that I visit give the message that I need to update my Adobe Flash Player.  I go to the Adobe site and download the update and go through the install, but when I go back to the page saying that I need to update the flash player it s

  • Can someone help me with my backup

    Hi guys, My old laptop has been stolen and basically i was wandering if anybody knew how to back up my phone to my new laptop without loosing any of my photo's, music, etc as my phone is synced with the laptop that was stolen and i don't have any of

  • Can i just use photoshop cs4 to rotobrush footage?

    there is this new feature I have seen in after effects cs5 called rotobrush. at first glance it appears to be a photoshop selection tool that has been ported over to after effects. is this correct? if so can i just use the video features in photoshop