Why Iray was not a good choice
![commorancy](https://secure.gravatar.com/avatar/a12457b181dcab9c46987ab1c3520b04?&r=pg&s=100&d=https%3A%2F%2Fvanillicon.com%2Fa12457b181dcab9c46987ab1c3520b04_100.png)
The addition of NVIDIA's Iray to Daz Studio was not a good choice for a hobby rendering use. Oh, don't get me wrong, Iray is a reasonably great unbiased renderer for certain uses. That's not the problem. What are the problems? Here we go:
- Iray is an NVIDIA product. What does this mean? It means if you want to use Daz Studio with Iray and get even halfway decent render times, you'll have to invest in a relatively expensive NVIDIA rig. That means you cannot just run out and buy whatever computer you want. Instead, you need to be absolutely certain that the rig you're buying is outfitted with specific NVIDIA GPUs to get maximum benefit out of Iray. More than this, you can't just get a rig outfitted with any random NVIDIA card. You need to be absolutely certain that the NVIDIA GPU you select is optimized to work with the sized scenes you want to build and render.
- Mac rendering sucks because it's CPU only. Extending point 1, even though there is a Mac version of Daz Studio, the NVIDIA problem is biased towards custom built Windows computers and away from Macs. Apple's most recent choice to incorporate GPUs other than NVIDIA into its line of computers (i.e., Intel, AMD / ATI Radeon HD cards) excludes any real use of Iray on Apple's Mac computer products. Apple's choice in GPUs is not compatible with Iray GPU rendering. This choice in renderer unfairly penalizes Mac users. Yes, while you can buy a Thunderbolt external PCIE chassis and insert an NVIDIA GPU into it, this is not at all optimal (or even practical) for rendering Daz Studio imagery. This solution is not even really supported by Apple. If you venture off into using an external Thunderbolt PCIE chassis, you do so at your own risk. It also means you must have this external chassis hanging off of your Mac sending data over that Thunderbolt bus.
- Not even the current Mac Pro (Apple's flagship product) offers NVIDIA cards by default (although the AMD cards can be replaced at further expense).
- CPU rendering in Iray is outright horrible. Unlike other renderers which do quite well using CPUs, NVIDIA seems to have completely hobbled Iray to not render properly on computer CPUs no matter how many you have. In fact, this renderer seems so optimized for GPU rendering, I don't even know why Iray has a CPU rendering mode other than as a checkbox on NVIDIA's comparison chart.
- Iray is an expensive commercial product tied to expensive GPU products. Like 3Delight, buying a license for this software is pricy. If you want to network render, for example, it's about $300 per license. This is way too much to invest for a hobby product like Daz Studio, simply to get better rendering performance. Additionally, as I just stated at the beginning of this point, you'll need to invest into pricy NVIDIA GPU setup to even take advantage of network rendering.
- Iray is finicky. When it works, it works well. When it doesn't, let's just say that it sucks hard. While it's a fine renderer for architectural rendering (which is more or less what it was designed for), it doesn't work great for all material types, which leads to...
- Iray is not the best renderer for human skin. In fact, I'd say that both 3Delight and Iray are about equivalent at rendering human skin, which is to say they both do it equally poorly. On the other hand, because Daz Studio's goal is to sell human models (i.e., G3F/M and so on), it's entirely at odds that Daz chose an architectural renderer not optimized for rendering human models. Because at least 95% of the renders on Daz Studio have a human subject as the primary imagery, Iray was a suboptimal choice for extending Daz Studio. In fact, it would have been preferable to add a renderer that can realistically render skin surfaces and that didn't necessarily do perfect environmental rendering. This probably meant tweaking the renderer to do it better.
- Conflict of interest. NVIDIA is a GPU manufacturer. First and foremost, NVIDIA are a hardware company. They are not a 3D software company. All of the software that NVIDIA releases is intended to sell more GPU product. This means that NVIDIA could pull the plug on Iray at any point because it's not their core business. These software products are experimental. Just like the Shield tablet, their gaming services and various other NVIDIA software excursions, these products have a likelihood of disappearing once NVIDIA realizes they are a market failure. Daz Studio having spent time investing in an experimental renderer by an individual GPU company is, at best, questionable. Maybe Daz got a great deal on the licensing of this renderer, but that doesn't make it a great choice... especially considering point 7.
What renderer would have been a better choice? For starters, Luxrender, Yafaray or even Appleseed. These are open source products written to be standalone renderers without any allegiance to any computer brand, GPU product or any other commercial agenda. While I realize there are DS third party interfaces to LuxRender, these are not native interfaces and are, therefore, kludgy to use. Also, having these products in the store doesn't preclude Daz from creating a native interface to this renderer. In fact, because Lux is equally as useful to Iray, using this open source product is actually the smarter approach, particularly because it can be tweaked and extended to better support DS. Not only does it work on all CPU models and types, it also supports GPU rendering on both NVIDIA and AMD/ATI (which means it supports both Mac and Windows equally), unlike Iray. This means that users using all computer types running the most common GPU types can benefit from Daz Studio which will ultimately realize more income to Daz because the userbase is larger. Including an open source renderer is also far less costly to whatever Daz is paying NVIDIA and 3Delight to continue to pull those renderers forward. Pushing Daz Studio towards a renderer that is suboptimal on all computers but those running NVIDIA hardware means limiting who can buy Daz's products in the store. Penalizing Mac users with 3 day Iray renders just doesn't go over well. I'm quite sure some would-be Mac users of DS have walked away from DS for this exact reason.
What would have been a smarter approach is introduce a standardized renderer plugin interface for Daz Studio. This way, software renderer developers can conform their software (an easy task) into the plugin format for Daz Studio. This would allow users to add the renderer of their choice (commercial or open source) to Daz Studio rather than being limited to those chosen by Daz. Having an open plugin interface is the best of all worlds. If I want to use Yafaray or Lux, I can. If I want to use the included renderers, I can. However, if I want to go commercial, I could use VRay, Mental Ray or any other commercial renderer that conforms to Daz's renderer plugin interface.
Of course, for those who happen to have or want to invest in an NVIDIA rig, I'm quite sure Iray would work great. It's just that for Daz's goal, I'd prefer Daz remain in business by bringing in the widest audience possible. So, tying Daz Studio to a renderer that limits who gets the best use out of it seems at odds with Daz's goal of selling 3D products for use in Daz Studio.
From that perspective, I never understood the Iray choice. Is Iray better than 3Delight? That's debatable. With careful lighting in 3Delight, you can get realistic results equivalent to Iray. Unfortunately, Iray is completely suboptimal for rendering realistic human skin surfaces, a major reason why people invest their time into Daz Studio. When combined with the above problems, Iray was really not the best choice to include in Daz Studio.
Comments
Wow. Great read. I never thought about what would happen when DAZ 5.6 comes along and IRAY is dropped down to third, if even still included- and what happens to all my purchases that depend on IRAY. Ouch. Might be time to avoid IRAY products the same way I'm leary of anything made for certain named figures.
I stick to anything genesis X. No more '"...for david 3" and "Why won't this work '' google searches.
My intent was not to discourage you from buying products from Daz's store simply because Daz could add a new renderer. Instead, I suggest you make sure the products you intend to buy today include presets for renderer target you intend to use today. It's preferable if they include presets for both 3Delight and Iray. If you have a rig that works well with Iray, go ahead and use and buy products that support that renderer. You can always adapt surfaces to work with any new renderer they might include in the future.
I wouldn't worry about Daz adding a new renderer, though. With Daz's new Download Manager, it's easier than ever to get product updates. Even if Daz does add a new renderer, the 3D artists can push out product updates quickly. So, you shouldn't feel like you have to stop buying products that include support for a specific renderer. Though, there may be some products which are exclusive to a specific renderer (i.e., effects engines, specific cameras, atmospheres, lights). Allowing a plugin interface for developers to drop in a new renderer would be a great boon to Daz Studio and its userbase. Even if a specific 3D product doesn't support a new renderer out of the box, product updates could solve that issue within a few days.
Though, there are just some older products that are likely to not get product updates to new renderers (i.e., V4/M4 and older). Once figures get sufficiently old, they really aren't supported with new features and it's left up to the buyer to adapt them themselves. Anything purchased in the last 1-2 years is likely to be supported with product updates. You just have to be using Daz's Download Manager.
I'll have to disagree without about this as well. First Iray is the official renderer of DAZ Studio now, so it's going to be here for a while. Your complaints about Mac Compatibility will need to be taken up Apple. I wouldn't try to do gpu rendering on those thin compact machines without proper cooling. Also since Iray is in several products including the Allegorithmic Substance designer and paint, it can create the MDL that should be able to be used cross-program, including DAZ studio, the ones you mentioned don't.
The best thing about the partnership is that we have Nvidia's ear on the products especially skin since that's a weak point of all the GPU Renders as most are used for Architecture, not people. This is new ground and there's a large group of people that can share tips on how to get skin looking better and use the product.
That said, you don't have to switch to Iray and you can export the content in any renderer you wish. But Iray is the official renderer in DAZ Studio.
No, this issue is clearly to be taken up here with Daz because this is a Daz Studio software problem. This is not an Apple problem. Apple's hardware works just fine with its choice of ATI cards. Because Daz Studio supports a MacOS X version, this implies full equivalent support across all platforms for which Daz Studio is built and released.
If Daz is not going to produce equivalent versions across Mac and Windows platforms, then one of two things needs to happen: 1) either get rid of the Mac OS X version or 2) use a renderer that is fully supported across all of the operating systems to which the software is designed. If the platform cannot be fully supported properly, then the software should not be offered on that platform.
Building Daz Studio around a rendering system that effectively requires hardware that is not available on an officially supported platform (i.e., Mac OS X) is a problem Daz needs to solve, not Apple.
Moved to Daz Studio Discussions.
Iray Server is cheaper than 3Delight stand-alone, as far as I know, can (on Windows) take advantage of relatively cheap hardware (I have a 750Ti, cost about 120GBP), and does work on CPUs. You are right on Mac support, of course, though therea re options (including a cheap PC for rendering) and it does have other drawbacks when used with content optimised for 3Delight.
The SDK already has the needed classes for adding a new render engine - that's how we have not only Iray and 3delight, but two routes to LuxRender and an Octane plug-in.
Hi Richard,
This should have stayed in product suggestions as the plugin interface wasn't the only suggestion in the my request. There was also the suggestion of having Daz add an alternative open source renderer directly to Daz Studio for those of us on Apple products to solve the Iray NVIDIA problem, which isn't likely to be solved by Apple any time soon. I would appreciate if you could move it back.
Thank you.
You can use Reality or Luxus to access LuxRender.
As for pricing, 3Delight Studio Pro is free up to 8 cores. If you need 8 more cores, that's $600. Now, let's compare that to $300 per GPU for NVIDIA's Iray (and you still have to buy the proper GPU in addition to your computer cost). I'd say 3Delight is quite a bit cheaper as there is no cost up to 8 cores and special costly GPUs aren't even required. Still, comparing just software costs between the two, it's same cost if you want 2 licensed GPUs. As to which renders faster, that's a matter of how fast your GPU is vs how fast your CPU is. However, I will say that 3Delight is one of the fastest renderers I've ever used and is far faster than any unbiased renderer I've ever used. Basically, since there is no free version of Iray standalone, 3Delight is, in fact, far less costly.
Suggesting that we run out an buy a 'cheap' Windows system to 'solve' the problem is not an appropriate solution. We already have functional working computers (that we spent a lot on) in our Macs. Why should we be required to run out and buy a new Windows computer just because Daz makes a stupid decision?
If you're really serious about that request, then I can see why Mac users would drop Daz Studio without a second thought. Heck, if that's what Daz really thinks, then I'm banging my head against a brick wall here. I should spend my money to go buy some real software that fully supports my platform of choice rather than using something that's half-baked.
a cheap PC for rendering is not a Daz suggestion, nor was it intended as a definitive suggestion from me - it is however something soem users have done. If you are thinking about network costs then presumably you at least would be prepared to consider a multi-machine solution.
Native included support... Now, let's understand what that means. It means built into Daz Studio as in a drop down from the renderer menu. It means I can set settings for the surfaces directly in the surfaces area right onto object surfaces. It means I can use and access primitives directly from Daz Studio without the need for kludgy add-on interfaces or special additions. It means I can preview Lux right in the viewport. Reality and Luxus are not native solutions, they are addons and, unfortunately too, they cost money in the store.
On top of that, not one 3D artist creates or releases their products with direct support for Lux surfaces. That's what native support also includes. Does Luxus or Reality provide that? Not really.
There are already Plugins to various render engines to Studio that you can use in addition to the default engines. Reality is one, using LuxRender.
Also, if you want to know what DAZ (rather than the Forumites here) think, it is highly recommended that you ask them directly, like through Customer Support. We here just voice our personal opinionions, and neither can, nor do we speak for DAZ3D.
just saying.
MCasual has a script that lets you export a Studio scene to Blender for rendering in the open source renderer, Cycles. Some folks have had success exporting figures to Blender with the rigging intact. I'm slowly moving all my work to Blender since open source is just plain better.
If I'm considering network rendering solutions or indeed spending any money at all, I will leave all of my options open. That includes the possibility of moving away from Daz entirely and purchasing equipment and software that provides me with a full working solution going forward. I don't have to spend my money in the Daz store. I have chosen to spend money in Daz's direction up to this point because it's convenient and the DS software works (or at least used to). With fast rendering off of the table and the need for monetary investment in new hardware to get back to a reasonable performance, then I have to consider all alternatives.
While I know you have suggested a 'cheap PC', nothing with PC's is cheap. Building a reasonably comparable NVIDIA based system to what I own is at least $1500-$2000 and that's not inexpensive in pretty much anyone's book. If I'm expected to spend at least $1500-$2k for a new computer, then I need to determine if it's really worth all of that or what other alternatives are out there.
I already have a number of systems here that are not NVIDIA equipped that were relatively expensive purchases, systems which I purchased long before Iray was glimmer in Daz's eye. However, dropping another $1500+ simply to support a more-or-less free package doesn't really seem the most realistic of choices. Considering it all, I might as well go find software that will continue to support my needs into the future including the possibility of finding software that supports my existing computers. Since I don't know what Daz has in store next for DS, it's probably safer not to bet on that. Instead, it's probably wise to move to non-Daz 3D packages. However, as I said, I'm currrently leaving my options open.
Actually this is an apple problem for not providing a variety of cards for users to use. OpenCL isn't mature enough now for GPU rendering which is why most solutions use Nvidia cards. The blender implementation isn't complete, octane dropped their plans of it, and luxrender's implemetation isn't as good as using CUDA. This isn't a solution needs to solve as Iray works in OSX. If you have mac that can use an Nvidia card or an expansion box to house a card, then you can render via GPU. Also on price, for a new compariable mac aren't you paying over $3K? I use macs as well and my PC box came out way cheaper than getting a mac, and that mac couldn't do any of the rendering I needed even before Iray came out.
$1500-2000 IS pretty cheap, for a credible computer. I was paying that for a decent PC back in the 90s, and it did faaaaaaaaaaaaaaar less.
I've tried LuxRender. I don't know how people keep gushing about it, my experiences were that it runs a VERY long time to get anything like Iray produces in 1/20th of the time. Maybe it's a machine thing, maybe I messed something up, but... yeah, not a fan.
So let's go by the bullet points:
1) NVIDIA is expensive. Compared to cards of equal power? Not really.
2 & 4) Iray in CPU mode runs decently. GPU runs faster not because it's optimized better for it so much as because GPU is much more powerful for this sort of thing. If you compare a highly realistic 3DL render to Iray render in CPU mode, the render times are roughly the same. It just takes a lot of processing to do good light calculations.
3) That's unfortunate, sure. But there's still CPU mode.
5) I don't know much about Iray networking and I suspect it isn't an issue for most of the customers. So if that's your thing, yeah, that's unfortunate, and DS might not be for you. A product will rarely work for every type of customer.
6) I only have experience with 3DL, Iray, and LuxRender (and whatever you call Carrara's and Bryce's engine). Iray hasn't been noticeably more finicky than anything else I've used.
7) Again, see 6, but you can make really nice skin with Iray. Where I've most often noticed problems is either hair or eyes, those are the weak points in breaking the illusion of reality (assuming that's your goal)
8) Conflict of interest claim is just... silly.
Again, this is not Apple's problem. Apple chose to use AMD/ATI and Intel graphics cards. Graphics boards that are commonly found in many PCs, not just Macs. Intel graphics being the 3rd most popular graphics card type on Steam. Of course, keep in mind that that's a gaming site. Apple chose cards that work quite well for the needs of Mac users and for graphics use in general, but are not necessarily best for gaming (though they do work well enough even for some games).
Instead, it was Daz's choice to lock their software to NVIDIA cards leaving no choice for any other GPU based systems. I pose your argument in reverse, Daz should support renderers that utilize multiple GPU types rather than locking DS into a single type and a single vendor. That means, they should have set the defacto renderer to be the one that works on all GPUs and across the widest platforms. Then, offer the Iray to users who have specific NVIDIA rigs and who are willing to invest in that platform.
As for rendering, 3Delight works perfectly fine and is quite fast on my Mac. In fact, it rendered faster on my quad Mac than on my quad core PC that was only 1 or so years older than the Mac. A PC, I might add, that is not capable of being upgraded either.
There is only one Mac capable of officially accepting NVIDIA cards and that's the Mac Pro (starting at $3k). Since you can't choose your graphic card in a Mac Pro and in order to use Iray, you have to eat the cost of the two included AMD cards by immediately replacing them with NVIDIA cards hiking the price probably by at least another $500-800 for a single NVIDIA card... not exactly worth it.
All other Mac systems (i.e., Mac Mini, Mac all-in-one, MacBook any version) do not ship with or have the option for NVIDIA at this point. Daz's choice to move to Iray was a not smart sales choice for their store. Daz survives because of the income from the 3D content they sell in the Daz store. Cutting off nearly all Mac users and many Windows users (after all, you can't change graphics cards in most Windows notebooks or tablets) was not the wisest of choices. However, adding an alternative general purpose unbiased renderer (open source or not) which works on all platforms opens doors to a whole lot more content choices and packages in the store and a wider array of users, which would include non-NVIDIA notebooks. This means, more people shopping for and buying 3D content in Daz's store rather than only those who have NVIDIA rigs.
Again, this is a problem for Daz to solve, not Apple.
Sorry, it's not. Hardly *any* GPU renderers work with OpenCL. That's really the point. Octane, Blender, Superfly, etc really need a CUDA-based card for best performance. If you want to GPU render, then you are getting a Nvidia card regardless of the software solution. So it's isn't a DAZ problem, and you can buy an expansion bay for the Mac and install a nvidia card to gpu render if you so choose, so it's not like you are stuck. You can look at the BizonBOX 3 for instance to connect a card to your mac.
That's the point, you don't need GPU rendering. It helps, but it's not necessary. Well equipped multicore CPU systems are well capable of rendering using the CPU itself. Are the GPUs faster? Depends on the GPU and what you're rendering.
However, Lux works with both ATI and NVIDIA GPU types. So, to say that GPU rendering can't be done on different GPU types is inaccurate. If an open source package can figure out a way to render on GPUs other than NVIDIA, so can the rest. It's likely that they don't want to render on other GPUs, not that it cannot be done. Certainly, NVIDIA has absolutely no incentive to make Iray work on any GPU other than their own.
As for expansion bays... as I said, this isn't officially supported by Apple. Doing this setup requires hacking the OS (and probably hacking the external chassis). While it may be an alternative, it won't necessarily yield the best results. After all PCIE is a far far faster bus than what is on Thunderbolt 2, let alone Thunderbolt 1. I don't actually relish the thought of paying $200-400 for a chassis and $500-800 for a GPU only to find that it doesn't work with Sierra because Apple prevented it from working. That's a bit too costly of an experiment that may not actually work. Apple has a funny way of stomping on hacks when they don't want them out there.
I'm not getting the the point of the thread if you don't think you need GPU rendering. I think a lot of this thread is really subjective. But GPUs certainly run faster than a multicore system. If you're talking about networking a bunch of PCs together then your costs goes up to do the same thing as a GPU.
Also again, the performance with Lux and OpenCL is not great when compared to CUDA. That is a fact. The OpenCL spec is not mature and that's why a lot of renderers use Nvidia. It doesn't matter if something works on both cards when the performance isn't up to snuff. It won't be used, and it hasn't been used. It is what it is. Once again, ATI rendering using OpenCL is not as good as Nividia cards. That' is why it isn't used.
And as far as mac goes, unless you have an older mac with PCIe cards an expansion box is your only option. Again, that's on apple to resolve with more expandable machines.
My only beef with all of this is - with the actual products themselves.
The adspeak.
Where is says things like Optimized for IRAY when it should read "Only renders in..."
That's true for a bunch of skins and materials. I find that misleading.
I don't think anyone can argue against pitching to the widest base possible, but a powerful rendering engine that takes advantage of a particular card is a nice addition.
It's right to say it shouldn't be the only game in town. And, like I said, so many NEW products are only for IRAY but a lot of my characters and props are older and I intend to mix and match.
One new IRAY addition to my scene and my rendering engine gets locked in.
So really, how do I render with the speed of 3Delight, but get to use these new awesome skins and materials? Ouch.
avxp: http://www.daz3d.com/forums/discussion/139326/irayto3delight-conversion-script
And, again, if you ever try to push 3dl toward the realism of Iray, you will find CPU render times end up rather similar.
I've bounced back and forth between them, and my conclusion is that my time is generally far better spent seeking ways to shorten Iray render times on GPU than to get 3dl at high realism.
If I didn't have a nvidia graphics card and wasn't planning on getting one, my metric might change, but it'd still be a toss up.
Thank you. Will mess with this on my next session day.
I helped test it, it works pretty well for standard shader stuff. Weird stuff, like TerraDome3 layered shaders, need to be converted to Iray Uber first. Also, obviously, you'll hit problems if the surface requires channels with different tiling levels.
But it takes care of probably 99% of the cases you are likely to encounter.
You can do great renders in 3Delight, as Will said. I found great textures/shaders and lighting are most important,which is also the case for Iray. There are great skin renders in Iray. Pick your products carefully. And you can get the render times down if you aren't anal about sampling, noise, etc. There are people stressing over both and they are imagining things, or they just don't have things set up correctly. There are post noise solutions you can get if needed, too, but seeing how most are doing stills, it doesn't matter that much. mcorr in this thread has figured out his Mac issues: http://www.daz3d.com/forums/discussion/142976/iray-rendering-on-a-mac-do-i-need-a-pc
Don't you mean 3Delight and IRAY are the official renderers? Or have I missed something.
... And you base you claim that it is here for a while on what? Again are you privy to inside information (And this would need to be from NVidia, and personally define "a while".)?
Now I'm not expecting IRAY to vanish, at leat not in the immediate future, but that does not mean the OP comments are invalid; they are certainly well presented.
Incidentally, I have two Nvidia cards; I also am in agreement with the OP.
I always think its a bit rude to tell someone to buy a certain OS when expecting to use a software advertised as working on both.
I myself as a Win7 user resent even told you should be using Win10 if 7 is listed so understand Mac users bristling at being told to by a Windows box, it is neither helpful or warranted so that line of arguement is invalid when discussing the suitability of iray in D|S for Mac users.
They need a Nvidia card and possibly a whole new OS / machine to use it?
I totally get how that would not fly well and another reason 3Delight should not be neglected as the other official D|S render engine.
Fortunately some have created iray to 3Delight shader conversion scripts, IMO this should be added to the starter essentials.
On the Mac issue. Users all around the world are complaining about this. Apple doesn't give a damn about 3D artists. It's not just the fact that they haven't got enough hardware options (any mid range PC today is faster than a Mac Pro that costs 3x as much unless you have very specific use cases that benefit from those Xeons), it also manifests in other areas like in a lack of bringing OpenGL support to modern standards. Gaming continues to be dead on Macs because of this. Not that long ago Oculus completely dropped support for Macs because their computers are just too slow. Apple is happy to sell you smartphones and tablets, they don't really care about the desktop anymore.
GPU rendering is still relatively new, and NVIDIA has been at the forefront of this. Thanks to that we now have an option to render much faster with a consumer cards that would normally be good for games only. I see nothing wrong with that, at least this option now exists where it didn't some years ago and we were stuck with slow CPU rendering. The latter is still available to those unfortunate ones that cannot for whatever reason get an NVIDIA GPU. Iray is perhaps not the best renderer ever but let's not forget it's free in Daz Studio. Redshift, currently the fastest renderer out there, costs quite a bit and still reqiures NVIDIA GPUs.
This has been the case for the while if you haven't noticed as this was stated by DAZ. Iray is the official default renderer, the license for 3delight was extended. It was in the original 4.8 release and when you loaded DAZ Studio 4.8 and later, Iray is the default not 3delight. This shouldn't have been a surprise if you been following the release. Again iray and other renderers using Nvidia isn't a big conspiracy; opencl isn't ready for primetime to use as CUDA.