Welcome, Unregistered.

If this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below.

Reply
Old 17-Apr-2002, 00:27   #1
EvilTwin
Junior Member
 
Join Date: Feb 2002
Posts: 14
Send a message via ICQ to EvilTwin Send a message via MSN to EvilTwin
Default Stupid question, but what exactly is the hardware rasterizer

I realize that this may be a stupid question , but after extensive googling I must ask this question . What exactly is the hardware rasterizer at the heart of 3d chips ? What makes them faster than software when just running a wireframe (no h/w tcl) . I am sorry , but no sites or tutorials or explanations really seem to cover this . TIA for any replies .
EvilTwin is offline   Reply With Quote
Old 17-Apr-2002, 03:01   #2
3dcgi
Senior Member
 
Join Date: Feb 2002
Posts: 2,036
Default

I don't have time to post a lengthy answer, but you might want to check out this three part article for a good overview of the graphics pipeline.

http://www.extremetech.com/article/0...53D2674,00.asp
3dcgi is offline   Reply With Quote
Old 17-Apr-2002, 10:34   #3
Simon F
Tea maker
 
Join Date: Feb 2002
Location: In the Island of Sodor, where the steam trains lie
Posts: 4,396
Default Re: Stupid question, but what exactly is the hardware raster

Quote:
Originally Posted by EvilTwin
I realize that this may be a stupid question , but after extensive googling I must ask this question . What exactly is the hardware rasterizer at the heart of 3d chips ?.
A z-buffer based rasteriser can be summarised as:
  • Accept a list of triangles, i.e. 3 vertices each with screen positions (X,Y and "depth" Z), colour, and texture coordinates.
  • Step through each triangle and determine which pixels lie inside the triangle (usually called scan conversion).
  • Compare each screen pixel's stored "depth" with the computed triangle's depth at the same pixel. If triangle is "in front" at that pixel, "draw" it.
  • Draw means to compute the colour(s) of the triangle's texture(s) at that pixel location and to either replace the stored pixel's colour completely or blend it with the new colour in some fashion. You'd normally also replace the pxiel's stored depth as well.

Quote:
What makes them faster than software when just running a wireframe (no h/w tcl) . I am sorry , but no sites or tutorials or explanations really seem to cover this . TIA for any replies .
I'm not sure exactly what you are asking here, but the reason it's fast is that the hardware is designed to do many steps in parallel.
__________________
"Your work is both good and original. Unfortunately the part that is good is not original and the part that is original is not good." -(attributed to) Samuel Johnson

"I invented the term Object-Oriented, and I can tell you I did not have C++ in mind." Alan Kay
Simon F is offline   Reply With Quote
Old 17-Apr-2002, 17:28   #4
Tagrineth
SNAKES... ON A PLANE
 
Join Date: Feb 2002
Location: Sunny (boring) Florida
Posts: 2,512
Send a message via AIM to Tagrineth Send a message via MSN to Tagrineth
Default

Yup, the three main reasons a 3D accelerator is faster than software are...

1. Dedicated logic. Takes fewer cycles than a general-purpose processor, regardless.

2. Parallel operation. Take Radeon 8500 for example. Each pixel pipeline (4) performs a Z compare, plus each one has two TCU's which can each take up to 64 sub samples (8x Aniso + bilinear). That's 64 X 8 = 512 simultaneous texel samples plus some number of Z operations all done in one clock cycle. A general CPU would need a HUGE number of cycles to perform even bilinear at a theoretical 1PPC. The power needed to perform AF would be staggering. And that's without FSAA.

3. Memory bandwidth. Latest 3D core from nVidia features some 10.4GB/sec. Highest (official) CPU bandwidth to date is 3.2GB/sec (dual-channel PC800).
__________________
For Great Justice
Move Every 'Zig'
Tagrineth is offline   Reply With Quote
Old 17-Apr-2002, 18:19   #5
pcchen
Moderator
 
