Part of the Khronos Group
OpenGL.org

The Industry's Foundation for High Performance Graphics

from games to virtual reality, mobile phones to supercomputers

Page 1 of 12 12311 ... LastLast
Results 1 to 10 of 114

Thread: when will software renderers be viable?

  1. #1
    Junior Member Newbie
    Join Date
    Jan 2004
    Posts
    17

    when will software renderers be viable?

    How soon will general purpose CPUs be fast enough at doing 3d math, that we wont require graphics cards anymore? This will be great because we will be able to implement software renderers and have absoloute control over what we want to do - we wont be limited by the gfx card's capabilites or bad driver support for example.

    Im sorry this isnt specifically an OpenGL question, but it is an interesting one - dont flame me for being such a visionary

  2. #2
    Junior Member Regular Contributor
    Join Date
    Jun 2003
    Posts
    181

    Re: when will software renderers be viable?

    I'd say before 1996 or so. At that point, the release of the upcomming 3Dfx Voodoo will obliterate any form of CPU-based rendering in terms of speed (at comparable technology levels).

    From then on, GPUs are poised to increase in rendering speed faster than CPUs, meaning they will likely never catch up(*). GPUs are also starting to become more programmable with time. Notice the inclusion of basic combiners in the upcomming TNT2, which will revolutionize graphics. This is only the first step: future products will increase programmability until eventually whole programming languages specifically geared towards graphics will need to be introduced.


    (*) At least until "Good Enough" is reached, but that's not likely to happen any time soon.

    [This message has been edited by al_bob (edited 02-04-2004).]

  3. #3
    Junior Member Regular Contributor
    Join Date
    Nov 2003
    Location
    Michigan, USA
    Posts
    188

    Re: when will software renderers be viable?

    Not for the forseable future. I read an article very recently which said, GPUs are capable of calculating at over 300x the rate of the cpu in certain special cases. Add of course, the need for high speed memory w/ low latency(rare for the cpu). I simply do not see it occurring.

  4. #4
    Junior Member Newbie
    Join Date
    Dec 2003
    Posts
    9

    Re: when will software renderers be viable?

    Answer: never ... at least for comparable generations of hardware. Way back in the early 1990s, I had a similar discussion with coworkers. We did drivers for PC graphics hardware. Many thought that the Pentium - and certainly the Pentium II - when combined with the new PCI bus would eliminate the need for dedicated graphics chips.

    My reply was that graphics chip companies very lives depended on making their systems faster than a CPU drawing on a dib. We were mainly concerned with 2d rendering. With 3d graphics the GPU utterly blows away a general purpose CPU and will for as far as I can see. There are too many advantages to a dedicated 3d graphics subsystem: memory access, parallel processing, targeted caches, etc.

    If you want to be a "visionary", come up with a good, hardware friendly OpenRT (Open RayTracer) spec. Something that has most of the flexibility of a purely CPU implementation but can be accelerated with hardware.

    Originally posted by imr1984:
    How soon will general purpose CPUs be fast enough at doing 3d math, that we wont require graphics cards anymore? This will be great because we will be able to implement software renderers and have absoloute control over what we want to do - we wont be limited by the gfx card's capabilites or bad driver support for example.

    Im sorry this isnt specifically an OpenGL question, but it is an interesting one - dont flame me for being such a visionary

  5. #5
    Junior Member Regular Contributor
    Join Date
    Jan 2004
    Location
    Los Angeles, CA, USA
    Posts
    216

    Re: when will software renderers be viable?

    I'll just add as evidence this page: http://www.gpgpu.org/ which is all about General-Purpose computation on GPUs. So yea, the for the time being, the trend is moving computation onto the GPU, not off of it. Basically, the GPU allows for paralellism that CPUs don't. For example, you may have a SIMD processor on your desktop, but it's not your CPU.

  6. #6
    Senior Member OpenGL Pro
    Join Date
    Feb 2002
    Location
    Bonn, Germany
    Posts
    1,652

    Re: when will software renderers be viable?

    There's 35 Gflops/s* in a Radeon 9700Pro (at its 315MHz default clock speed), and that's only counting shaders. There's yet more processing power in the rasterizer, the various interpolators, blend units etc.

    I don't see general purpose processors anywhere near that. What's the peak throughput of a P4 at 3.2GHz? 6.4 Gflops/s?

    *vec4 counts as four operands, obviously => 8*4*3 per clock for the fragment shader (MAD counts as two, plus a MUL in the mini-ALU); 4*4 for the vertex shader

  7. #7
    Junior Member Newbie
    Join Date
    Dec 2003
    Posts
    4

    Re: when will software renderers be viable?

    gpus are bether only in rastericers. it doesn't mather how fast gpus are, they will never match raytracer on cpu in eighter quality or speed. raytracers are the future. cpus also have much bether precicion, which is very serious mather in raytracers

  8. #8
    Junior Member Regular Contributor
    Join Date
    Jan 2004
    Location
    Los Angeles, CA, USA
    Posts
    216

    Re: when will software renderers be viable?

    daveperman, GPUs can use full 32-bit floats, can they not? Granted mapping the raytracing problem into the graphics card domain isn't trivial, but there is an enormous ammount of paralellism available on a GPU that you don't have on the CPU. Just for starters, it would be easy to inintialize the rays for a raytracer on the GPU. But if you think raytracing is needed for good graphics, talk to Pixar. I don't believe RenderMan is a raytracer.

  9. #9
    Advanced Member Frequent Contributor
    Join Date
    Apr 2000
    Posts
    748

    Re: when will software renderers be viable?

    I'd also say never, at least as long as we'll have a separate dedicated and highly specialized graphics processor. You can always say "today" that in 5 years, CPUs will be fast enough to do what we can do now on our graphics card. But in the mean time, the standard for graphics will have evolved too. It's possible on today's CPUs to achieve Vaudoo2/TNT's level of graphics quality/performance, but who'd like to play a game with Quake 1 / 2's look when Far Cry, Half Life 2 and Doom 3 are around the corner ?

    Y.

  10. #10
    Super Moderator OpenGL Guru dorbie's Avatar
    Join Date
    Jul 2000
    Location
    Bay Area, CA, USA
    Posts
    4,388

    Re: when will software renderers be viable?

    This is a pointless way of looking at the problem, the question never changes and has been asked for years. In some ways software has been viable for years (maybe even more viable in the past when considered relatively), in other ways software never will be viable.

    The first 3D engines on PCs were software only and were viable for Doom & Quake style graphics.

    Dedicated hardware will always outperform general purpose hardware, so software only will always be at a disadvantage compared to the GPU. For some this means it isn't viable because what they mean by viable is deterimined by currently available best hardware capabilities. GPUs outperform CPUs even with SIMD instructions in the CPU and very programmable GPUs, that's not going to change because the hardware is designed with different priorities.

    Software today can outperform some of the hardware of yesterday, does that mean yesterdays hardware wasn't viable? No it means for some that software will never be viable because determining viability requires a definition and that definition changes with graphics hardware and the evolving graphics applications it enables.

    So, it's a pointless question.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •