Adding to Cart…
Licensing Agreement | Terms of Service | Privacy Policy | EULA
© 2025 Daz Productions Inc. All Rights Reserved.You currently have no notifications.
Licensing Agreement | Terms of Service | Privacy Policy | EULA
© 2025 Daz Productions Inc. All Rights Reserved.
Comments
That's not good...
It's actually never been an issue - at least not in the way most people here figured.
If you switch Iray into Interactive mode and start a render/use an Iray viewport, you will see in the log file that Iray has always used the full OptiX API for the entire rendering process rather than its own cuda core-optimized code + optional OptiX Prime pathtracing/raycasting acceleration. Using full OptiX in Photoreal mode as well (or perhaps even just deprecating Photoreal mode altogether - or perhaps even bringing back Mixed mode) actually isn't as far of a stretch as most people believe.
Eg. iif you set Render Mode to Interactive and have a Nvidia GPU selected under Interactive Devices you get this:
Notice how the last line reads:
This is in contrast to a render in Photoreal mode with OptiX Prime acceleration enabled where you get:
Photoreal = Optix Prime or built-in
Interactive = OptiX
It was someone a while back from NVIDIA, formerly Iray team or something, who explained OptiX and OptiX Prime aren't the same and unless NVIDIA invests time into getting OptiX Prime up to speed, Iray will not support these RTX features.
Or... something like that? I don't remember 100%.
OptiX Prime supporting RTX or not is a complete misnomer. OptiX Prime is a software-based dedicated pathtracing/raycasting accelerator included as part of (but not dependent on use of) the overall OptiX API package. It's the direct equivalent of a single software-emulated RTCore. Meaning that RTX already supports OptiX Prime in the form of dedicated hardware called RTCores.
What's more, enabling OptiX Prime on RTX cards (which you can actually do right now - Turing has been able to run OptiX Prime acceleration since day one) only works to slow things down since Turing's hardware-level raytracing optimizations (even without functioning RTCores) are already better at raytracing acceleration than OptiX Prime. This is why all the ray-tracing intensive benchmarks of RTX hardware posted in this thread so far show shorter render times without OptiX Prime enabled. OptiX Prime is already a slight bottleneck on RTX hardware. Once RTCores fully come online that bottleneck is only going to increase exponentially as Turing gets natively faster.
People needn't worry about lack of OptiX Prime support on RTX because RTX itself makes OptiX Prime obsolete.
ETA: Coherence
I don't think that was the point. I'll see if I can maybe find the post again. It was from someone who claimed to have been in the actual Iray team. But I think that thread might have been locked at some point.
If it was someone from the Iray team with insight into these things, should we really just ignore it?
https://www.daz3d.com/forums/discussion/270866/ot-new-nvidia-cards-to-come-in-rtx-and-gtx-versions-rtx-titan-first-whispers/p21
OptiX team - not Iray team. Which would explain why he wasn't aware when writing this that Iray - both demonstrably and in terms of annoyingly difficult to find official documentation (see under Key Features -> High Performance) - already features full OptiX API utilization in certain rendering modes. It's just that it doesn't currently use it in the one rendering mode (Photoreal) people like us (and him) previously cared about.
Yeah, hey I said a was a little fuzzy. Still a guy from the OptiX team though, who would you rather believe? This guy who used to work on that stuff, or some text strings in a log file or documentation? I find the latter a rather weak demonstration of anything.
All the better if you're right. Let's hope so.
...It's not a question of belief, though. You can run a test for yourself (render a scene using Iray in Interactive Mode with a Nvidia GPU selected) to prove that what he said about Iray only ever using OptiX Prime is objectively false. Yeah, OptiX in Interactive mode is pretty much useless to us now (my Titan RTX won't even render in that mode unless it's for an Iray viewport - presumably because it's technically unsupported hardware on a Beta release.) But the fact that the code is in there at all means that bringing full OptiX functionality over to Photoreal is gonna be a matter of reorganizing the furntiture rather than having to build things up from scratch.
Which isn't to say that Iray is gonna be magically updated next week. It's just that all the core functionality is already there. Iray with full RTX acceleration should only be a matter of time.
Can you go into a bit more detail about this? I find this confusing. If I do a test in interactive mode, how do I really know OptiX was used and not OptiX Prime? Because of a string in the log? Even more confusing, why would NVIDIA even do this? I mean, what is the actual difference between the two modes, and why would one use OptiX and the other OptiX Prime?
So I tried to render in Interactive mode with my 2080 TI on the latest beta. Still 417.71 NVIDIA drivers. Works fine. Both in viewport and the actual render.
It makes a weird sound come out of my PC though very strange. Like something is winding up for maybe 2 secs, then silence for 3-4 secs, then winding up again. I opened the case to see if I could locate it but can't tell for sure. Most likely the 2080 TI though. Absolutely no clue what it's doing. Stop interactive render and it's gone. Doesn't happen in viewport render. And certainly not in photoreal.
Doesn't sound like a cooler at all. And coolers seem to be running steady too.
Recorded it :D
https://drive.google.com/file/d/1vCDTK2Fx8dAygkwX5_IDL8xmlje7QGnp/view
Read section 3.2: "Balancing Load across Devices and Hosts" (pages 22-25) of the official Iray Light Transport Simulation and Rendering System whitepaper for the full explanation. In short, until only relatively recently fully unbiased rendering (like what you get in Iray when in Photoreal mode) was impractical for use on all but the highest end dedicated graphics rendering hardware during interactive (as in, visually moving things around in your viewport kind of interactive) stages of the 3d modeling process. Consequently every unbiased 3d rendering engine worth its salt had at least one alternate biased rendering mode (back in 2012 Iray actually had two) you could seemlessly switch it into that would utilize dedicated graphics hardware via FPS-oriented game engine friendly APIs (like OptiX) for your rendering pipeline. Hence why Iray Interactive mode uses OptiX.
All of this makes perfect sense in a world where GPUs aren't capable of traversing high quality graphics rendering pipelines in relatively real time - which is how things were in the professinoal cg world until relatively recently.
Read it (link is bad btw). Can't say I understood it all of course, and I did not see a mention of Optix or Optix Prime. I searched some more, on page 19 it says
Searched some more in NVIDIA OptiX 6.0—Programming Guide
A few questions:
I don't know. It just doesn't add up for me. It may very well be a lack of technical understanding. But purely common sense/logic wise I find it all strange. Using a simpler API for Photoreal when you then have to go and use the full API for Interactive, I don't see why a softtware engineer in their right mind would do such a thing. Unless interactive was just something they realized they needed after Photoreal already existed and they saw that they can't do that with just Prime. And then they left Photoreal alone and used OptiX to code Interactive, instead of just reworking Photoreal as well and not have a mess of different API's in there?
bluejaunte, sorry about missing these posts earlier:
Are you positive? Because, if so, your render should've ended up looking something like this:
This is what SickleYield's unchanged original benchmark scene looks like when rendered by Iray's current implementation of OptiX in Interactive Mode on DS 4.11.0.236 Beta on my state of the art Titan RTX, drivers version 417.71.
I get almost exactly the same behavior on my Titan RTX, although in my case it's also accompanied by nothing but a black screen whenever I attempt to render. And this is what my log file looks like while hearing it:
Implying it has something to do with "Scene graph manager" having some sort of problem (honestly have no idea what it is.) And it doesn't appear to be just an RTX thing since the 1050 in my Surface Book also exhibits similar behavior. Regardless, both the sound and lack of rendering go away if - after changing Render Mode to "Interactive" - you also go to Render Settings -> Optimization -> Refinement Mode and set that to "Interactive" as well (the default is "Standard".) Have no clue why since "Refinement Mode" appears to be a totally undocumented feature in DS. But it appears changing both settings is required for things to work.
It's mostly just a question of being familiar with how the hardware/software developed over time. As messed up/backward as it seems, Iray's developmental inconsistencies really aren't that unusual for a longstanding piece of primarily professional-use software.
Oh I just rendered a random scene of mine. And when I say "works fine" I just meant it renders. It does look crap. I assumed that was expected with this render mode? I never really used it before. I tried again with Refinement Mode also set to Interactive and that looks even worse, no shadows it seems. The log looks like yours too.
OptiX isn't an externally linked library like OptiX Prime. It's an API which gets embedded as part of a client program's runtime binary code for performance reasons. It's the key reason why updates to OptiX are said to be more streamlined than updates to OptiX Prime.
My Benchmark:
AMD Threadripper 1920x 12 core 3.6ghz
Gtx670 FTW 2gb
16 gb 3200mhz ddr4 ram Corsair vengance
16gb 2400mhz ddr4 ram Corsair vengance
8:40
my rig is all kinds of confused but aayyyee!!
Fyi SDK contents are generally not indicative of which files you can expect to see in the installation folders of finished programs built from them. This is especially true of ones for pure APIs like OptiX because APIs are normally stripped down and then baked directly into the runtime files of programs bult from them at compile time for performance reasons. Eg. if you open the file
libneuray.dll
included with the current DS Beta in a text editor and search for an OptiX-specific code declaration like "rtCallableProgramId" you will find multiple results. This is because Iray already uses code from the full OptiX API in accomplishing certain tasks like rendering on Nvidia GPUs while set to Interactive Rendering Mode.Is that anything Daz has control over?
I suspect you are confusing the plug-ins to access Iray, which nVidia used to develop for the big suites (Maya, 3DS, C4D) and Iray itself. Daz gets the iray .dll and support files from nVidia, as I understand it, but the plug-in to communicate with DS is and always has been developed by Daz.
Doesnt sound like classic capacitor* whine, but thats all I've got to suggest.
*Its not necessarily from the card. Could be mobo or psu.
Doubt that. This is something for the devs of Iray, as described by the guy who ran the OptiX team. Apparently there are no plans to make OptiX Prime use RTX, judging from this link. So Iray team it is. Pretty strange situation.
Fyi you're looking at documentation for the wrong version of OptiX. Iray in Daz Studio is still only updated to OptiX/OptiX Prime version 5.0.1 (Nividia releasing a new version of OptiX doesn't change which versions of OptiX already exisitng programs use.) And the official programming guide for OptiX 5.0 states (in section 7.1: Libraries, page 75):
Meaning that, depend on the programmer-side implementation, files like
optix.1.dll
may or may not be present in the runtime directories of compiled applications (like Iray) which are at least partially based on the full OptiX API. Since the full OptiX API is only currently used by Iray for basic rendering in Interactive Mode, it makes sense that they would've statically linked just the relevant portions of its code in Iray at compile time rather than included the entire API as a dynamically linked library. That is why the DS log file explicitly mentions using OptiX for rendering (rather than OptiX Prime for just ray-tracing) any time an Nvidia GPU is selected as a render device for Interactive Mode renders despite there being nooptix.1.dll
in its runtime folder.Furthermore Iray's developers having chosen to use this sort of compile-time integration also explains how it is Iray manages to be using Embree (Intel's proprietary equivalent of OptiX for it's CPUs) any time an Intel CPU is selected as a render device for Interactive Mode renders - eg:
despite the fact that there is no
embree2.dll
file located in the current DS Beta's Iray runtime folder. Both OptiX and Embree are presently included in Iray as statically linked code.So the question moving forward with Iray concerning RTX acceleration support isn't a matter of Iray needing to start using OptiX from scratch. The main programming hurdle lies in how to re-integrate full OptiX as part of the Photoreal rendering mode in the place of OptiX Prime (since use of OptiX Prime leads to a decrease in raytracing performance on RTX cards with RTCores enabled will cancel out any possible performance gains from having RTCores on an RTX card.)