How to optimize the memory for a large labview array?

I am running LabView on Windows XP with 4 Gb of RAM. The array is 51X256X256 complex numbers, but I want 300x256x256. The program runs out of memory when I use more than 51-53 arrays of 256X256. I do not know how to use the in place element structure to modify the vi below. The unbundled/ bundle structures do not present symmetry. Anyone can help me with this?  Thanks!
Mariana
Attachments:
array3Dc.JPG ‏22 KB
array3Dc_front.JPG ‏58 KB

Norbert,
  The full data3Dc array takes about 15.5 MB and the data3Dc comp.vi takes 31 MB. The empty data3Dc comp.vi array takes only 18.2 kB. This array is a variable that modifies at each scanned wavelength. I have a scanning wavelengths software package. For one wavelength I record a hologram followed by the reconstruction of the object field (1x256x256). 3D optical fields are added all together to create a big 3D optical field (Nx256x256). The code data3Dc comp_1.vi is not the only one in the memory. This VI is a subvi for other codes. A few other examples are FFT, IFFT, filtering, phase matching, cross-section, calibration….I did not care about memory optimization until now. So, I want to scan more than 50 wavelengths. By now (N=50) I have to restart the LabView after each scanning, do the reconstruction of the fields, start the LabView again to see the results. I think the problem is caused by this VI that is a subvi for other codes. I already extended the memory to 3GB in boot.ini, but the thing is that I want also a small scanning time. It doesn’t work. Extending the memory to 3GB makes the OS slower than before. My question is how to modify this array (data3Dc) or the VI (data3Dc comp.vi) to access lesser memory. I have tried to attach the full VI but it tells me that it is too big. I attached the empty one.
  Thanks,
Mariana
Attachments:
data3Dc comp.vi ‏19 KB

