1
$\begingroup$

Many of the people have asked almost the same question. I'm trying to render a big mesh + fur/grass file with a few characters on the screen.

when I hit render, after a number of processing, copying data to gpu etc... i get following error.

Mem: 2960.07M, Peak:2960.07M | CUDA error: Out of memory in cuMemAlloc(&device_pointer, size).

I'm using Geforce GTX 690 which contains 4GB memory.

Can somebody tell me how can i get GPU rendering, while 2960M is far less then 4196M of memory.

I know somebody would suggest me to use CPU.. but i'm curios why not GPU?

I've already compressed texture, etc

Edited

I don't think any other application is using any of my 1GB remaining memory. everything is closed but blender is there, also the GPU utilities are showing 2000/2000 MB are free on one card and 1900/2000MB is free on 2nd card.

i'm using GTX 690. with two GPUs of 2GB each. If somebody thinks that one GPU should have memory matching to the cuda memory/or Peak memory then I'm doubtful. Because in preferences Blender does know that I have 2GPUs where I can select either first GPU or second GPU or even both.

When I render some of smaller objects/scenes both of my GPU renders simultaneously with two blocks.

I'm running following specs

Xeon E5-1660 0 24GB - 1600mhz GTX690

$\endgroup$
2
  • $\begingroup$ Several Blender (or other applications) at the same time? $\endgroup$
    – lemon
    Commented Feb 23, 2017 at 16:23
  • $\begingroup$ You could be overflowing a specific portion of the vRAM (too many or too large textures etc) $\endgroup$
    – J Sargent
    Commented Feb 23, 2017 at 19:11

2 Answers 2

2
$\begingroup$

You don't have 4GB available to render by using 2 GPUS with 2GB each: you have only 2GB.

If you look at the specs for the card on the Nvidia Webstite It states clearly that

The memory configuration is: 4096 MB....(2048 MB per GPU) GDDR5

The memory used multiple GPUs is not added or shared, but each one uses its own pool of vRAM.

The same is true when using multiple cards on the same machine, and on top of that, the memory available to render in cycles is limited by the amount on the smallest of the cards. (For example if you have a 4 GB card and a 2GB one, you would only be able to use 2GB).

Keep in mind also that if any of the cards is plugged to a monitor, or multiple ones, there will be even less vRAM available. All other apps and windows that are open will use some of the resources of your machine.

$\endgroup$
0
$\begingroup$

Maybe other applications are using that GB, or Blender itself?

If so, you could try to render from the command line so displaying Blender doesn't cost any resources: https://docs.blender.org/manual/en/dev/advanced/command_line/arguments.html

(Reducing subdivisions of text sometimes saves a lot of memory, according to your description there is no text.)

$\endgroup$
1
  • $\begingroup$ i edited question.. please recheck $\endgroup$
    – MFarooqi
    Commented Feb 24, 2017 at 18:46

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .