Tim Sweeney
👤 PersonAppearances Over Time
Podcast Appearances
How many instructions do you need to run to get a pixel on screen? And so there's a constant challenge to optimize that down. And, you know, there was also a competition among all of the graphics programmers who'd often send emails, you know, like bragging to each other about what new technique they've discovered, you know, to try to get the cost down.
How many instructions do you need to run to get a pixel on screen? And so there's a constant challenge to optimize that down. And, you know, there was also a competition among all of the graphics programmers who'd often send emails, you know, like bragging to each other about what new technique they've discovered, you know, to try to get the cost down.
And Abrash's original articles took like 12 CPU cycles to render a pixel. And, Everybody else had figured out how to get it down to six or sometimes even four cycles. And that involved lots of different trade-offs of caching and memory hierarchy and so on.
And Abrash's original articles took like 12 CPU cycles to render a pixel. And, Everybody else had figured out how to get it down to six or sometimes even four cycles. And that involved lots of different trade-offs of caching and memory hierarchy and so on.
And Abrash's original articles took like 12 CPU cycles to render a pixel. And, Everybody else had figured out how to get it down to six or sometimes even four cycles. And that involved lots of different trade-offs of caching and memory hierarchy and so on.
It was just like a magical time where a human could actually understand exactly what the CPU was doing under the hood and could write code that exactly targeted that. And that's largely lost now. When we talk about optimization software now, it's largely about heuristics. And statistically, this memory access is likely to hit the cache. And this algorithm is faster than that algorithm.
It was just like a magical time where a human could actually understand exactly what the CPU was doing under the hood and could write code that exactly targeted that. And that's largely lost now. When we talk about optimization software now, it's largely about heuristics. And statistically, this memory access is likely to hit the cache. And this algorithm is faster than that algorithm.
It was just like a magical time where a human could actually understand exactly what the CPU was doing under the hood and could write code that exactly targeted that. And that's largely lost now. When we talk about optimization software now, it's largely about heuristics. And statistically, this memory access is likely to hit the cache. And this algorithm is faster than that algorithm.
Because CPUs now have such advanced out-of-order execution, you really can't micromanage what's happening on an instruction-by-instruction basis. You can only manage the aggregate performance of code. And so there's kind of this lost art. Some people miss it, some people don't, in which the programmer had absolute control over the machine and could work miracles in special cases if he tried.
Because CPUs now have such advanced out-of-order execution, you really can't micromanage what's happening on an instruction-by-instruction basis. You can only manage the aggregate performance of code. And so there's kind of this lost art. Some people miss it, some people don't, in which the programmer had absolute control over the machine and could work miracles in special cases if he tried.
Because CPUs now have such advanced out-of-order execution, you really can't micromanage what's happening on an instruction-by-instruction basis. You can only manage the aggregate performance of code. And so there's kind of this lost art. Some people miss it, some people don't, in which the programmer had absolute control over the machine and could work miracles in special cases if he tried.
Yeah, that's absolutely so. The optimization problems have just moved around. In a system like Nanite, the virtualized micropolygon geometry system that Brian Karras, a brilliant engineer with Epic built, was just one of those multi-year problems.
Yeah, that's absolutely so. The optimization problems have just moved around. In a system like Nanite, the virtualized micropolygon geometry system that Brian Karras, a brilliant engineer with Epic built, was just one of those multi-year problems.
Yeah, that's absolutely so. The optimization problems have just moved around. In a system like Nanite, the virtualized micropolygon geometry system that Brian Karras, a brilliant engineer with Epic built, was just one of those multi-year problems.
optimization efforts that required him understanding everything from the highest levels to the lowest levels of the hardware to figure out how to make this breakthrough technique work in a way that was actually maximally performant on GPUs.
optimization efforts that required him understanding everything from the highest levels to the lowest levels of the hardware to figure out how to make this breakthrough technique work in a way that was actually maximally performant on GPUs.
optimization efforts that required him understanding everything from the highest levels to the lowest levels of the hardware to figure out how to make this breakthrough technique work in a way that was actually maximally performant on GPUs.
Yeah, you know, with the advanced art tools we have today, it's really easy to create a scene with billions of polygons. The hard part is how to render it efficiently because you can't render billions of polygons in a frame. Basically, you want to render an image that's indistinguishable from the full detailed geometry if you rendered it at ridiculous cost.
Yeah, you know, with the advanced art tools we have today, it's really easy to create a scene with billions of polygons. The hard part is how to render it efficiently because you can't render billions of polygons in a frame. Basically, you want to render an image that's indistinguishable from the full detailed geometry if you rendered it at ridiculous cost.
Yeah, you know, with the advanced art tools we have today, it's really easy to create a scene with billions of polygons. The hard part is how to render it efficiently because you can't render billions of polygons in a frame. Basically, you want to render an image that's indistinguishable from the full detailed geometry if you rendered it at ridiculous cost.