Live data from Hacker News

The Nvidia Turing GPU Architecture Deep Dive: Prelude to GeForce RTX

anandtech.com

21–30 of 54 posts

Re: The Nvidia Turing GPU Architecture Deep Dive: Prelude to GeForce RTX

#21
post #12

The Turing architecture is also used in Quadro RTX cards, and those have a ridiculous amount of VRAM. Is there any professional/computational use for these RT cores beyond raytracing? One case that comes to mind is perhaps raytracing acoustics, and although interesting it's technically still raytracing. As far as gaming is concerned, personally I'd love if the RT cores could contribute—however inefficiently—to render…

> It's annoying that 50% of the die is allocated to hardware that requires feature-specific implementations.

That's the future. While we may be able to cram more transistors onto "7nm" chips, only a tiny fraction of the chip area can be powered on because leakage currents are no longer decreasing with transistor size [1]. Hence Apple's Neural Engine and Nvidia's RTX. You have to waste the extra transistor count on something specialized.

[1] https://semiengineering.com/is-dark-silicon-wasted-silicon/

Re: The Nvidia Turing GPU Architecture Deep Dive: Prelude to GeForce RTX

#22
post #11
post #6

Earlier quoted context omitted.

10 GigaRays/sec = 80 rays per pixel at 1080p60fps. That should be enough to do full scene real-time raytracing with rays per pixel to spare (usually 10 rays per path are more than enough).

I was under the impression from the initial coverage that they were actually getting something like 1 to 2 rays per pixel per frame. Perhaps even less. From there they were using some sort of smoothing and/or temporal anti-aliasing to gather the data from multiple frames to get decent quality out of it. Or are you proposing how many raise they would NEED to be able to do real time full raytracing? By the time we have…

Why does ray tracing require more than 1 ray per pixel anyway?

Re: The Nvidia Turing GPU Architecture Deep Dive: Prelude to GeForce RTX

#23
post #20
post #17

Earlier quoted context omitted.

It is more like a texture unit than a shader core. Tree traversal is a pointer chasing problem, where the CPU/shader core executes a few instructions, then starts a memory load and then sits idle for tens or hundreds of clock cycles waiting for memory. Cache prefetching can help but is usually not a good fit for tree traversal where there is very little computation per node. It is all about memory latency hiding and…

But GPU cores are already king at latency hiding. They can run hundreds of threads doing pointer chasing, switching between them round-robin as the memory reads complete.

The switching isn't free. Waking up a thread to do just a few computation cycles (a few ray-aabb intersections) and then going back to sleep while waiting for the next node to be fetched from the memory is super inefficient.

If there was significant computation needed per node, this wouldn't be an issue.

Re: The Nvidia Turing GPU Architecture Deep Dive: Prelude to GeForce RTX

#24
post #23
post #20

Earlier quoted context omitted.

But GPU cores are already king at latency hiding. They can run hundreds of threads doing pointer chasing, switching between them round-robin as the memory reads complete.

The switching isn't free. Waking up a thread to do just a few computation cycles (a few ray-aabb intersections) and then going back to sleep while waiting for the next node to be fetched from the memory is super inefficient. If there was significant computation needed per node, this wouldn't be an issue.

> The switching isn't free.