Similar Messages

  • How to increase the memory for my weblogic server in Jdeveloper 12.1.2.0.0 ?

    Hey everyone,
    So as my title says, i'm trying to increase the memory for my weblogic server in my windows 7 64 bit machine, with 8GB ram.
    The values appear to be: JAVA Memory arguments: -Xms256m -Xmx512m -XX:PermSize=128m -XX:MaxPermSize=512m
    I've done some search from this forum and i've added this to my jdev.conf:
    AddVMOption  -XX:MaxPermSize=1536M (in this one i've only changed the value)
    AddVMOption -Xmx1536M
    AddVMOption -Xms1536M
    And i've changed this: MEM_ARGS="-Xms1024m -Xmx1024m" in my startNodeManager.sh file
    I'm still getting the same line in my server but i need to change the values since i'm not getting the server to run my application very well (it gets stucked in loading my databases and graphs) and i think it will continue untill i get a heap exception error.
    Any ideas of how to change this?
    Regards,
    Frederico.

    Thanks Alejandro .
    I'm going to ask you another question and this one is quite important.
    Whenever i run my project a couple of times, i'm not able to retrieve the page, it just gets stuck on loading.
    It just stops the loading, like its a really really slow page. I'm not using a lot of rows in my database so i don't take to much memory but it doesn't load and i know everything is fine but i just added some graphs after testing it.
    Do you know why?
    In the console it says that everything is fine and shows the link for the page but it never loads completely until it gives a error because it does not respond in 600 seconds.
    Strange right?

  • How can i detect "Memory leak" with large LabVIEW projects.

    Hi,
    I have a huge LabVIEW application that runs out of memory after running continuously for some time. I am not able to find out the VI that is hogging up memory. Is there any tool that dynamically detects the VI that is leaking memory.
    Or, is there a tool or a way to identify the critical areas which can be potential culprits that is leaking memory.
    Regards
    Bharath

    Bdev wrote:
    Thanks Dennis.
    I think Desktop Execution toolkit should solve the problem. 
    Wayne Wrote
    Have you tried Tools»Profile»Performance and Memory ?  http://zone.ni.com/reference/en-XX/help/371361F-01/lvdialog/profile/
    But this will just give me the amount of memory used by the VIs and not the amount of memory that is not getting released.
    And where is the problem about that? Just try to find what VIs keep increasing in memory size. That are the culprits. If you have real memory leaks, meaning there is memory that is not managed by LabVIEW directly but for instance by a DLL somewhere and that DLL looses references to memory, so it goes really lost, then the only way to find that is by successively exclude functionality in your application until you can find the culprit.
    There is no other simple way to find out about who is loosing memory references than by doing debugging by exclusion until the problem disappears. The only way to speed this up, which quite often works for me is doing an educated guess, about what components are most likely to do this misbehaviour.
    Not knowing anything about your application and if you are talking about memory hogs (fairly easily identifiable by the mentioned Performance and Memory monitor) or actual memory leaks, it is hard to tell how to go about it. Memory hogs are usually the first thing I suspect escpecially with software I inherit somehow from people from whom I'm not sure they know all the ins and outs of LabVIEW programming.
    If a leak seems likely the first culprit usually are custom DLLs (yes even DLLs I have written myself), then NI DLLs such as DAQmx, etc. and last there come leaks in LabVIEW itself. This last category is very seldom but it has happened to me. However before going to scream about LabVIEW having a memory leak you really, really should make sure you have very intensivly researched all the other possibilities. The chance that you run into a memory leak in LabVIEW, while not impossible, is so small compared to the other ways of causing either a memory hog or running into a leak in an external component to LabVIEW, that in 99.9% of the cases where someone screams about a LabVIEW memory leak, he is simply wrong.
    Rolf Kalbermatter
    CIT Engineering Netherlands
    a division of Test & Measurement Solutions

  • HT4621 how to partition the memory for parallels

    How do you do it?

    Mu300Pilot wrote:
    How do you do it?
    You don't partition 'memory' you partition the hard drive! and you DO NOT partition anything for Parallels.
    I strongly suggest that you read the Parallels documentation before you try to do anything, you are very confused.

  • How to optimize your PC for the 0404 USB and 0202 USB

    This is a guide on optimizing your system for the 0404 USB and 0202 USB.
    Make sure the 0404 USB is using a USB HOST that is on an IRQ alone. This means no other device in the PC can be sharing its IRQ.
    If you are running a hyper-threaded CPU, by turning hyperthreading off from the bios. You can set the latency at 20ms or lower and you will usually not have any latency issues.
    Change Processor Scheduling to 'Background Services' - Navigate to the Advanced page of the System applet. Click on the Performance Settings button, select its Advanced tab and click on 'Background Services' for Processor Scheduling.
    Switch Off Power Schemes - In the Power Options applet, choose the 'Always On' power scheme. Change the settings for monitor and hard disk turn off and System standby to 'Never', so that your PC doesn't unexpectedly conk out during song playback
    Disable System Sounds - Select the 'No Sounds' scheme on the Sounds tab of the Sounds and Audio Devices applet.
    Make sure legacy USB support is disabled in your BIOS.

    Hi everybody.
    This message to share my experience of the 0404 USB under Windows 7.
    I previously operated this sound adapter under Windows XP and it was working fine with my pipe organ simulator (Hauptwerk).
    When I switched to W7 on a Dell Vostro (professionnal series), sound was muting after exactly one minute . The same with a video on Yutube.....
    I did all the adjustments suggested here and there on the web (sampling rate, drivers) , I tried to operate at moonlight, I shot a chicken, etc ...
    After many manipulations, I noticed that, if I was doing "something", for instance moving the sound level up and down, the sound was going on ....
    The solution was in part at the beginning of the topic "how to optimize your PC for th 0404, etc ....".
    The keyword is "interrruption".
    As a matter of fact, the Dell laptop is strongly closed. The BIOS allows no adjustment of nothing.... No way to control interruptions allocation.
    BUT!!! I noticed that the two USB 2.0 ports are located very far away from each other. I supposed there would be TWO controlling chips. And I tried the second one. AND IT WORKED!
    So the E-MU guy is right, the device must get a free interruption line to operate ....!

  • How to overcome the Memory leakage issue in crystal report 2008 SP2 setup.

    I have developed the small windows based application tool with help of  Visual studio 2008 for identify the memory consumption of crystal report object. It helps to load the crystal report objects in the memory and then released the object from the memory. The tool simply does the u201CLoading and Unloadingu201D the objects in the memory.
    The tool will be started once u201CTest_MemoryConsumption.Exeu201D executed. The u201CTest_MemoryConsumption.Exeu201D consumes u201C9768 KBu201D memory before load the crystal report object in memory. It means, 9768 KB is normal memory consumption for run the tool.
    Crystal report object initiated by the tool and object help to load the report in memory once the tool initiated the crystal report object. Now u201CTest_MemoryConsumption.Exeu201D consumes u201C34980 KBu201D memory during the crystal report object creation and report load process. The actual memory consumption of crystal report object is 34980u20139768=u201C25212u201DKBu201D. 
    The memory consumption u201C34980 KBu201D will be continued till the end of the process. The memory consumption will be reduced to u201C34652 KBu201D from u201C34980 KBu201D once report load process completed. It means, u201C328 KBu201D memory only released from the memory consumption. Tool enables the Release command for the crystal report object. But crystal report object does not respond to the command and will not release his memory consumption.
    The memory consumption u201C34652 KBu201D will be stayed in the memory once job ends.  If i again initiate the crystal report object then it crystal report object start to consume the memory from 34652 KB.
    Database objects and crystal report objects are properly used in the tool. The object release commands properly  communicated to crystal report setup. But the u201CCrystal report service pack 2u201D setup unable to respond the commands which has enabled from .Net Tool.  Crystal report objects are properly initiated and disposed in the tool. But the crystal report unable to release from the server.
    The memory consumption will be reduced once the server restarted or kill the application.
    Crystal report 2008 and crystal report 2008 SP2 setup available in the server.
    Microsoft .Net Framework 2.0 SP2, Microsoft .Net Framework 3.0 SP2 and Microsoft .Net Framework 3.5 SP1 are available in the server,
    Could you please suggesst how to avoid the memory consumption keep increasing and  how to release the memory consumption  once the crystal object disposed???

    Hi Don..
    My case is different one. I hope, the problem with Run time Installation setup file (Crystal report 2008 Serivce Pack2 installer) which we installed in the server.
    Let me explain with Live scenario which our client faced in crystal report 2008 Service pack2 Installer.
    Our client is using a application to help to print their reports. The application is developed with Windows service.
    Windows service keep on running in the server. Windows service executes the client 's crystal reports( Labels Report, Stock  report) which designed for clients need and the reports will be printed from printer. 
    10 Same type report (Label Report) will be printed in 1 minute. Reports are not printing during non business hours. But the windows service keep on running.  Memory cosumption of application will be 160 MB in business hours.
    For Example, On Monday the application memory consumption starts with 160 MB. The Memory consumption will be reached 165 MB  in peak business hours. Then the memory will be ended in163 MB in the End of Monday. It means, The memory consumption will be in 163 MB during the non business hours. Reports will not be printed in non business hours.
    On Tuesday, the application memory consumption starts with 163 MB and it will be reached 168 MB during the peak hours. The Memory consumption will be ended in 165 MB in the end of Tuesday.  The same process contiues till friday. End of friday, the memory consumption of the application will be ended with 170 MB.
    Application Memory Consumption slowly increasing in the server. In 5 days, Memory consumption reached Threshold value (170 MB) of the server. Application gets hanged up once the memory consumption reached 170 MB. We got the error messages as "Attempted to read write protected memory " / "Not Enough memory for process".  If we restart server / If we restart the service then memory consumption of application get reduced to 160 MB.
    From the above scenario, We came know that the either the problem with Application object or the problem crystal report object. In the application, We have checked dispose methods of application objects completly. I am sure that  application objects are properly disposed in the application. I hope the problem not with application objects. The problem with Crystal report objects.
    Application properly communicates the dispose methods to crystal report objects. Crystal report objects are not released from
    the memory.
    Crystal report 2008 Serive Pack 2 setup installed in the server. 
    As you said, If Crystal report runtime is not released from memory then memory consumption keep increase???  In service oriented architecture application, how to unload the crystal report runtime??
    Do you any fix for this kind of issue??
    Willl Crystal report 2008 service pack 3 help on this issue??

  • How to enable the memory remapping in the bios?

    How to enable the memory remapping in the bios?
    my laptop: m100 psmaaq-00s003

    Without removing a specific Windows Update KB Patch, and two registry keys, you CANNOT uninstall the Flash Player ActiveX Plug-in for IE in Win 8.
    Microsoft released a new update for Flash Player in IE just the other day.
    Have you run Windows Update recently?

  • How does Java structure memory for an object's members?

    I'm trying to figure out how Java structures/allocates memory for objects. (Yes this is implementation specific. I'm using the Oracle 1.7 runtime for this.) I did some work on this here and here and the results are confusing.
    First off, in both referenced links, when I allocated an array of objects, the equivalent of new Object[10000], it used 4 bytes per object. On a 32-bit system this makes perfect sense. But I'm on a 64-bit system so what's going on here?
    Is Java limited to a 32-bit address space even on 64-bit systems?
    Is Java limited to a 32-bit address space per array and each array object then has a pointer to where the elements are?
    Something else?
    Second, I compared the memory footprint of 8 booleans vs. a byte as the variables in a class. The 8 booleans requires 24 bytes/object or 3 bytes/boolean. The single byte approach requires 10 bytes/object.
    What is going on with 3 bytes/boolean? I would understand 4 (making each an int) and definitely 1 (making each a byte. But 3?
    And what's with expanding a byte to 10 bytes? I would understand 8 where it's expanding a byte to a native int (I'm on a 64-bit system). But what's with the other 2 bytes?
    And in the case of different ways to create a RGB class it gets really weird.
    For a class composed of 3 byte variables it uses 24 bytes/instance. Expensive but understandable as each uses an int.
    So I tried where each class is a single int with the RGB stored in parts of the int (using bit shifting). And it's still 24 bytes/instance. Why on earth is Java taking 3 ints for storage? This makes no sense.
    But the weirdest case is where the class has a single variable of "byte[] color = new byte3;" Note that the byte is allocated so it's not just a null pointer. This approach takes less memory than the other two approaches. How???
    Any guidance as to what is going on here is appreciated. I have a couple of classes that get allocated a lot and the flywheel pattern won't work (these objects have their values changed all over the place).
    And an associated question, does the order of declaring variables matter? Back in the old days when I did C++ programming, declaring "int, byte, int, byte" used 4 int's work of space while "int, int, byte, byte" used 3.
    thanks - dave

    This is a quadruple crosspost.

  • How to define the memory leak in stability test

    Hi
    Usually, we run our system with 70% CPU load for 72 hours for stability test (on solaris 10), because some plugin of our system is using mtmalloc, and we use prstat to monitor the memory of each plugin. But because of the complex memory usage of our application, we don't know when the application will use the Max memory, and because of the "mtmalloc", the memory showed by "prstat" will not released but continually increased.
    So fro the test point of view, there is the risk of memory leak, but actually, there may be no memory leak, so my question is how to define the memory leak in such condition.

    kevin wrote:
    Thank you for the input and all the info.
    isn't java heap the same as memory allocated to the java process in my weblogic
    starup script ?The heap is sized by the -Xmx and -Xms parameters you pass on the java
    command-line. The permanent generation is separate.
    >
    let me also download jprobe and try to run it and see what it gives me.
    I'd start by running with -verbose:gc. I'd want to know whether you're
    running out of heap or permgen space.
    -- Rob
    kevin
    Rob Woollen <[email protected]> wrote:
    Unfortunately memory leaks are not fun to track down even with tools.
    I'd first suggest determining whether you're running out of space in
    the
    permanent area (where classes are loaded), or you've exhausted the java
    help space.
    I'd start by adding -verbose:gc. Look at the gc messages right before
    you hit the OutOfMemoryError. If there's plenty of space left, I'd
    suspect you're running out of perm space. Search these newsgroups and
    the web for MaxPermSize, and you should see plenty of info.
    If you're running out of java heap, tools like jprobe and OptimizeIt
    are
    helpful. If you can tell me a little more about your application and
    how you're testing it, I can offer some more tips.
    -- Rob
    kevin wrote:
    Iam new to JAVA and weblogic. I have an application that runs out ofmemory time
    and again.
    please let me know how to pin point this problem and moreover, howto interpret
    or understand that there is a problem. I have downloaded JPROFILE tool,but it
    is very confusing to understand what is goin on in this tool.
    If somebody can let me know how to interpret and understand the memoryleak, that
    will be great !!!
    thank you.

  • How to manage the memory in i pad

    how to manage the memory in i pad

    Use iTunes on your computer to store items that you want to save but are not needed on the iPad. Learn to sync and also learn how to do file transfers. Delete unneeded items from the iPad.
    When you connect your iPad to iTunes you will see a bar describing how much of your storage space is being used on your iPad. I always suggest leaving plenty of space open for the iOS and apps to operate.

  • Hello,  I want to know how to clear the memory or buffer cash from my mac book?

    Hello,  I want to know how to clear the memory or buffer cash from my mac book? When I look at the series, it puts more and more time to load. Thank you.
    Sorry for my english, i talk french.

    Ok ce n'est pas le problème alors.
    Boot à partir de votre disque d'installation et de lancerl'utilitaire de disque. Le disque de démarrage peut être nécessaire de réparation.
    Using Disk Utility to verify or repair disks
    Ok that's not the problem then.
    Boot from your install disc and run Disk Utility. The startup disk may need repairing.

  • What is the memory for a NI PXI-1010 Chassis?

    What is the memory for a NI PXI-1010 Chassis?
    If it does contain memory what are the sizes and types? And how can it be sanitized to bring it to an unclassified state?
    Thanks, CT
    Solved!
    Go to Solution.

    1010 is a chassis, and doesn't have memory. Memory is on the controller.

  • How to check the memory and CPU usage on NPU

    Hi expert ,
    Could you tell me how to check the memory and cpu usage on NPU?
    I think ASR1000 has this command (show platform hardware qfp active...) , but I coudn't find the same command on ASR9001.
    I checked " show controllers np counters all"  command, but I did not find it.
    Platform: ASR9001
    version: 4.3.2
    NP: Tyhoon
    Thanks,

    Hi Kanako,
    understand your question, but something like that doesnt exist for the trident/typhoon NPU's for the asr9k.
    in fact cpu usage is not really applicable for parallel/serialized hardware forwarders, but mainly the KPI is here
    the PPS it handles.
    The max pps it can handle is dependent on feature set.
    What you could do is measure the rates on the PARSE_FABRIC_RECEIVE count (packets received from fabric, so egress direction), PARSE_ENET_RECEIVE count (packets received from the interface to the fabric, so ingress) and the LOOPBACK count, that is packets that are recirculated for extra processing. The sum of these 3 gives an idea of the PPS rate the NPU is working on.
    Memory consumption is something tricky also, there are many memories attached to the NPU, notably:
    TCAM used for vlan matching, ACL and QOS matching
    Search memory for L2 and L3 (shared on Trident, separated on Typhoon)
    Frame memory for packet bufferin in QOS
    Stats memory, for all kinds of counters of QOS maps, interface stats etc
    their usage is rather dynamic also.
    The few things you want to verify on these are:
    - ACL usage (in terms of Tcam entries)
    - MAC table size (2M max on typhoon)
    - FIB size (4M max on typhoon)
    frame memory is dependent on the buffering, which is a sum of all the packets instant queue length and size of all pmaps attached to interfaces served by the same NPU. there is no good overview as to how much you have available of that, but it has a rather significant size 1G or 2G depending on the TR or SE cards (typhoon specific).
    regards
    xander
    Xander Thuijs CCIE #6775
    Principal Engineer 
    ASR9000, CRS, NCS6000 & IOS-XR

  • In VB Programming code -- How to access the formula for suppressing a field

    In VB Programming code -- How to access the formula for suppressing a field
    I am using Crystal Reports 2008 v1
    Using VB code, I am attempting to modify a Crystal Report before exporting it into a PDF format and then displaying it on the Web.
    My problem is that I am unable to access the formula used to dynamically suppress a field.
    The following code is working:
    mySections = rd.ReportDefinition.Sections
    For Each mySection As CrystalDecisions.CrystalReports.Engine.Section In mySections
       ' myFieldToChange is a String set to the text of the field I need to adjust the Suppression
       iloop = 0
       For Each RecObj As CrystalDecisions.CrystalReports.Engine.ReportObject In mySection.ReportObjects
               If mySection.ReportObjects.Item(iloop).Name.ToLower = myFieldToChange Then
                   myTextObject = CType(mySection.ReportObjects.Item(iloop), CrystalDecisions.CrystalReports.Engine.TextObject)
                   myTextObject.Text = "new field text goes here"
                   mySection.SectionFormat.EnableSuppress = True
                   '  Here is where I want to change the formula for the Suppression
                End if
                iloop = iloop + 1
        Next
    Next
    I can not find any reference to the actual suppression formula in the SDK help file.
    Note, the EnableSuppress can be set to True for False, but if there is a formula for dynamic suppression, the True or False value is overwritten.  The results of the formula determine the suppression.
    Is there a way to reference this formula.  I know that I can put on in using the Crystal Report Designer software, I need to modify this formula using VB code and the SDK.

    Hello, Mark;
    If you are using the ReportDocument object you do not have access to the Conditional Suppression formula. You can get around it by using a formula field in the report for the supression and then using the FormulaField code to change it at runtime.
    If you want to change the supression condition directly at runtime you need to use RAS and the ReportClientDocument.
    Elaine

  • How to obtain the license for the mentioned products.

    Hi All,
    Please help me in below licensing issues.
    1) Our functional team got the below error while accessing "Job Scheduling Workbench".
    Error: The Workbench is inaccessible because Oracle Manufacturing Scheduling has not been licensed. Please work with your Account Manger to purchase the license.
    2) Another error message while accessing the navigation Flow Manufacturing --> Product Sync --> Flow Routings
    Error: APP-BOM 20972: You cannot access this form
    Cause: You do not have a license for Oracle Flow Manufacturing.
    Action: Obtain a license for Oracle Flow Manufacturing.
    Please guide me how to obtain the license for the above products.
    Environment: eBS R12.1.3 on Linux 5.8
    Regards,
    Siva

    Thanks for providing the document. I follow the document and get back to you for any issues.
    Regards,
    Siva.

Maybe you are looking for

  • IPhone 4s stuck in recovery loop and is not detected in iTunes?

    Earlier today i plugged my phone into my computer. I didn't transfer any files when i plugged it into itunes. I then backed up my phone, and decided to update it to 6.1.4. My computer took a couple of minutes to download it and then it was applying t

  • FM to rename   files in ABAP

    Hi..I am pretty new to the world of ABAP. I have the following task. I need to right a function module that will be responsible for renaming files on the R/3 system (to a certain predefined format). Basically, I am thinking that FM will import/accept

  • HT4064 I want to comment on a book and I cannot submit it. Do I need to turn something on?

    I cannot comment on a book I read in IBooks, it will not let me submit? Do I need to turn something on?

  • Problem creating packages

    hi... i'm trying to create a package so that i can access the members of other classes. How ever after putting the package keyword on top of each file etc: package gui; i still can't access the other files. do i have to make it a jar file. if i don..

  • How do I change the email that my security info is being sent to?

    I'm trying to purchase something on a new laptop and my account is asking that I answer some security questions. I made my apple account about 3 years ago and I cant remember the answers to my security questions. I also have no idea what e-mail the s