Aces High Bulletin Board
General Forums => Hardware and Software => Topic started by: StarOfAfrica2 on March 16, 2005, 01:21:36 AM
-
I've been doing alot of reading, trying to keep up with the PCI express and SLI movement that is all the rage right now. One question stands out that really bothers me, and it doesnt seem to be addressed in any of the material I've read.
The entire reason for the development of AGP was to give the graphics card direct access to the CPU and system memory for texture swapping. This removed the competition between the graphics card and any other cards on the PCI bus for attention, and made the CPU and the memory bus the bottlenecks, not the PCI bus.
One of the arguments being bounced around in favor of the new PCI express/SLI motherboards is.........even if you dont use a second video card, they might develop a line of PCI express sound cards for example, or really anything that is now just plain PCI. Which leads inevitably to the development of a motherboard designed totally around PCI express, eliminating the standard PCI bus in computers. If this happens......................
What then is the difference (except in the bandwidth of the bus) to the old design that existed pre-AGP? Will they then have to come out with "AGP express," basically reinventing the wheel?
If someone can see another route for this, please enlighten me. Maybe I should just not drink Tequila before bed lol.
-
PCI express offers channels, every pci express channel has its own bandwidth.
PCI offerd shared bandwidth for all components.
For high bandwidth cards multiple channels can be routed into one slot. so the x16 slot used for the graphics card can offer 16 times the bandwidth of x1 pcie.
PCIe is easier to implement in graphics cards, dont know why.
x16 PCIe is a lot more bandwidth than AGP. But currently PCIe Graphics boards are not faster than the AGP boards, because they cant use more data than they got with AGP.
x1 PCIe is a lot faster than PCI.
A big advantage of PCIe is that it is scaleable, you can use x1 cards in x4 slots and, depending on the slot, the other way round.
BTW there already exists a slot called
"AGP express" but its a dork.
So no, we wont go back to invent a AGP express independent interface for graphics. But as soon as x16 PCIe is to slow for graphic boards a new interface will be desinged and used.
Its all a cost question. You could design a fast interface now, but its not needed and would be more expensive. PCIe on the other hand is cheaper than PCI, hardwarewise. So maybe in some years we have motherboards with PCIe expansion slots only and a new graphics port that is totally diffrent.
-
Let's do some calculations.
A single PCI-E channel runs at 2.5Gb/s which equates to 78.12MB/s. Remember it is a serial stream. (2.5Gb/s / 32)
AGP-8X bus runs at 1.7GB/s (533Mhz * 32bit path). The bus can actually burst up to 2.133GB/s in short
So, 16 * 78.12 = 1.25GB/s
That's the math of it all.
AGP-8X = 1.7GB/s
PCI-E x 16 = 1.25GB/s
-
Originally posted by Skuzzy
Let's do some calculations.
A single PCI-E channel runs at 2.5Gb/s which equates to 78.12MB/s. Remember it is a serial stream. (2.5Gb/s / 32)
AGP-8X bus runs at 1.7GB/s (533Mhz * 32bit path). The bus can actually burst up to 2.133GB/s in short
So, 16 * 78.12 = 1.25GB/s
That's the math of it all.
AGP-8X = 1.7GB/s
PCI-E x 16 = 1.25GB/s
Yup,
In fact the MAIN problem at the moment is that not one processor can push the latest cards to their full capability. So no matter which version (PCI or PCI-E) you get, you'll not see the maximum out of it.
Where PCI-E and SLI really seem to shine is having the ability to max out the eye candy in games without a major impact on frame rates.
I'll see if I can dig out a review I read with 2 6800GT Ultras (512Mb mem each) where even with all the eye candy maxed out in one of the latest GPU intensive games they still got 50+ FPS.
-
Just keep your fingers crossed the computer world does not go to a 64 bit datum. That would cut the PCI-E bandwidth in half on a 16 channel path. They would need a 32 channel path to keep the bandwidth the same as it is now.
The only reason the computer industry is moving to serializing data is to keep manufacturing costs down. It really is not a good way to go if performance is your main criteria.
SLI is a kludge to me. There are more elegant ways to pump up the performance of a video subsystem, which would not require specialized software and/or hardware configurations in order to operate transparently to the application.
The thermals and power requirements are getting out of hand.
Reviews do not impress me, unless they are done by an engineer in a controlled environment and not by some WEB wieney.
-
So with Skuzzys math the only way PCIE is better than AGP is if its in SLI.?????
-
So far so not surprising. After all, no one can tell the difference between 2x AGP and 8x AGP.
However, the future is PCIX and AGP will dissapear as surely as ISA.
Absolutely agree about SLI. Elephants never got whiter than that one. I'd as soon just have ONE obsolete "high end"card in six months time.:rolleyes:
-
Thanks! I knew I had to be missing some things.
-
not even boxboy. When you use SLI the x16 is split between the two cards, x8 to each.
-
Originally posted by Vipermann
not even boxboy. When you use SLI the x16 is split between the two cards, x8 to each.
I believe that's a 'feature' of the current motherboards, not a PCI-E limit, would expect later ones to have two full 16 lane slots.
Follow on from transfer rates I found this -
PCI 132 MB/s
AGP 8X 2,100 MB/s
PCI Express 1x 250 [500]* MB/s
PCI Express 2x 500 [1000]* MB/s
PCI Express 4x 1000 [2000]* MB/s
PCI Express 8x 2000 [4000]* MB/s
PCI Express 16x 4000 [8000]* MB/s
PCI Express 32x 8000 [16000]* MB/s
IDE (ATA100) 100 MB/s
IDE (ATA133) 133 MB/s
SATA 150 MB/s
Gigabit Ethernet 125 MB/s
IEEE1394B [firewire] 100 MB/s
* Note - Since PCI Express is a serial based technology, data can be sent over the bus in two direction. Normal PCI is Parallel, and as such all data goes in one direction around the loop. Each 1x lane in PCI Express can transmit in both directions. In the table the first number is the bandwidth in one direction and the second number is the combined bandwidth in both directions.
-
That is what I get for doing this stuff so early in the morning.
My numbers are actually giga-quads/sec, not giga-bytes/sec.
Bytes per sec.
AGP-8X = 2.1GB/s
PCI-E x 16 = 3.12GB/s assuming a 2.5Ghz frequency, which is towards the high end.
However, with the AGP bus is does not matter if the datum is 8 or 32 bits wide. It transfers that data in one cycle, whereas the PCI-E bus loses speed as the native data width for the end device gets wider.
Video card data is 32 bits, at a minimum, today. So you can divide the acual useable bandwidth by 4 (for 32 bits of data to cross the PCI-E bus it takes 32 clock ticks), which yeilds 780MB/sec, and the AGP bus is still at 2.1GB/s.
-
Ok.....that's enuff. My calculator just exploded.
-
:rofl Reminds me of our old squadmate Bozon, the astrophysics student. He understood aerodynamics so well you couldn't fox him.
-
Skuzzy, since PCI-E is "full-duplex" what does that gain you in actual performance over AGP? (at least on a video card?) I suppose a full-duplex connection on a HD Controller (SCSI or FC) would be a huge benefit...?
Terror
-
The CPU rarely reads anything from a video card. It's is all about getting data to the video card, so the fact PCI-E is full-duplex should not have any impact.
-
skuzzy,
i have purposely NOT thought about hardware upgrades because these new PC architectures are comming out.
if i want to in; the next 3 months; buy a system that will run for 3+ years, only getting a video card upgrade in the future is that possible?
basically if i were to by an atholn 64 system, and an 8x AGP card, will they still be making AGP cards for my system in 2 years? or will i have to dump my MB / processer / sound card, all that for a new architecure?
-
Considering that they still make and sell video cards with as little as 8MB of RAM on the shelf at the box stores, I'm betting they will have AGP around for awhile.
-
Just noticed there are now PCI-E cards by Gigabyte with TWO GPU's on them.
Apparently the latest with 2x6600's on it is slightly faster than the XT and is only $400 complete with a motherboard!
Wonder how two dual GPU cards (total 4 GPU's) running SLI would perform?
-
Skuzzy, you've got me a bit confused. Absolute theoretical bus bandwidth (if expressed in bits or bytes per second) does not change with the width of the data you are transferring. If you are looking at this in terms of how many bus clock cycles it takes to transmit 64 versus 32 bits, then sure that doubles, but the bandwidth hasn't changed. The maximum bus bandwidth for a PCIe 16x slot is 4 GBytes/sec up and down. It's 2.133 GBytes/sec for AGP 8x. If anything the effective bandwidth of the PCIe bus would be higher with 64 bit datasets. (Less address commands needed for a given amount of data being transferred.)
The big reason to move to serial busses is really that of cost and design complexity.
On a serial bus you can make use of differential signalling to transfer data at a very high clockspeed. Differential signalling uses 2 wires per data line. It is the voltage difference between those two lines that determine whether you are sending a 0 or a 1. The reason for doing this is that it is effectively immune to what is known as common mode interference. (I'd be happy to explain what this is, but it would take more time than I have at the moment.) With a parallel bus you have to worry about crosstalk between lines, and implementing differential signalling to deal with this on a 32 bit parallel bus would require 64 lines. That would take up a ton of space on a board and make for very expensive cabling and connectors. (Some SCSI cables use low voltage differential signalling. Anyone who has dealt with them know how expensive they are...)
-
Bloom, I know what you are saying, but if the native data width of any given operation goes from 32 bits to 64 bits, then the effective performance of a serial bus is cut in half as the operation cannot commence until the op is transferred. The number of ops does not necessarily change either. They just get bigger in many cases.
And yes, a parallel bus is wrought with issues, especially if it using passive termination. Active termination helps, and differential is definately the best and, as you pointed out, the most expensive.
The 4GB/s you spec for the PCI-e bus is dependent on the clock rate of the bus. Typical devices I have seen are running at 2.5Ghz per channel, which yeilds the figure I came up with. Some of the cheaper motherboards look to be using 2Ghz parts as well.
Seems to be a grab bag at this time.
All that aside, where the heck you been?
-
Skuzzy, where haven't I been is the question. I design data communications systems, primarily for public safety. Its been keeping me on the road (in the air) a LOT recently, so I haven't had much time to browse the forums. ( I was in Dallas last month. I thought about stopping by...) I wish I could show you guys some of the "toys" I get to play with these days... ;)
Another advantage of a serial bus that will become more and more important is that of RF emissions and interference. With a serial bus it is a easier to use a signalling protocol that minimizes the number of transitions on the bus, reducing RF emissions. A serial bus using differential signaling is also much less prone to interference from other devices. This is something that will become more significant as data rates go up and you need to minimize error rates.
It wouldn't surprise me in the not to distant future if all components in a computer are linked together using a common high speed serial bus with a hub in the center acting as a router for traffic to each endpoint. That would be a LOT less expensive and much more flexible than what is done currently. (You are already starting to see this with Hypertransport, etc.)
-
Well, it's good to see you around. I know how the traveling bit can keep you busy.
--
I am not saying the serial bus is not a good way to go. I am just pointing out there are limitations. The single limitation of the native datum width will not show itself until the change from an 'integer' being 32 bits to 64 bits. It will not incur a 50% reduction in performance, as opcodes may not change that much from where they are now, but I could see a 30% hit pretty easily.
Of course, the same hit would occur on computers using a parallel bus fixed at 32 bits wide.
The other downside of serial is the various clockings hidden from the user. Just because you have a PCI-E does not mean you are getting 3Ghz on the channel. It can be 2Ghz and up. In an ideal world, they would all perform the same, but just like the $2 video chips OEM's use today, if they can find a cheaper way to implement it, they will.
Overall it is definately cheaper and easier to implement higher clock rates, but it is not without its own limitations.
-
I'm gonna go spend about 1000-1200 on a new system. Should I jump to PCI-E or stick with AGP? I already have a decent Radeon 128mb that I can swap...Some of the new HP's dont even have an AGP slot anymore.