It absolutely is, on current GPUs. Think of it like a larger-scale version of SMT (Intel's hyperthreading). GPUs are able to do this because they execute instructions in-order and do not need to track thousands of instructions per thread.

Re: The Nvidia Turing GPU Architecture Deep Dive: Prelude to GeForce RTX

#25
post #13

The thing that strikes me with the RTX announcement is a general point about how important identifying useful intermediate steps are to bringing about new paradigms . Unless a technological breakthrough is just around the corner, or you have the resources to push it forward (Space Race / Manhattan Project), it’s better to spend your energy identifying useful intermediate steps that you can offer to the market to fund…

Toyota is just as far ahead as Tesla. Electric cars isn't better than hydrogen. Just different. And Toyota can sell 1000 cars and have less problems than one Tesla.

Not to mention the Eco impact of building a Tesla but that's off topic for this.

Re: The Nvidia Turing GPU Architecture Deep Dive: Prelude to GeForce RTX

#26
post #22
post #11

Earlier quoted context omitted.

I was under the impression from the initial coverage that they were actually getting something like 1 to 2 rays per pixel per frame. Perhaps even less. From there they were using some sort of smoothing and/or temporal anti-aliasing to gather the data from multiple frames to get decent quality out of it. Or are you proposing how many raise they would NEED to be able to do real time full raytracing? By the time we have…

Why does ray tracing require more than 1 ray per pixel anyway?

One ray represents many photons, and those photons scatter off in many different directions when they hit most surfaces. To get a reasonable picture of where they went, you need a lot of samples.

A single raycast also only gets you one step of the light's journey. That means, for example, that following light as it bounces from a light source, to a surface, to another surface to your eye requires at least 3 rays even for perfectly mirrored surfaces.

Re: The Nvidia Turing GPU Architecture Deep Dive: Prelude to GeForce RTX

#27
post #22
post #11

Earlier quoted context omitted.

I was under the impression from the initial coverage that they were actually getting something like 1 to 2 rays per pixel per frame. Perhaps even less. From there they were using some sort of smoothing and/or temporal anti-aliasing to gather the data from multiple frames to get decent quality out of it. Or are you proposing how many raise they would NEED to be able to do real time full raytracing? By the time we have…

Why does ray tracing require more than 1 ray per pixel anyway?

It depends on what you wan't to use ray tracing for.

If you want to calculate global illumination with path tracing (which is a form of ray tracing) then you need multiple samples per pixel to get a noiseless result.

Most of the time at least 500-1000 samples.

Re: The Nvidia Turing GPU Architecture Deep Dive: Prelude to GeForce RTX

#28
post #24
post #23

Earlier quoted context omitted.

The switching isn't free. Waking up a thread to do just a few computation cycles (a few ray-aabb intersections) and then going back to sleep while waiting for the next node to be fetched from the memory is super inefficient. If there was significant computation needed per node, this wouldn't be an issue.

> The switching isn't free. It absolutely is, on current GPUs. Think of it like a larger-scale version of SMT (Intel's hyperthreading). GPUs are able to do this because they execute instructions in-order and do not need to track thousands of instructions per thread.

IIRC it costs you a cycle to switch warps on Maxwell, but I'm not completely sure.

Re: The Nvidia Turing GPU Architecture Deep Dive: Prelude to GeForce RTX

#29
post #22
post #11

Earlier quoted context omitted.

I was under the impression from the initial coverage that they were actually getting something like 1 to 2 rays per pixel per frame. Perhaps even less. From there they were using some sort of smoothing and/or temporal anti-aliasing to gather the data from multiple frames to get decent quality out of it. Or are you proposing how many raise they would NEED to be able to do real time full raytracing? By the time we have…

Why does ray tracing require more than 1 ray per pixel anyway?

For the secondary rays for reflection, refraction and shadows.

At one ray per pixel, you can only do the primary ray and find which triangle it hits. The exact same thing can be done with rasterization much faster and with equal results.

Re: The Nvidia Turing GPU Architecture Deep Dive: Prelude to GeForce RTX

#30
post #24
post #23

Earlier quoted context omitted.

The switching isn't free. Waking up a thread to do just a few computation cycles (a few ray-aabb intersections) and then going back to sleep while waiting for the next node to be fetched from the memory is super inefficient. If there was significant computation needed per node, this wouldn't be an issue.

> The switching isn't free. It absolutely is, on current GPUs. Think of it like a larger-scale version of SMT (Intel's hyperthreading). GPUs are able to do this because they execute instructions in-order and do not need to track thousands of instructions per thread.

It's more complex than that. Switching warps thrashes your caches. There is definitely a cost associated with it.
Post reply on HN