Originally posted by log0
View Post
Announcement
Collapse
No announcement yet.
The Ideal (Hypothetical) Gaming Processor
Collapse
X
-
-
uh... what? I never mentioned anything about capitalism or buying products. I'm just pointing out that a lot of people say "real-time raytracing" when all they really mean is high-performance/interactive raytracing. Often the people who say "real-time raytracing" don't even know what real-time computing actually means.
You could write a raytracer which worked hard to try and guarantee a particular frame rate, and stop casting any more rays when the time budget for the current frame is elapsed, but that still isn't hard real-time computing because the correctness of the system does not rely on that frame rate being met. If the frame rate is not met, all that happens is the performance drops for a moment. Such a system is at best soft real-time, using the definitions from the Wikipedia page under "Criteria for real-time computing".
"Interactive raytracing" just means raytracing at a frame rate high enough to interact with the scene. It's not very realistic to interact with a scene in a system which takes 10 minutes to render each frame, is it? "Interactive" doesn't imply any hard constraints, the speed needed to consider something "interactive" is subjective.
Leave a comment:
-
Originally posted by Qaridariumnow you pointing out the "interactive" part.. but you never get it a iterative ray-tracing engine is not a "Real-time-ray-tracing-engine"
Real time really means you only chance the murmuring rate. ALL the time on ALL costs!
"Real-time" is NOT just another word for "high performance".
Leave a comment:
-
Originally posted by Qaridariumo man ray tracing dosn't work in FRAMES!
ray tracing work in ray per minutes!
a Real time Ray tracing engine dosn'T have FRAMES per SECOND!
because of this all of your writing is wrong!
Everything in the computational world works in a discrete metric, you need to update the scene sometime, but you can't do it in a infinitely small gradient of time. Even real world works like this, if not, you would be leading yourself into to a paradox.
You don't have much idea of what you are talking, right?
Leave a comment:
-
Originally posted by Pyre Vulpimorph View PostHi everyone. I've been wondering what the "best" types of gaming CPUs would be, and I would like to know what it takes to make an idealized gaming-oriented processor.
Suppose I had a fabless semiconductor company, and I was contracted to design the CPU for a new game console. The GPU was already determined to be something relatively powerful, like a die-shrunk Radeon HD 6870. The goal is to make the chip as small and cheap as possible, but will never bottleneck the graphics processor.
What sort of difference does a processor's ISA make? Suppose I had licenses for MIPS, ARM, SPARC, and other risc-based architectures. Is the ISA really that important, or just the micro-architectural "plumbing" underneath?
What types of instructions do modern video games make the most use of? Do games find integer performance most important, floating point performance, or both? If floating-point calculations can be offloaded to the GPU, can the CPU's floating-point units be excised to make the chip smaller and cheaper, or would that harm system performance? If FP power is still important, would adding complex 256- or even 512-bit units be beneficial to total system performance, or just a waste of space?
How important is cache size? Intel's SNB i5, i7, and SNB-E i7 processors have 1.5, 2.0, and 2.5 MiB of L3 cache per core, but looking at benchmarks from Anandtech and other places, there doesn't seem to be too much difference. At least, not enough difference to justify the added space and expense. How much cache per core is "enough"?
As for the core count itself, would it be best to make a quad-core chip and call it a day? I know most game engines today simply do not scale past four cores, and simultaneous multithreading is pretty much useless for games. But, since consoles are expected to last around 5 years, would making a 6- or 8-core CPU prove beneficial in the future, so long as the chip stayed within the client's budget?
I know this is just a lot of speculation, but I'm just curious what makes games tick.
And make sure to keep the production costs low and yields high. No experiments a la PS3.
Leave a comment:
-
Oh geez... I can't find any good screenshots demonstrating an adaptive sampling grid. I may have to resurrect my years-old raytracing code and make some.
When I said earlier that I wrote a raytracer, I should have said I wrote an *interactive* raytracer, specifically. It wasn't a very *good* interactive raytracer - it wasn't even multi-threaded, for example - but I was proud of it at the time, and I learned a lot in the process of writing it.
Leave a comment:
-
I do understand what your so called "murmuring" is. And this is exactly what I mean be image quality. This "murmuring" is a trick employed on current hardware to be able to reach interactive speeds. For most applications this loss of image quality is _not_ acceptable, however. Would you want to play a game which looks like the television screen in your example? Which means you need to use a consistent number of rays. All the time. Which means you are no longer able to maintain interactive speeds.
Leave a comment:
-
Originally posted by Qaridariumanswer me this question about your suggestion: "The rest of the pixel colours will be made up using interpolation." why?
For example, if you imagine a grid of 10x10 squares on your screen, and cast primary rays at every point where two grid lines meet, you can "guess" the colours of the rest of the pixels by blending the colours from the corners of the squares. You won't have a lot of detail in the resulting image, but it will at least cover the screen. This is just a naive example, there are better ways of deciding where to cast primary rays than a fixed-space grid.
Originally posted by Qaridariumand i think the 286 is to slow for the interpolation.
Leave a comment:
-
Originally posted by Qaridariumanswer me this question about your suggestion: "The rest of the pixel colours will be made up using interpolation." why?
no you don't need interpolation to get a real time raytracing complex scene on a 286
and i think the 286 is to slow for the interpolation.
You need to interpolate because you get one pixel per ray. If you have an image resolution of 1920 x 1200 then you need to shoot 2,304,000 (= 1920 x 1200) rays to get a colour value for each pixel (let's forget about reflection, refraction, etc. for the time being). If you reduce the number of rays to reach interactive speeds this means you no longer get a colour value for each pixel. Hence you need to calculate the remaining pixels by interpolating between those pixels you do have.
Also, your "I can ramp up the fps as much as I want" is only true if you're willing to completely sacrifice image quality. If you want any kind of consistent image quality then you need to use a consistent number of rays. Otherwise there's no point in using a raytracer in the first place.
Leave a comment:
Leave a comment: