• Some users have recently had their accounts hijacked. It seems that the now defunct EVGA forums might have compromised your password there and seems many are using the same PW here. We would suggest you UPDATE YOUR PASSWORD and TURN ON 2FA for your account here to further secure it. None of the compromised accounts had 2FA turned on.
    Once you have enabled 2FA, your account will be updated soon to show a badge, letting other members know that you use 2FA to protect your account. This should be beneficial for everyone that uses FSFT.

What exactley is flow control?

sgi02

Limp Gawd
Joined
Feb 17, 2004
Messages
377
Hello,

Ive been pondering this question for quite some time. I am completley torn between a 6800 Ultra and a X800XT . They are both great cards and im leaning twoards ATI's new part but this question about flow control keeps beckoning me.

Quote from ATI "Save The Nanosecond" :

Steer people away from flow control in ps3.0 because we expect it to hurt badly. [Also it’s the main extra feature on NV40 vs R420 so let’s discourage people from using it until R5xx shows up with decent performance...]

I know that the 6800 has PS/VS3 but just what exactley is flow control and why does ATI expect it to "hurt badly"

Mabye im being alittle critical but when a company states in an internal document that a competitiors feature will "hurt badly" it kind of makes me wonder whats really going on. Thanks for the feeedback.

Zachary
 
From our GF6 Tech Article: http://www.hardocp.com/article.html?art=NjA1LDU=

Additional looping/branching options and new subroutine call/return functions give programmers even more choices for writing efficient shader programs.

The new flow control includes these capabilities:
- New instructions (IFC/BREAKC, IF/BREAK/CALLNZ)
- A unified eight-deep stack for return addresses and address registers: Branch, call
- Push, pop address register
- Condition code selection

Flow control in programming are statements that control the order in which operations are performed. Common looping statements are "for", "while" and "do," and common branching statements are "if" and "then." Loops are pieces of code in your program that repeat while a condition is true. When a condition becomes false, the loop stops and the program continues with the statements following the loop. You can think of branching as sort of an "out of order" way of running a program. Normally a computer will run a program sequentially, straight down the program in order. With branching, a programmer can control the flow of the program.

More about Flow Control Here: http://java.sun.com/docs/books/tutorial/java/nutsandbolts/flow.html

You can google it: http://www.google.com/search?q=flow control in programming

Basically it is a programming thing that can make your code/execution more effecient.

The problem is of course how well the hardware can do it, and that is what ATI was getting at. It is unknown right now how well the GeForce6 series can do dynamic branching. There is the chance that it could be slow, but it is simply something that is unknown right now and cannot be tested cause no games use it. It also depends on the game programmer and how well they implement it and what they use it for in games.

One thing is certain, it is not a feature that will cause any difference in image quality, it is simply a potential performance feature.

ATI is betting that flow control won't be needed, or able to be done fast enough until the next generation of video cards. It is a gamble on their part.

Only time will tell how it all plays out.

I wouldn't worry to much about it though.
 
Back
Top