Join Date: Feb 2002
Location: Taiwan
Posts: 2,358
Default

I think that parallel natural of a hardware rasterizer is the main reason why it's faster. Hardware rasterizers are highly pipelined.

Bandwidth is not really that big problem, because you can write a deferred renderer for a CPU, and every modem CPUs have fast and big L2 cache. The bandwidth of a P4 (3.2Gb/s) is larger than a Kyro but a software rasterizer on a P4 won't be able to compete with a Kyro.
pcchen is offline   Reply With Quote
Old 17-Apr-2002, 18:28   #6
Tagrineth
SNAKES... ON A PLANE
 
Join Date: Feb 2002
Location: Sunny (boring) Florida
Posts: 2,512
Send a message via AIM to Tagrineth Send a message via MSN to Tagrineth
Default

Well, yeah, but then the CPU would have to compute the culling as well ^_^

PowerVR cores do it in hardware along with everything else so the bandwidth CAN be saved. Also remember that K2 does all Z work on-chip, with only the final front buffer stored in onboard RAM, so that's still more savings on external bandwidth which a general purpose processor couldn't achieve without some kind of dedicated logic. ^_^;
__________________
For Great Justice
Move Every 'Zig'
Tagrineth is offline   Reply With Quote
Old 17-Apr-2002, 18:38   #7
pcchen
Moderator
 
Join Date: Feb 2002
Location: Taiwan
Posts: 2,358
Default

Why not? One can write a software to do all things including removing invisible pixels, or even triangles. It can save bandwidth even better than a Kyro. However, its main problem is, CPUs are too slow compares to a highly pipelined hardware rasterizers.

However, in early days some hardware rasterizers are actually slower than the fastest CPU of its time. They are generally called "3D deceleraters."
pcchen is offline   Reply With Quote
Old 17-Apr-2002, 21:26   #8
EvilTwin
Junior Member
 
Join Date: Feb 2002
Posts: 14
Send a message via ICQ to EvilTwin Send a message via MSN to EvilTwin
Default

For simply drawing a wireframe , would a 3d accelerator sill be faster than a CPU ? What work would the card be doing ? (Assuming it did all the transform on the CPU ). I apologize if I am being ignorant . Thanks alot for the information so far , learned alot .
EvilTwin is offline   Reply With Quote
Old 18-Apr-2002, 00:30   #9
Tagrineth
SNAKES... ON A PLANE
 
Join Date: Feb 2002
Location: Sunny (boring) Florida
Posts: 2,512
Send a message via AIM to Tagrineth Send a message via MSN to Tagrineth
Default

pcchen: Didn't say it wasn't possible, but because the CPU would have to compute the culling first, it wouldn't be as effective as dedicated raster logic (i.e. PowerVR).

EvilTwin: Drawing a wireframe, a CPU could probably do passably at low resolutions. But scaling the resolution up, the Z and frame buffer size would probably end up eating all the effective bandwidth. The main thing a hardware rasteriser could do is anti-alias the lines faster than a CPU.
__________________
For Great Justice
Move Every 'Zig'
Tagrineth is offline   Reply With Quote

Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
A question fot the TRUE professionals in hardware. ChronoDog 3D Hardware, Software & Output Devices 32 10-Dec-2004 23:26
Xbox 2 Hardware 'LOCKED DOWN' - More Information in 2005 Megadrive1988 Console Technology 56 24-May-2004 09:44
Game benchmarks vs benchmark applications Patric Ojala 3D Architectures & Chips 0 16-Oct-2003 13:38
A thought on X-Box 2 and Creative Labs. Brimstone 3D Architectures & Chips 106 13-May-2002 11:05
+'s/-'s and feasability of lengthened hardware release cycle JavaJones 3D Architectures & Chips 12 09-Mar-2002 16:56


All times are GMT +1. The time now is 19:05.


Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2013, Jelsoft Enterprises Ltd.