[Fixed] Out of Memory error when I'm not (not DS specific)
I've been having memory issues lately, and I have no idea what started them. So, I opened up multiple programs at once to find some sort of an average ram usage when I'm normally working and doing things, and tried to invoke a memory error so I could see things all at once.
Here's what I had open-
Daz Studio (with full scene)
Poser (with full scene)
Photoshop (with PSD file open)
Blacksmith3D (with project file open)
Chrome (multiple tabs)
Windows Explorer
Task Manger + Resource Monitor
Now take a look at my screenshot. I'm not even hitting my physical ram ceiling (8GB), yet I'm getting an error. I've also received this error before with only 2 apps open and a lot less memory usage. Running Windows Memory Diagnostics in Standard mode yielded no errors (I'll set up Extended mode tonight before I go to bed).
My system specs (self-built around October 2011- upgrades since):
Windows 7 x64
Asus P8Z68-V Pro (motherboard)
Intel i7 2600K @3.4GHz (4.6+ or so when under load)
8GB Corsair Vengeance Lowpro
EVGA GTX 770 FTW 4GB
Asus Xonar DX (sound card)
If anybody can help shed light, I'm all ears (or eyes?).
And yes, I know, I need to clean up my desktop :P
Comments
The problem is not the physical ram in this case, it's the swap or page file (virtual memory) which 100% usage you see in the 'commit charge' diagram in your screenshot. Either that one is set too small (you might have set manually, but it could be too small when managed by Windows as well, especially when the drive it writes to is running out of free space, usually with smaller SSD), or some software/driver has a memory leak that does not free memory automatically when not using it anymore. If you run your system 24/7 it sometimes helps restarting the system once in a while, though that doesn't solve the problem itself. Better try setting the virtual memory to decent min/max values manually - with previous Windows versions recommendations often were 1.5x of physical memory, but that isn't true for recent os/systems anymore, though you can find best values for your specific systems with a little tool. Needs a short explanation that I can look up and post tomorrow, now it's after midnight here and I need to get some sleep, sorry ;)
(not sure if terminology like swap/page file/virtual memory is exact in english, as I only know these in german - but I think you get what I mean)
You know, I think you're right. When I built this computer it was before I got into 3D so my pagefile was set with a gaming machine in mind (not a very heavy emphasis on having a large one). I'll have to double check my paging settings and adjust them. Thanks!
First a question:
When you crashed, were you running 64 bit versions of Poser, DS, Blacksmith, Photoshop, etcetera?
Remember, even if your OS is 64 bit, if you launched the 32 bit version of DS (either by accident or because that's the default on your system), then he only understands memory sizes up to "so much" in his private address space. DAZ Studio could indeed have run out of private storage even though Windows was happily chugging along.
So check that.
And back to the other suggestion...with Windows 7 64 bit and 8 GB RAM, you should either let Windows manage it or set it to AT LEAST 2 times the size of your physical RAM. 16 GB in your case. Maybe more, seeing all of the stuff you had open during the crash. Don't listen to the people who say it's okay to run Windows with no virtual storage. The OS is written by Microsoft engineers and they insist that you should have virtual storage.
And a little off the path here...but there's one point in favor of you making the jump to Windows 8.1 Pro 64 bit: You can let Windows manage your virtual memory and in addition to increasing the size, Windows 8 also has the ability to automatically REDUCE the size of the swap/page file. I tested this on a desktop and laptop under Windows 8.1 and it really does work! Earlier versions of Windows would increase but were not sophisticated enough to reduce. Over time, this would result in a badly fragmented partition wherever these files got created.
I run apps in 64bit whenever possible.
As far as the page file, as I said, when I built this system it was a gaming machine and there is no emphasis on a paging file for gaming purposes.
As for moving on to Windows 8, I'll need to read up on it again. For a long time, gamers weren't advised to upgrade because gaming + windows 8 was like oil and water.
bad4u Perfect translation. I've already ran into that with 16GB by the way, lol. Win 7 and Daz3D really needs allot more RAM.
Subtropic Pixel, Some people prefer a real desktop with a real Start menu on an Operating system that can use more then one monitor, that can have multiple windows open at the same time. Not a cellphone interface, not on a workstation. I'll stick with XP and 7.
http://www.zarcondeegrissom.org/pics/XPrealWorkEnvExmpl2_127c.GIF
You can switch Win 8 to a desktop setting.
Ok, I went back to the 1-1.5 min/max method of a paging file to see if that helps things.
With Skylake almost around the corner within the next year (I think?), I'll wait until then to check out Windows 8 since I'll need to upgrade my mobo/cpu by then. I've gone a few generations while sticking with Sandy Bridge, and I think with the next generation, it's time.
/edit
Ok, I reopened everything with the new pagefile limits, and everything seems smooth. My pagefile is only using half, but my physical ram is taken up entirely (a lot of which is Standby rather than In-Use). Is that how ram works? The bigger the page file, the more physical ram is used? In 15+ years you'd think I'd know this by now.
That sounds allot more reasonable then dumping a newer OS onto that computer in the hopes it will fix the limited ram situation.
Besides, by then M$ may release the next OS, just in time for the computers to barely be able to run the older one, lol. Best of luck.
(edit)
Possibly. There is that cache thing for files, it likes to consume every drop of remaining Real-RAM, even if it dose not use it. At least Win7 can tell it to give some back when it is needed. Thus there is two numbers that may not match. Used RAM, and Available Ram.
(edit2)
That is exactly what the "Standby" is, it's the file cache thing.
Windows runs programs in physical memory and dynamically moves inactive ones (partly) to slower virtual memory when active ones request/need more ram, beside that it can allocate virtual memory to programs that need more than what is available physically (quite simplified). That's why some programs might show a slight delay when bringing them back to focus, e.g. a browser you have runnning in background while working with complex 3D and image manipulation software meanwhile (might be more noticable with slow PC, probably not so much with i7). So more of your physical ram being used recently should be fine, it's just that less software has been moved to virtual memory (yet).
I'll post how to find recommended settings for page file for a specific system when I'm home from work.
@zarcon- yea, my Standby generally gets ate by Photoshop, which doesn't like to release it after closing the program. Apparently this is by design and intended. /shrug
@bad4u- Thanks. I'm good with settings when it comes to gaming, but not so much for 3D work. Much appreciated.
Like Windows 8.1? ;)
--
ah, Start Menu X. yet another program to fake a start menu, akin to windowblinds. The real button that comes with 8.1, only brings you back to the cellphone interface screen. Enough of this.
Probably the best advice starts here;
http://technet.microsoft.com/en-us/magazine/ff382717.aspx
1.5x RAM basically, as a second to the "Recommended" at the bottom of that settings window.
Now my computer has a "Recommended" of 24GB in that window, and I don't have that much room left on my SSD, lol.
It probably comes down to how much stuff can you possibly open at the same time, and go a bit bigger.
After all 1.5 x 192GB is a ridiculously large swap, lol.
I think I'll wait for Win 9 and upgrade with my mobo/cpu. Win 9 is slated for next year and brings back a proper start menu.
Well my point is that it takes very little effort to make Win 8 work and look like Win 7. And Start Menu X is actually much better than the standard Windows Start menu, IMO, so even if Win 8 had a Start menu I'd replace it with Start Menu X anyway.
Could always just install a replacement shell. I used to use and love Litestep.
Ummm, sorry but everything you represented as fact is not so, and I must call you on it.
1. Windows 8.1 is a real desktop operating system. If you require a "real start menu", there are at least two excellent choices. Start8 by Stardock for under $10.00, and Classic Shell, which is open source and is free. I use the latter.
2. Windows 8.1 runs multiple monitors just fine. I have 5. All 5 have a start bar in them and access to the aforementioned Classic Shell start button and start menu. Neither Windows XP nor Windows 7 can do this.
3. Windows 8.1 can be configured to run in desktop mode only. I have done this and I never see your so-called "cell phone interface". Never. Saying that Windows 8 is only a cell phone interface is misleading, disingenuous, and just plain wrong.
I ask you sincerely: Please don't mislead people!
4. XP is outdated and is not capable of even running 64 bit programs, therefore has no ability to address or access large memory address spaces, which will soon become more and more critical for DAZ software, particularly if you plan to employ the new HD meshes and lots of textures. Beyond that, XP doesn't even apply to the OP's problem, so I don't know why you even mentioned it.
5. Windows 7 is still an excellent OS, this is absolutely true. But Windows 8 is solid, stable, fast, usable, and reliable. Memory handling has been improved. CPU scheduling has been improved. Disk access has been improved. Security has been improved. Display handling has been improved. Windows 8 has many structural and architectural improvements that will never make it into Windows 7.
6. Windows 8 is now nearly 2 years old. I've said it before and I'll say it again. Windows 8 has made a lot of progress. We need to stop clinging to old wive's tales and stop saying untruths in our stubborn resistance to progress.
Anytime now is a good time for Windows 8.
I understand the desire to wait and see what Skylake has to offer, and for anybody who says that, I support that strategy. But bear in mind that Skylake (Windows 9) may have its own teething pains. Probably will.
All I'm asking is that we stop spreading misinformation about Windows 8. That just doesn't help people who are trying to make the best decision possible for themselves and for their art.
lol Skylake is Intel's next gen processor. Windows 9 is codenamed Threshold.
so true on all counts! I have 16gb also...hopefully the next incarnation of windows will be better. They tend to alternate bad with good for some reason.
I'm running Daz Studio on Win 8.1 with 2 monitors. I have no problem staying away from the "cellphone" interface. I hardly ever see it. In DS, I let part of the window spill over onto the other monitor. That way, I get a larger preview pane in the left monitor, and let the Render, Parameters and Surfaces tabs live on the right monitor.
5 monitors???!!! I'm thinking the Dystopian Console Station... :lol:
it's easy to confuse code names, lol. Araña, Tarantula, etc. As for the five monitors, they can be quite useful for having docs open for all the various parts of the project your working on, open at the same time. Or just keeping up on the latest hurricane status.
As for the rest, I did not consider that misinformation. I did try "Classic Shell" to get the Programs menu back into the win7 start menu, with less then desirable results. I am not a big fan of scrolling menus that are fractions of my screen in size, give me the whole list. I ended up converting the "Favorites" into a fake programs menu with a config-tweak if I remember correct (May have been registry). I'll need to look into that to see if that has improved with "Classic Shell".
http://www.zarcondeegrissom.org/pics/XPmenueWithBackground7_127c.GIF
Beginning of the year, I looked extensively for a Windows 8 example and how to, for a setup like ours (Multi-monitor). At the time nobody had a picture of windows 8 with anything on the one screen, other then the cellphone interface (Metro). There was nothing to show me that it can work with multiple monitors, nobody had an example. Then the flood of complaints about the 8.1 bringing back the start menu, not being all it was claimed to be. The former post with the screen-cap is the first time I've seen windows 8.* with multiple windows open and not with full-screen only programs. Painful memories of PowerPoint turning off my other monitors, just to show me something on one screen came to mind.
http://en.wikipedia.org/wiki/Multi-monitor
I have found a few pics this morning of post-XP with multi-head setups, and a complaint about windows resizing themselves, lol. Yep, teething pains.
(edit)
Have they added a check-box, to allow the task bar on just one of the monitors, so you can use ALL of the desktop space for your apps and stuff on the peripheral monitors?
so true on all counts! I have 16gb also...hopefully the next incarnation of windows will be better. They tend to alternate bad with good for some reason. lol. That is because they force there stuff out the door to a schedule cadence, regardless if it is ready or not. They have not learned the lessons of "Go Fever" or something I guess. I have skipped a few flavors in the past, because of that, not the teething pains. Vista, XP 64bit drivers, ME, 95, etc.
http://en.wikipedia.org/wiki/Go_fever
No problem.
For anybody who wants to find out how much virtual memory the specific system and your personal use really needs - here's the way to go, following Mark Russinovichs recommendations (he's a Microsoft Most Valuable Professional and e.g. wrote the Process Explorer for MS Sysinternals).
1. Download Microsofts Sysinternals Process Explorer from http://technet.microsoft.com/en-us/sysinternals/bb896653
This is a free download and available as part of free MS Windows Sysinternals Suite as well, which includes some more great troubleshooting tools for Windows. Check out Sysinternals website if you like to know more.
2. Unzip Process Explorer (procexp.exe) to any folder you like, no need to install, just start procexp.exe.
3. In Process Explorer open from menu 'View -> System Information', on that window switch to 'Memory' tab then.
4. Now start any software that you want to run at the same time - don't forget to open files like a larger scene in DS or Poser, maybe few (layered) images in PS, browser with some tabs open, mail program and whatever you think you might need. Work with your programs like you usually do.
5. After you used your PC for some time, check Process Explorers System Information / Memory window again. There's a frame 'Commit Charge (K)' and we are interested in the 'Peak' value in there. If the peak value is as high as limit value in same frame, you might need to configure higher max value for page file before you try again.
6. To quote Marks recommendations for page file size: 'Set the paging file minimum to be that value [note: the Peak value] minus the amount of RAM in your system (if the value is negative, pick a minimum size to permit the kind of crash dump you are configured for). If you want to have some breathing room for potentially large commit demands, set the maximum to double that number. '
---
So this means:
! For page file minimum use: 'Commit Charge Peak value minus physical RAM on your machine = page file minimum'
! For page file maximum use: 'page file minimum * 2 = page file maximum'
If you got a negative value for page file min, you should set a minimum size that depends on the crash dump that is configured for your Windows, this differs from machine to machine - a full memory dump needs a minimum of (physical RAM + 1MB), while a kernel memory dump needs about 2GB and a small memory dump only about 16MB (on Win).
---
For reference or detailed information about virtual memory aspects you find Mark Russinovichs Blog post here:
http://blogs.technet.com/b/markrussinovich/archive/2008/11/17/3155406.aspx
More detailed thoughts about finding and configuring best page file size in that blog post by Nick Rintalan:
http://blogs.citrix.com/2011/12/23/the-pagefile-done-right/
Note: If you want more precise value for commit charge peak value, just let process explorer run for longer time (even days) while you work with your machine and it will track any peaks in the long run. Longer run is recommended for servers too.
Note2: If you are using smaller SSD or running out of harddisk space in general, you probably want to use some smaller value for page file max. Finally that's your personal taste and depends on your needs, some people might never exeed the peak value and so are on the safe side with just another 1GB added to page file max instead of page file min *2. You decide.
Hope that helps.
That's where I had read that, Thanks bad4u.
And with multi-head, you can leave that open off to the side all the time. It dose not consume mad amounts of CPU or RAM, so it is like the tack and temp gauge in a car. Just good to have there. I think there screen-caps are for the win8 version, I remember the win7 one being quite different esthetically.
(EDIT)
I agree with bad4u thoroughly, Ignore my swap config, unless your willing to keep a leash on the amount of stuff you run at ALL times, and have the monitor Always open, and even then, expect occasional ram limit problems when you forget.
Sorry if I came down hard in my prior post, but I get weary of people just repeating what they hear without actually doing any real research. If I have made anybody question their own obedience to the naysayers, then I know it will be for the better and my time here will have been well-spent. :coolsmirk:
Now go forth, have a great weekend, and don't spend all your time cooped up in the house!