Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

Is there a method to examine the virtual address space of a specific process to examine if that process is under going virtual memory fragmentation? I know it sounds like something I shouldn't be worried about, but we have a process that fails with an OutOfMemory error, but there is plenty of available memory on the system.

The process has about 500 megabytes available to it and the requested memory call was for 417 megabytes. This leads me to think there isn't enough contiguous space available. But of course I can't offer that as a problem until I can prove it.

In the past I've used Address Space Monitor (http://www.hashpling.org/asm/) and ProcMon to help me figure these types of problems out, but they're not supported on Windows 2000. Anyone have any ideas for Windows 2000?

Besides the obvious, upgrading the OS. (Trust me, that's a whole different fight) Thanks.

share|improve this question

1 Answer 1

I don't think contiguous space would be an issue, generally when a page file is created on windows it will be an immovable object on the disk, even a defrag won't move it. Even if it is fragmented I don't see that it should cause you any issues other than a bit of a slow-down, I wouldn't have thought there'd be any reason memory usage couldn't span two segments of a page file. If you're really concerned about it and want to rule it out, however you could shrink the page file down to a bare-minimum and perform a full defrag on the partition, then reinstate it, that way you would hope it would be placed in the contiguous space.

Realistically, however, I think you'd be better off increasing the page file or, ideally, adding more memory to the server.

share|improve this answer
    
Thanks for your response Alex! I'm not talking about the page file or swap space though. I'm talking about the virtual address space that gets mapped to every process. So it's less about disk fragmentation and more about fragmentation of the process memory space. So when the process makes a call to allocate memory, if that memory isn't contiguous, the OS throws an OutofMemory Exception. The page space on the machine is also quite healthy. –  Jeffery Smith Nov 3 '11 at 14:45

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.