hexagon logo

Memory problems when looping a program

Hello all of you,

We have three big jobs which is made of 3 different fixture's with almost 500 pieces in an even matrix. It's a simple piece and we are measuring two diameters in two different levels.

I have made the program with 4 futures and 4 evaluations and then I have made two loops.

The problem is that sometimes PC-DMIS will run 5 pieces and the next time it will run 15 pieces before it get some kind of memory problem. PC-DMIS is totally unusable (freezed) and XP is not responding as it should, immediately when I closed PC-DMIS with the task manager XP is responding as it should.

I have talked to the support and they tell me this "memory" problem is known by them and that they are working with it.

My question is if some one of you have encountered this problem and have a simple solution for it?

We are running PC-DMIS 2009 MR1 and the computer is a x86 XP with 4 GB of RAM. I don't think the computer is the problem because I am running much "bigger" programs with solids imported with no problems. The problems encountering with the loop!

Best regards / Niklas
  • Hello Niklas and welcome to the forum.
    Please enter additional information in your user profile that tells us what version of PC-DMIS you are running, that way you don't have to type it in your posts every time.

    Did you try the "clear instances" option in "print report"? This clears the print buffer, freeing some memory.
    Well worth a try.
  • You could output the loop results before starting the next loop.
    That can help with pcdmis memory allocation issues.
    You could also increase the virtual memory settings in xp which also helps with looping data storage.
  • Niklas, if there was a 'simple solution' we'd have told you Slight smile

    But some PC-DMIS versions are worse than others. I think an upgrade to 2011 MR1 would make the situation better (but not perfect). At least we have a customer running a loop (over one measuring point!) more than 8000 times with that version.

    Also, the suggestion I gave you two and a half years ago - using an external program to call up different PC-DMIS programs for each row (or column) - is still applicable, or did you already try that?

    Another thing that might be worth testing is a 64bit version of PC-DMIS (as soon as it is publicly available).
  • What about looping a subroutine within PC-Dmis?
  • Niklas, if there was a 'simple solution' we'd have told you Slight smile

    But some PC-DMIS versions are worse than others. I think an upgrade to 2011 MR1 would make the situation better (but not perfect). At least we have a customer running a loop (over one measuring point!) more than 8000 times with that version.

    Also, the suggestion I gave you two and a half years ago - using an external program to call up different PC-DMIS programs for each row (or column) - is still applicable, or did you already try that?

    Another thing that might be worth testing is a 64bit version of PC-DMIS (as soon as it is publicly available).


    OK, that's one of the things I hoped to get answers about, if it's worth/getting better to upgrade to a newer version.

    Right now I'm running it with an self wrote program in VB. I am giving the program the parameters for the

    *offset between row 1 and row 2
    *offset between row 2 and row 3
    *offset between column 1 and c 2
    *offset between c 2 and c 3
    *path to the program
    *start detail
    *stop detail
    *Numbers of rows
    *Numbers of columns

    When I'm push the "measuring" button it will start PC-DMIS and write the parameters to a txt-file as PC-DMIS reading and adjust the alignment after it. When the part is measured it sends the result to a statistic program. Then the VB-program close PC-Dmis and restart it to measure the next piece.

    Do you have a approximate date for the release of X64 version?

    Thanks for the help
    / Niklas