iray preview - preparing scene step

Hi, when switching from texture preview mode to iray preview mode, my system spends quite a while in the "preparing scene" step. The progress bar is restarting several times as it is computing.

But what exactly is going on there and how to accelerate this step hardware-wise? It seems that during this time, DAZ is allocating lots of memory (gigabytes). The CPU is not maxed out, none of the cores appears to be very busy, at least according to the windows task manager. Neither there is significant disk I/O going on. So bottleneck-wise, I'm running out of ideas...

- System memory speed (CPU waits for memory most of the time?)

- GPU  throughput

- Something else?

Anybody knows?

Thanks :)

Comments

  • KitsumoKitsumo Posts: 1,221
    edited November 2018

    Mine goes through that too. For a good size scene with 3-4 figures plus clothing, it can take 90-120 seconds or so. What's happening is your CPU is reading files (geometry&textures) from your hard drive and sending them to your GPU for rendering. Depending on your settings, those textures may be compressed before they're sent, so your GPU can hold more textures.

    The reason your CPU isn't maxed out during this process is because physical hard disks are really slow by CPU standards(and even SSDs are pretty slow), so your CPU is usually waiting for info from a disk or sending and recieving over the PCI-E bus.

    To get a better idea of what's happening, after you close a render window, go to Help>Troubleshooting>View Log scroll to the bottom and you'll see some of what Iray is doing when it sets up a render.

    You can probably speed things up by buying a faster hard drive, but I don't think it's worth the expense.

    Edited for formatting

    Post edited by Kitsumo on
  • colcurvecolcurve Posts: 171

    The disk data should be cached at some point. So the Upload to gpu could really play a role, I had read that memory transfer is a problem in gpu computing. Do the newer gtx generations have faster mem transfer than 980 ti ( my current card )? Is there maybe a benchmark tool for measuring how good cpu gpu communication performs?

  • TaozTaoz Posts: 10,259
    edited November 2018

    Create a small (like 50x50 pixel or even smaller, to reduce memory use) render of the scene in a separate window, just cancel it as soon as it has started rendering, but don't close it. Keep that render window open in the background, that will keep stuff loaded in memory so preview will start rendering faster. It also works with normal renders.

    How much faster it goes probably depends on the content, size and memory (VRAM (RAM?)) use of the scene, I haven't made any comparative tests in that respect, but with e.g. the attached scene which uses 3.8 GB VRAM the time before it starts rendering is reduced from 80 to less than 20 seconds on my system.

     

    scifi_prison_render.png
    1473 x 933 - 2M
    Post edited by Taoz on
  • HavosHavos Posts: 5,581
    Taoz said:

    Create a small (like 50x50 pixel or even smaller, to reduce memory use) render of the scene in a separate window, just cancel it as soon as it has started rendering, but don't close it. Keep that render window open in the background, that will keep stuff loaded in memory so preview will start rendering faster. It also works with normal renders.

    How much faster it goes probably depends on the content, size and memory (VRAM (RAM?)) use of the scene, I haven't made any comparative tests in that respect, but with e.g. the attached scene which uses 3.8 GB VRAM the time before it starts rendering is reduced from 80 to less than 20 seconds on my system.

     

    Thats a clever idea, and it works, thanks for the tip

  • KitsumoKitsumo Posts: 1,221
    colcurve said:

    The disk data should be cached at some point. So the Upload to gpu could really play a role, I had read that memory transfer is a problem in gpu computing. Do the newer gtx generations have faster mem transfer than 980 ti ( my current card )? Is there maybe a benchmark tool for measuring how good cpu gpu communication performs?

    I don't think the newer cards will transfer info much faster. Most of the GTX line going back to at least the 400's use PCI-Express x 16 which is pretty much standard. Of course once a newer card has the info, it has a faster GPU clock speed, faster memory, more CUDA cores, etc to work with. When Iray is preparing to render, it's relying on a lot of things in your computer, but hard drives are usually the slowest component. I think 1-2 minutes is a normal time for a medium sized scene to start. If you're waiting like 4-6 minutes, you probably have something wrong. What kind of times are you getting?

Sign In or Register to comment.