Should System Memory Be Twice …
Daz 3D Forums > General > The Commons>Should System Memory Be Twice …
Should System Memory Be Twice That Of Vram?
in The Commons
Been seeing a lot of posts indicating that the system memory should be at a minimum twice of what your VRAM is, but haven't seen anyone actually comment that their rendering performance was improved by following this rule of thumb. Just wondering if my 2 RTX 2080 Ti's are being adversely affected by having only 16Gb of DDR4 ram.
Comments
Have 32GB system ram and 1 RTX2080Ti. Some of my complex scenes with characters still have dropped to CPU. Scene Optimizer still necessary, Or more DDR4.
I'm of the opinion one can't have to much. I have 64GB and seldom go over 50GB used. I do have lots of apps open, including more than one instance of Studio. I've even been known to render more than one instance. I use a 980ti, and a 970 to drive 3 monitors. I keep eyeing a Titan, but £2300 is a lot, but sooooo tempting.
If you have more RAM than you need, you might have wasted a little cash; not enough can be very frustrating. I say might as it is possible buying less so you have just enough would have cost more. :)
I would tend to agree with the original statement, simply because the system has lots of other overhead to deal with. It's not helpful to do something else cpu intensive while rendering, but you can monitor memory and cpu usage to make sure you're not shooting yourself in the foot. When rendering, it's mostly the textures that eat up system memory and Vram. On Windoze, the Task Manager shows you the system memory well, it doesn't do as well for Vram. I use GPU-Z to monitor Vram and GPU usage. I only have a GTX 1060-6GB and 16GB main, but it's more than I used to have! It's enough for 3 main figures and a set, which is about as complex as I get.
The two times rule is just a generalisation, although in my experience a fairly good one.
Basically during rendering I am fairly sure what is in the GPU VRAM is mirrored in RAM. So if the GPU(s) are close to capacity, and you have almost the same RAM as VRAM, then there is no space for the rest of your memory needs, and so the system will start paging to your virtual swap drive, and this will have a significant effect on performance.
If your performance drops like a stone then you know you are being adversely effected. If your performance is consistently fine, then you are not. It all depends on just what you are trying to do. If you crash Daz frequently, this could be a reason. However, if you are not creating large enough scenes to cause Daz to crash, then there is no point to buying hardware you don't need. Its that simple.
That being said, memory is at a historically low price right now. If you are going to be running two video cards that are worth over $1200 each, it doesn't make sense to skimp on the RAM when it is less than $100 for a 16GB kit.
Its funny because I did this recently myself, except I have 1080ti's. I bought another 16GB for like $90.I had been using 16GB with two 11GB GPUs, so I have real experience using your exact memory setup. Frankly, it worked fine most of the time. Daz had a few crashes, but only with the most complex scenes I had made. I'm talking like maybe once or twice a month. Going to 32GB has eliminated those events entirely. But that was my use case. Your use may be totally different from mine, as I said, if you are not getting crashes from large scenes, then you are just fine staying with what you have. Your current performance should dictate what you do.
Still and all, having more system RAM never hurts performance.
I've been wondering about that. I've seen some people say it should be three times the Vram size. I've got a fairly old PC with 12GB system RAM which is as much as it can take. If three times is right them I'm already at the limit with my 4GB video card, if twice is OK I could get a 6GB card (do they make them that size?)
I crashed Daz with my PC#2 with scenes that did not crash the same sister system with dual titan x pascals. Both had 64gb Ripjaws ram so I suspect ram was not the issue.
Yes they. The 1060 comes in a 6Gb version. The 1660, 1660ti and 2060 are all only available at 6Gb. Before getting a new card of that sort make sure your PSU has a PCIE connector, it will be either a 6+2 pin or 8 pin connector labeled either PCI or PCIE. All the 6Gb and higher cards require additional power above what is delivered from the PCIE slot itself.
Thank you for the info. Hardware isn't really my thing, I'm using a 1050 ti. I originally had an older card, 5 hundred and something I think, maybe be 570 0r 590. The old card had a cable that I think came from the power supply, but there is nowhere to plug this in on the 1050 ti. The new card is only plugged in to the edge connector and it works fine. If I decide to consider a 1060 series I'll have to open up the box and see if I can work out what this cable is. I assume it's some sort of power supply but I don't know if it is PCIE or something else.
That cable that plugged into the top of your old card was a PCIE power connector.
The 1050ti draws so little power it can be powered exclusively from the PCIE slot and needs no additional power.
The render drops to the CPU when you're over your VRAM, not system memory.
When I had 8Gb of system memory (and 3Gb of VRAM) I used to need the whole 8Gb. Then I upgraded to 16Gb, and I used around 10Gb of them each time. Though, the performance difference was not that noticeable.
Now I have 6Gb of VRAM, and I still use those 10Gb, while the weight of my scenes has almost doubled.
So, no, I think that rule is more common sense than actual math.
That said, as outrider42 pointed out, if you're spending 2400$ on your GPUs, it makes sense to go for at least 150$ of RAM (and so 32Gb). Every build should be balanced.
In any case, choose a motherboard with 4 RAM slots, and occupy it with 2 sticks of what you can afford.
That way you'll be able to add 2 more sticks in the future (not just 1, otherwise you'd be using single-channel memory).
The only downside is that the POST (first stage of the boot process) could take around 1 second longer with 4 sticks instead of 2. And the overclock potential of your RAM would slightly decrease, according to your mobo.
My Win7 64 system gets ultra constipated when I go over system ram. To me the result is just as bad as "drop to CPU". Well no, it's actually quite a bit worse.
Every system process becomes bottlenecked, and i usually CTRL+ALT+DEL and terminate DAZ Studio. But you are right, i typed my reply super fast at the time and technically that's not drop to CPU. My CPU is bogged. But that's different. Thought of it later that I didn't write that correctly. Good that you point this out ;)
From the times I ended up getting this 2.5x seemed the safest for the way I set up scenes. But maybe the od scene could break that too.
Ideally if you use Iray in Daz Studio for rendering, you want 2x your largest card's VRAM capacity for overall system RAM at minium in order to avoid potential bottlenecks in rendering near maximum capacity scenes. The reasons for this are multiple and mostly programmatic to the Iray renderer specifically:
What this effectively means is that on a system such as yours (16GB system RAM, 11GB VRAM per GPU) working with a 4GB scene can easily entail the following memory usage levels:
Add in a (probably) conservative estimate of 4GB system memory, 2GB GPU memory for your operating system and other programs (eg. Chrome) and:
Bump this up to a 10GB scene, and:
Granted these are very ballpark figures. But in general this illustrates why it is that significantly more system memory than GPU memory is preferrable. At least it is if you want to render larger scenes while taking full advantage of Daz Studio's user interface perks without undergoing extreme sacrifices in render performance.
I recently upgraded my system memory to 32Gb to go with my 8 Gb video card, because Resource Monitor kept telling me that I had no free memory. Now, I usually have between 5-10 Gb free while rendering depending on whether or not I have Chrome open. So yeah, it's worth the upgrade. It's also the cheapest noticable upgrade you can make.
I cannot think of any way in which System RAM and VRAM are possibly related. "your textures have to fit" is the rule, for both. But that doesn't mean that there is any relation between the two. I think the rule probably popped up because of what people saw on their systems, not because it is in any way normative.
In computing, the real-estate hierarchy from fast and expensive to slow but cheap is: CPU registers, L1 Cache, L2, Cache, L3 Cache (if you have it), System Memory, VRAM, persistent storage, remote storage. System memory comes in ahead of VRAM only because it is separated from the CPU by the much faster Northbridge, while VRAM goes over the PCIe bus.
And that's why IRay will default to the CPU if all the textures don't fit on the card: because the GPU and CPU do not see the same address space, and there's only the PCIe bus between the two of them which is an order of magnitude slower than the Northbridge, between the CPU and, say, system memory.
If you don't fit in system memory, god help you because just as the PCIe bus is an order of magnitude slower than the Northbridge, the persistent storage the OS will use to swap is another two orders of magnitude slower in turn. In that sense it is less catostrophic; applications cannot directly detect that they are swapping and select some degraded mode of operation. It will work but it'll be so slow that it will seem like it isn't working.
See this post. Iray actually affects a very direct relationship between the two.
Ultra constipated is a good description. I'm running Win 10 Pro 64 bit and after a difficult render I find my computer is struggling to do anything for 10 minutes or more after the render finishes. A few days ago I left a render running overnight and next morning all I had was a taskbar and a mouse pointer. The rest of the screen was blank, clicking on taskbar icons or the start button did nothing, it wouldn't respond to control+alt+del, I had to switch the computer off. I had to do some drastic cutting of texture sizes with Scene Optimiser to get that scene to render.
General Windows programs, including DS, consider "all memory equal", and do NOT care whether it's system memory or swap space on your slowest hard drive. It is detectable, and programs can technically decide what type of memory to use, but such detections and specified memory usage are generally omitted, because including such code makes programs slower, and because it is NOT in the interest of developers to prevent people from using their software. Developers will generally warn that having less than an X amount of memory is undesirable (usually by posting "recommended specs" for their software). But, a user running the software on a less than recommended system will simply be told that the software may run, but will probably not reach the performance the developers desire for it, not that he isn't allowed to run the software on such a sub-spec system.
That said, yes, you can run Daz on a rig with 2GB of memory and an 8GB RTX070. And yes, you can even make a 6GB iRay scene and have it rendered on the RTX 2070. It's just that the actual rendering is about the only thing that's going at a somewhat acceptable speed. Setting up such a scene, loading and positioning the assets, cameras and lights is going to be a big, frustrating, and very slow pain. Crashes due to instability may frequently occur while setting up a scene. Various functions within the code may give "timeouts", resulting in missing data, which may feel like bugs to the user.
For example, loading the meta data for 5,000 products will probably time out at some point, which results in many products not appearing in your Smart Content. In this case, that wouldn't be a bug, but just a matter of having way too much stuff to load for your way below recommended system.
Same thing may happen when adding a complex product to your scene: loading may take so long, that at some point the software will assume some data to be incomplete, and skip it or throw an error.
..yeah somewhat in the same boat, Have an older system that originally had only 12GB which I upgraded to 24 GB before installing a 12 GB Titan-X. 24 is as much as the MB will support.
On my assembly system I am using a 4 GB 750 Ti which is sufficient for individual character proof as well as scene subset tests, and even allows me to work in Iray View mode (very helpful for skin building, working with overlays, posing, and morphing).
You raise an interesting point here. Does Studio load the metadata for everything in the library into memory? I have got a fairly big library, I have been buying stuff here for years so that might be adding to my problems with large scenes.
I don't use smart content so I would cheerfully switch off metadata as long as I could keep my custom categories. Is this possible?
This is just to point out that the official system requirements from daz are totally off. They say 3G ram and 4G vram are recommended with iray. While it should really be 16G ram and 6G vram to do something "serious" using the scene optimizer addon. Then it is also true that I was able to render small scenes in iray with 4G ram and 1G vram by just resizing textures, so that could be the minimum specs, but not "out of the box", you always need to optimize to avoid textures killing the card.
I personally believe the scene optimizer addon should be included as standard in daz studio. It is simply unusable without it. Unless you have a monster rig that is.
https://helpdaz.zendesk.com/hc/en-us/articles/115003568443-What-are-the-system-requirements-to-run-Daz-Studio-
That seems to also be saying that "more is better", for both. In any case, it's pretty wierd the system that does not have at least twice as much system RAM as VRAM. That was my point: more is always better, not necesarily 2x or 3x as a rule.
Yeah, pretty much.
At the higher prosumer level it's actually a lot more common than you might think. Multiple Nvidia high-end GTX/Titan cards are most definitely not cheap. And (at least temporarily) skimping on system memory is a very attractive upgrade path for speedy rendering (case in point - my main rendering rig right now is a Titan RTX based 24GB VRAM system with 32GB system RAM.) Plus when you consider the added wrinkle of NVLink based VRAM pooling (something that currently works in Iray on Linux systems) making eg. a dual 2080Ti setup effectively a 22GB VRAM system, what threshold exactly constitues double the total VRAM becomes a bit more murky.
In the specific case of applications using the Iray rendering engine, exact multiples of VRAM capacity does exist as a rule for what makes for most optimal VRAM to system RAM relationships. Because of the redundant duplication of all 3D assets that goes on for user interactivity and load balancing purposes.
...for the prosumer, at around 2,300$ - 2,400$ for dual RTX 2080 Ti's and at 79$ for the for the NVLink bridge (plus a heftier PSU to power them), a single Titan RTX with 24 GB, and would be just as economical and you'd be able to use it with Daz Iray in Windows today.