- grigjd3
- Level: 21 (48%)
- Rank: Rescue Ranger
- Member since: Nov 7, 2007
- Last online: 12/04/09 7:47 am PT
-
My Emblems:
- Rank: Registered Member
- Popular
- Tagger Dabbler
- Good Taste
My Friends
-
Allicrombie online
-
man_hammer online
-
AlmightyMax online
-
fastesttruck online
-
btaylor2404 online
-
Polybren online
-
Samson089 online
-
fat_otter online
-
THE_DRUGGIE online
-
Foolz3h online
All About grigjd3
Recent Blog Posts
-
3Dec 09
RISK vs Pipeline, two philosophies in (single core) computer architecture
So back in the day, I got myself a degree in computer science. When I graduated, Windows XP was still fairly new and most people were using Pentium IVs or some form of these (at the time) cheaper AMD chips. 64 bit chips were only discussed in the computer science community at the time. In my computer architecture class, we studied chip design - particularly the instruction sets.
For those who aren't tech nerds, an instruction set is sum total of all the unique commands that can be run on a processor. They can range from simple commands such as *get* which retrieves a data item (called a word) to addition, multiplication and many other sets of instructions. An instruction is built from logical operators like *or* and *and*. An *or* statement is true if either option a or option b is true and returns false only if a and b are false. An *and* statement is true if both option a and option b are true but returns false if either or both are false. Anyhow, that's getting into the nitty gritty. Around this time were two main design philosophies: Pipeline and RISK.
The pipeline philosophy was about having as many instructions running at one time as possible. This would mean you spend your chip space on having a vast array of instructions that cover everything you'd possibly want to do. The instructions would have many steps and you would start the new instruction before the old one had finished. You would measure throughput (instructions finished per second) and try to maximize this. Certain functions which required multiple simple instructions would get specialized streamlined instruction paths. It is the cutting edge of using every little trick in the book. There are many popular examples of this design philosophy. The x86 architecture is perhaps the most famous. IBM put out the 386 and 486 chips which had these long pipelines and vast instructions sets. Of course, this design essentially became the basis for Pentium chips which vastly sped up computing power when they made certain developments related to clock speed (Mhz and Ghz). These chips are by far the most popular and commercially successful. Even todays dual core chips are mostly pipeline based.
The other design philosophy was RISK which meant reduced instruction set. This philosophy was based on the idea chip space is valuable. Rather than spend it on special instructions that rarely get used and a long pipeline, it should be spent on storage space. You see, a computer chip needs registers where it stores data it is currently working on. If you had a huge instruction set, you had little room on your chip for registers. That means you spend more time waiting to pull data from memory. It is worth nothing, on average, it would take twenty clock cycles (twenty times the time to execute a single instruction in a full pipeline) to retrieve a data item for one register. So this was the plan, spend as little chip space on instructions as possible and put as many registers on the chip as you can. In this way, you spend less time waiting for data to show up - that means more time executing useful instructions.
The natural question comes then as to which philosophy is better: pipeline or RISK? As always, the answer is, it depends. Today, the major leaps in chip design have been in moving up clock speed and reducing the size of integrated circuits. Smaller ICs mean things take up less space which in turns mean a smaller footprint on the chip space. Given this, it seems better to go with the pipeline philosophy - a kind of "have your cake and eat it too" mentality. You get all those instructions and you still get lots of registers. Also, the large pipeline and vast array of instructions are very useful for multitasking and graphics based work. It would be easy to conclude that based on recent developments and trends that RISK was a good idea but today we are advanced enough to do away with such simple systems (I hear a million tech nerd voices scream from a distance and then go suddenly silent...)
The argument is still not settled here though. Scientific computation rarely needs a vast array of instructions - particularly when most operations are simple addition and subtraction. Of course, scientific computing hasn't driven the computer industry for a very long time - games have. Still yet, we may soon hit problems with the pipeline philosophy. We've managed to shrink integrated circuits by orders of magnitude. But we've started to hit some physical limits and we're quickly approaching more physical limits). We have made integrated circuits so small and so fast that they build up enough heat during the course of one cycle localized so finely that the IC loses functionality. We are literally looking at strips of material on the order of ten atoms thick. We are hitting other issues as well. As we devise more demanding tasks for our computers to handle, we may no longer have such freedom with chip space. Lately, we have moved towards multicore processors to find speed ups. This form of "parallel processing" means the chip space is being further and further divided up. Our silicon real estate is again rising in value. With out amazing breakthroughs that can allow us to design circuits at the almost atomic level, we will not be able to improve computers the way we have in the past. The cell processor could be the first sign that we may well need to return to a RISK architecture so we can have enough registers (the voices are quiet, but still there, perhaps).
I can't truly predict what happens, but we may see a return to an old philosophy is computing design.
- Posted Dec 3, 2009 5:52 pm PT
- Category: Computers
- 8 Comments
-
3Dec 09
This is the eseence of Japan
I'm no expert on Japanese culture but I think this game represents perfectly the experience I've had with oddball Japanese culture. Particularly, check out the video. This is so far beyond Katamari...
- Posted Dec 3, 2009 5:25 am PT
- Category: Games
- 9 Comments
-
2Dec 09
So...
There are times when the pressure to perform is just too high. I think about my wife and the life we want and how to get there and what I have to face and sometimes, it feels like too much. I guess I am saying it here because this is the only place I feel safe saying so.- Posted Dec 2, 2009 3:51 pm PT
- Category: Rant
- 8 Comments
My Recent Reviews
-
Baldur's Gate II: Shadows of Amn
"All it's cracked up to be" The epitome of everything the infinity engine set out to accomplish. Continue »
- Posted Jan 13, 2009 4:58 pm PT
- Recommended by 3 of 3 users.
-
Neverwinter Nights
"Boring" There's something wrong with a video game when I need a library of rule books to design my character for it. Continue »
- Posted Jan 13, 2009 4:41 pm PT
- Recommended by 2 of 13 users.
Recent Images
grigjd3's Feed
-
Dec 3, 2009 5:52 pm PTgrigjd3 posted a new blog entry entitled RISK vs Pipeline, two philosophies in (single core) computer architecture
-
Dec 3, 2009 5:25 am PTgrigjd3 posted a new blog entry entitled This is the eseence of Japan
-
Dec 2, 2009 3:51 pm PTgrigjd3 posted a new blog entry entitled So...
-
Dec 1, 2009 12:44 am PTgrigjd3 posted a new blog entry entitled New Chairs
-
Nov 29, 2009 5:16 pm PTgrigjd3 posted a new blog entry entitled Question.
-
Nov 27, 2009 11:02 am PTgrigjd3 posted a new blog entry entitled I am humbled by my own idiocy.
-
Nov 26, 2009 10:01 am PTgrigjd3 posted a new blog entry entitled I see singular matrices.
-
Nov 25, 2009 1:50 am PTgrigjd3 posted a new blog entry entitled hrmm..
-
Nov 24, 2009 5:56 am PTgrigjd3 posted a new blog entry entitled Grr..
-
Nov 23, 2009 2:18 am PTgrigjd3 posted a new blog entry entitled Yep. Thought so.



