I encountered an issue lately where Arnold constantly keeps aborting the render and most of the time crashes Max.
Here is the log, hope every information is included:
Let me add, Arnold and driver are up-to-date and im rendering with GPU:
NVIDIA GeForce GTX 1070
Display Memory: 24441 MB
Dedicated Memory: 8088 MB
Shared Memory: 16353 MB
It looks like the first error message was because you ran out of gpu memory. After that happened, it's possible arnold was left in a bad state and now all renders are failing. Try restarting 3dsmax and see if that fixes it -- provided you render a scene that fits in memory of course.
Restarted and occured again, then again...
How do i know, if the scene is in the boundaries of my gpu memory? What do i need to change to fix it?
It's in the log, you provided:
[Arnold]: 00:15:32 13962MB ERROR | [gpu] an error happened during rendering. OptiX error is: Memory allocation failed (Details: Function "_rtContextLaunch2D" caught exception: Memory allocation failed)caught exception: Memory allocation failed) GPU 0 had 5979MB free before rendering started and 456MB free when crash occurred GPU errors are sometimes due to a GPU not having enough remaining free memory. To see if this is what happened here, try simplifying your scene or running on a GPU with more free RAM to see if it solves the crash.
You can download something like GpuZ and go to page 2 and watch the number on available GPU mem as the machine loads the set to the card.
https://www.techpowerup.com/gpuz/
I use it in all those cases where I need to squeeze the maximum out of card, without triggering the issue you have at hand.
You need to determin which part is the most expensive, could be displacement subdivisions or something else, then treat the local problem until it can run on the card with the amount of memory available
Saw that. I dont have another GPU so that option is out of question.
What does simplifying mean? This started when i added couple more object into my scene (bed, table, chair and so on...) cant i add anymore stuff now due to out of memory? There sure must be another solution, since my GPU has 8k MB
Your GPU has 8GB, but by the time Arnold gets to it, there was only 5979MB (6GB) left. Max, Windows, and whatever else was running on the computer had already used up 2GB.
It looks like you aren't using .tx files for textures. Switching to those should save some memory. Otherwise, I suggest rendering on the CPU with info level logging, looking at the memory stats in the log for that and using that as a rough guide of what is being used and in turn what can be simplified. Maybe you'll get lucky and find that your mesh subdivisions were way too high and lowering that will let it render.
Alright have that tool, but never had to use it for rendering (first time this happens). So its more mateial related, if i understand you correctly? My texture resolutions go from 1k to 8k and dispensing 8k textures could save me more memory?
You would want to convert all your bitmaps to .tx with mipmapping.
This means that for example some 8k texture in reality only covers 4% of the screen, a lower mip map level is injected and less pixels needed and thus, memory footprint drops.
What you can do is to make a quick test, where you select everything in your scene and assign a default material, and delete all else related to texuring. then reset app and load that custom scene, then check if textures is the real memory sucker.
Ok will try the CPU, but the .tx files gave me some weird faint look on my texture last time i tried that option. Is the texture file size decisive too for the memory issue? Switching from png to jpg could work?
Furthermore you suggest to slim down poly count in the scenes could help? Is there something like a guide to keep GPU memory usage low, since it seems this issue has alot of reasons.
Neither jpg nor png will help since textures are decompressed once in gpu memory. You need mipmapped textures, which .tx will give you.
Properly generated .tx files will not give you incorrect renders. If you have problems with that, open a new arnold answers question so we can help you there.
8000x8000 pixel jpg, once it's decompressed and loaded into memory will be using up 8000*8000*3*4B = 768MB of memory. I think it's pretty clear now that it's the likely these textures that are making you run out of memory.
First of all thank you for the suggestions to approach this issue. I
managed to find the culprit, that was literally devouring a huge amount
of memory:
It was a displacement map (only one so far, i planed to add more), that accupied 2.5k MB of the card...
Im still getting into rendering with Arnold, but isnt this a bit much for just one displacement map?
Glad you found what was using all your memory. As we mentioned before, if you use .tx files for your textures, it should vastly reduce your memory usage.