Slashdot Mirror


Grid Processing

c1ay writes "We've all heard the new buzzword, "grid computing" quite a bit in the news recently. Now the EE Times reports that a team of computer architects at the University of Texas here plans to develop prototypes of an adaptive, gridlike processor that exploits instruction-level parallelism. The prototypes will include four Trips(Tera-op Reliable Intelligently Adaptive Processing System) processors, each containing 16 execution units laid out in a 4 x 4 grid. By the end of the decade, when 32-nanometer process technology is available, the goal is to have tens of processing units on a single die, delivering more than 1 trillion operations per second. In an age where clusters are becoming more prevalent for parallel computing I've often wondered where the parallel processor was. How about you?"

130 comments

  1. Yep by akadruid · · Score: 1, Funny

    Yep, that's just what I wondered.

    And before anyone says it, no I have ever thought about a beowolf cluster of those...

    --
    "Those who cast the votes decide nothing; those who count the votes decide everything." (attrib. Joseph Stalin)
    1. Re:Yep by hackrobat · · Score: 1
      beowulf

      !

  2. Terminator? by kompiluj · · Score: 0

    I have seen something like this somewhere... it was in Terminator II!!!

    --
    You can defy gravity... for a short time
    1. Re:Terminator? by Textbook+Error · · Score: 0

      You may also have seen it here a fortnight ago. Check it out - it's a site with loads of geek stories like this. Oh, wait...

      --

      Nae bother
  3. For the rest of us by Moderation+abuser · · Score: 0, Offtopic

    Grid Engine is free, available on most of the Unix platforms, easy to set up and allows you to scale your processing pretty much linearly.

    If you want to know more, I'd be happy to consult at $300/hour.

    --
    Government of the people, by corporate executives, for corporate profits.
    1. Re:For the rest of us by Anonymous Coward · · Score: 3, Funny

      If you want to know more, I'd be happy to consult at $300/hour.

      Which is why most of your tech jobs are being shipped overseas.

    2. Re:For the rest of us by fitten · · Score: 1

      "allows you to scale your processing pretty much linearly."

      Interesting promise. I guess it depends on what you mean by "pretty much"...

    3. Re:For the rest of us by Adm1n · · Score: 1

      Do you speak hindi or Mandrin? because they do not speak english. Nor do they have the command of it us overpaid north-ameircan techno geeks maintain. Thus you will have your nice fincancial analasis or project outline impress your executives warrenting the $300/hr, besides we live here and have ready access to technology. They do not, as a result must be trained (ie: we ship some of us there and pay god-awful amounts to do so) in both technical and language not to mention customer service.

  4. Would it be possible... by PakProtector · · Score: 2, Interesting

    To make a brick of these things, or some kind of cube, with massive processing power that one could just carry around and interface with via their PDA?

    Just think about carrying around something as fast, if not faster, than your desktop that fits in the palm of your hand.

    --

    Edward@Tomato - /home/Edward/ man woman
    man: no entry for woman in the manual.
    "Qua!?"

    1. Re:Would it be possible... by Anonymous Coward · · Score: 0

      If those 'bricks' fit in the palm of your hand, then imagine how many of those bricks would fit in your desktop machine. No technology would ever make PDA's faster than desktop machines, since that same technology would be applied for them.

    2. Re:Would it be possible... by Not_Wiggins · · Score: 1

      Ah... one step closer to making the Borg a reality... ;)

      --
      Diplomacy is the art of saying, "Nice doggie!" until you can find a rock.
    3. Re:Would it be possible... by aj444 · · Score: 1

      just think about carrying around a pulsating pink sludge inside your skull, imagine the massive parallel processing power

    4. Re:Would it be possible... by Anonymous Coward · · Score: 0

      But you _are_ carrying around in your hand something as powerful as your desktop PC...it just happens to be the desktop PC you had five or so years ago.

  5. Battletoads anyone? by jeffy210 · · Score: 1

    My first thought when I saw "Trips" was "Total Reality Intrgrated Playing System" from Battletoads... What's next, we're going to get sucked into the gamescape? :)

    --
    ------
    "And may your days be long upon the earth."
    1. Re:Battletoads anyone? by paradesign · · Score: 1

      nah, thats for TRON.

      --
      I want 2D games back.
  6. Just out of curiosity.... by exebeoex · · Score: 5, Interesting

    A question for anyone with such experience:

    I assume it would be somewhat difficult to program efficiently for such systems. I don't mean just getting programs to run, but getting the most bang for your buck. Can anyone here confirm or deny this? Also does anyone know where to find resources on the topic of programming such machines (and no, I am not talking about smp docs or bewoulf docs or even pvm docs)?

    1. Re:Just out of curiosity.... by Stone316 · · Score: 2, Informative

      I'm not sure wabout other platforms but in the case of Oracle, they say you don't require any code changes. Your application should run fine right out of the box.

      --
      "Thanks to the remote control I have the attention span of a gerbil."
    2. Re:Just out of curiosity.... by Anonymous Coward · · Score: 0

      Grid computing is bullshit, the technology is ancient. Hell I was playing Battleship on my 386 years ago. A-10, hit or miss? You could probably do that in QBasic. Don't listen to that guy that wants to charge $300 and hour, you can find it in the bargain bin at Gamestop.

    3. Re:Just out of curiosity.... by Adm1n · · Score: 2, Interesting

      Hypercube Theory handels this quite well. Addressing would be n-dimensional you can google hypercube and find lots of nifty SGI doc's for thier old Onyx architechure but it also applies to Beowulf's, PVM, MPI, Cray and any other massivlly parallell architechure. This would be a hypercube on a chip as opposed to a hypercube of chips. And I'm not going to mention the complexities of Queing theory but at 32nm it's a Doctoral Thesus waiting to happen.

    4. Re:Just out of curiosity.... by gbjbaanb · · Score: 4, Informative

      Most parallel systems only work for a certain type of problem - one where processing can be split into many small chunks, each one non-dependant on the others.

      eg. who cares how many instructions you can process in parallel, if module A requires data from module B. In these cases parallelisation is limited to making each module run faster (if it doesn't have sub dependencies, of course), the entire program doesn't benefit from the parallelisation.

      Good examples of parallel processing are the ones we know - distributed apps like SETI@home, graphics rendering, etc.

      Bad systems are everyday data processing systems - they typically work on a single lump of data at a time in sequences.

      A good source of parallel programming is http://wotug.ukc.ac.uk/parallel/ or, of course, google.

    5. Re:Just out of curiosity.... by Durinia · · Score: 1

      The short answer is yes. The longer answer is that a large portion of the TRIPS project is devoted to compiler infrastructure, to make it manageable. From what I've seen at some of their presentations, they've made a decent amount of headway.

    6. Re:Just out of curiosity.... by Ann+Elk · · Score: 1

      Check out MIT's Cilk, a language specifically designed for multithreaded parallel programming.

      Memory is like an orgasm. It's a lot better if you don't have to fake it. -- Seymore Cray

    7. Re:Just out of curiosity.... by Anonymous Coward · · Score: 0

      I care about parallel processing because that's exactly how our brain works. So if we get a parallel processor that has the transmission speed of electronics and parallel processing capacity, then machines will finally take over.
      Huzzah

    8. Re:Just out of curiosity.... by pmz · · Score: 2, Interesting

      Good examples of parallel processing are the ones we know...

      On a coarser level this also includes any multi-user UNIX system that is actually used by multiple users. While not allowing per-person scaling, it allows very significant institutional scaling.

    9. Re:Just out of curiosity.... by hughperkins · · Score: 1

      Vision, 3D rendering, artificial intelligence, moving units around in a strategy game, web server, file server, mail server, MMORPG server...

    10. Re:Just out of curiosity.... by Lodragandraoidh · · Score: 1

      If the parallelism is at the microcode level, which is what this article is addressing, then the 'type' of application is irrelevant - you will still gain speed benefits.

      Think of a computer system as virtual boxes within boxes. At the lowest level you have the physical logic gates that make up the processor. Above that level you have the microcode which is a very simple application that forms the underlying structure of a virtual von neuman machine, and associated extensions - accessible via an assembler. Above that we have applications - the operating system, and user applications - that are a 3rd tier of virtualization (the assemblers, interpreters and compilers, which essentially provide another layer of abstraction above the assembler in the form of human readable programming languages, are all application level).

      Now if we parallelize our microcode, providing, in essence multiple virtual CPUs, each with a portion of the instruction queue, that can work on seperate instructions we can potentially increase the speed at which the queues stream through the processor. The only tricky part will be building the microcode to keep all of the queues in syncronization - since one queue could potentially need the results of another queue, or visa-versa. However, we already have experience with the issues surrounding this, in high performance cpus in the form of prefetch queues and branching algorithms applied to a pipeline; UT is taking this concept to another level, having the compiler build a 'tree' of dependencies - instead of a traditional pipeline - and assigning blocks of code to adjacent (dependent) grid processors.

      This gets around the problem of busy waiting because the adjacent instruction queues are optimized to either read and write on internal cache, or communicate with adjacent cpus in the grid as much as possible, making at most 1 additional clock cycle to pass information to useful 'next step' instructions in adjacent cpus.

      I don't see how this couldn't be useful to speed up processing of any application, threaded or traditional 'flat' applications, since the compiler will be optimizing the code for the processor, automatically taking into account for, and building the optimized tree regardless of the type of application (which is essentially what the article states the research team anticipates). Recognizing that parallel processors will need to share data, this research focuses on optimizing that process to ameliorate inefficiencies due to the very same limitations of traditional multiprocessors that you mention - instead of assuming the traditional single pipeline is the only way.

      This is taking the processor itself from a traditional serial device, into a multiplexed realm - complicated - but, very interesting and useful indeed! (and about time!)

      --

      Lodragan Draoidh
      The more you explain it, the more I don't understand it. - Mark Twain
  7. Uh oh, Terminator andriods will rule the earth! by scorp1us · · Score: 3, Funny

    Anyone remember from T2 what the CPU looked like? It was a 3 dimentional grid of CPUs...

    Don't say I didn't warn you!

    --
    Slashdot's rate-of-post filter: Preventing you from posting too many great ideas at once.
    1. Re:Uh oh, Terminator andriods will rule the earth! by Anonymous Coward · · Score: 0

      I believe the machines have decided against killing John Connor and all the tedious mucking about with Skynet and military C&C computers, and have now opted for the far more subtle plan of getting one of their machines into office as the President of the United States of America, and have him simply push the button himself.

    2. Re:Uh oh, Terminator andriods will rule the earth! by jhtr216 · · Score: 0

      Why was this modded funny. (S)he's right?

  8. This is not "Grid Computing" by pridkett · · Score: 4, Interesting

    This is not an example of the Grid Computing (ala Globus) that we've been hearing about. This is another example of laying out processor cores on a chip. So a better thing would be to compare this to the ideas for the UltraSPARC V and IBM BlueGene computers where multiple processing cores are put on one chip and then arranged in a grid (think physical grid) architecture.

    Grid Computing deals with computation and information sharing seemlessy across a network, they used to always say like how the power grid works. Which in reality is about right as it doesn't always work as advertised.

    Anyway, Grid Computing is mainly concerned with software to allow multiple computers to work together seemlessly. This includes registry services, single sign of, information transfer, etc.

    This appears to be the rather fortunate result of a phenomenon called "Buzzword collision", where two different projects pick the same buzzword in hopes to really confuse people who don't read the articles and trick PHBs into thinking that each project is ueberimportant.

    --
    My Slashdot account is old enough to drink...
    1. Re:This is not "Grid Computing" by Rolken · · Score: 2, Interesting

      They do work on the same principle though. It's just that grid computing on a network involves processors that are vastly separated and consume different resources, whereas the "new" grid computing involves tightly bound, hardwired processors that share resources. It's not like you have to be an engineer to figure out the difference... and if you don't read about it and you get confused, that's your own fault. ;)

    2. Re:This is not "Grid Computing" by Rufosx · · Score: 3, Interesting

      If this really was just a grid layout of cores on a chip, then no, I would not call it grid computing.

      But from looking at the diagram and rereading the article a few times, I think this goes far beyond that and approaches something that really could be called grid computing.

      Instead of just being issued instructions from a central control unit, these units seem to have far more developed abilities to communicate with each other and work together. Not just for the issuing of instructions, but during execution.

  9. What about Transputers? by Tangurena · · Score: 5, Interesting
    Transputers were processors designed from the ground up for parallel processing. Have been around for years, but no one in America noticed them. Therefore they did not exist. I am surprised at the constant reinvention of the wheel, because of the NIH principle (Not Invented Here).

    There are some programming languages designed for parallelism. Biggest hassle is efficiently partitioning problems into something parallel. Not all problems can be done faster by doing more of it at once.

    1. Re:What about Transputers? by marktoml · · Score: 3, Funny

      Oh, you mean 9 women can't have the baby in a month? Crap. Another good plan shot to hell.

    2. Re:What about Transputers? by GregAllen · · Score: 2, Informative

      no one in America noticed them
      We used transputers on quite a large number of projects right here at the University of Texas.

      the NIH principle
      Actually, the problem was that they were slow and complicated. They went so long between family upgrades that eventually we could replace a large array of transputers with a few regular CPUs. Not to mention that we can also get a handy little thing like an OS on general purpose CPUs.

      programming languages designed for parallelism
      Did I mention complicated? Occam was part of the problem. The scientific world wants to program in C or Fortran, or some extension of them, or some library called by them. That's why MPI is so popular.

      not all problems can be done faster by doing more of it at once
      I'm not sure I agree. Having more capability at each compute node means less need for partitioning. (The part you say is hard.)

      Obviously there's a lot of work to be done in parallel processing. You can hardly blame Inmos's problems on geography (or America for Inmos's problems). They looked very promising for awhile, but just didn't keep up.

      --
      Please help find my missing daughter: FindSabrina.org
    3. Re:What about Transputers? by AlecC · · Score: 4, Interesting

      Obviously there's a lot of work to be done in parallel processing. You can hardly blame Inmos's problems on geography (or America for Inmos's problems). They looked very promising for awhile, but just didn't keep up.

      Seconded, loudly. Inmos was a classic case of great engineering trashed by lousy management. When the transputer came out, it was fantastic, leading edge stuff. But inmos turned everybody off bay saying that you had to use it their way and no other.

      The thing that shows how good the transputer was that it was still selling ten years after it first came out, when it had been overtaken and lapped several times by conventional CPUs. But that cannot go on for ever - by the time they died, you could simulate a tranputer in a conventional CPU that cost less but ran faster.

      --
      Consciousness is an illusion caused by an excess of self consciousness.
    4. Re:What about Transputers? by Alioth · · Score: 1

      I believe there was a Unix-like OS for transputer systems (IIRC). I went to college at the UWE, where we had the Bristol Transputer Centre, and Inmos itself was quite nearby (I think I did either a 1st or 2nd year undergraduate project which involved Inmos). I remember they said that they tried to present an image that Inmos was a US firm in the US to help with marketing, since home grown stuff apparently sells better in the US.

      Back to the OS. I think it was in use by Southampton University, and IIRC the main problem with it was that it couldn't handle a segmentation fault - the entire machine would crash if a program died with SIGSEGV. I'm sure the administrators really enjoyed running that system...

    5. Re:What about Transputers? by aminorex · · Score: 2, Funny

      Actually, they can. If you keep 9 women constantly
      pregnant on a rotation schedule, they will produce
      one baby per month, with some variance and the
      occasional miscarriage.

      As a domain expert with years in parallel computing
      under my belt, I claim dibs on that job.

      --
      -I like my women like I like my tea: green-
    6. Re:What about Transputers? by AtrN · · Score: 1
      I believe there was a Unix-like OS for transputer systems

      Helios. The Atari transputer workstation used it.

  10. Sun may already be ahead of the game here(!) by pr0ntab · · Score: 3, Informative

    Normally I don't pimp Sun, but here's something that makes me think they still have a finger on the pulse of things:
    Read about plans for Sun's "Niagra" core

    I understand they hope to create blade systems using high densities of these multiscalar cores for incredible throughput.

    There's your parallel/grid computing. ;-)

    --
    Fuck Beta. Fuck Dice
    1. Re:Sun may already be ahead of the game here(!) by stevesliva · · Score: 2, Informative

      A more detailed article. IBM has been doing dual-core processors in it's flagship Power line for a few years now, although it appears higher numbers of cores per die will only be appearing in more experimental IBM projects. Except perhaps the PS3 Cell Processor, a collaboration of IBM and Sony. Since the Cell group is based in Austin, there's likely to be some collaboration between TRIPS and Cell. As a matter of fact, they sound very similar.

      --
      Who do you get to be an expert to tell you something's not obvious? The least insightful person you can find? -J Roberts
  11. Grid computing? by dan+dan+the+dna+man · · Score: 5, Informative

    I still think this is not what is commonly understood by the term "Grid Computing". Maybe it's the environment I work in but to me Grid Computing means something else

    And is exemplified by projects like MyGrid.

    --
    I don't read your sig, why do you read mine?
  12. Parallel Processors? by Anonymous Coward · · Score: 0

    How about the three ALU's in me Athlon? How's that for parallel?

  13. Grid confusion by Handyman · · Score: 5, Informative

    It's funny how people always seem to find a way to confuse what is meant by a "grid". The posting talks about a "4x4 grid" without clarification of the term "grid", which is confusing because grid computing has nothing to do with processing units being lined up in a grid. The "grid" in "grid computing" comes from an analogy with the power grid, not from any form of "grid layout". The analogy is based on the fact that with grid computing, you simply plug your "computing power client appliance" (not necessarily a PC, could be the fridge) into the "computing power outlet" in the wall (a network port, usually), and you can "consume computing power", like you would do with electricity. Computational grids don't even necessarily have to support parallel programs; it is easy to imagine grids that have a maximum allocated unit of a single processor. What makes such grids grids is that you can allocate the power on demand, when you need it, instead of that you have to have your own "computing power generator" (read: megapower CPU) at home.

    1. Re:Grid confusion by Anonymous Coward · · Score: 0

      That's why it's called Grid Processing and not Grid Computing.

  14. What sort of computations will this be good at? by rhetland · · Score: 4, Insightful


    I use parallel computing on a cluster, in which I divide up my computational domain into a number of chunks, and each chunk is farmed out to a processor. Communication between the processes is required at the chunk boundaries.

    For this case, I see how my code is partitioned, and I also understand (on a general level, at least) what the limitations on speed are: information based between the chunks.

    Now, how will this processor do its 'instruction level' parallelization? Will it be great at do loops (one 'do' per processer)? Will it be like a mini vector processor? What will break down the efficiency of the parallelization?

    I have found that efficiency in parallelization is very application dependent after about 8-32 procesors. Will this break that barrier?

    Most importantly, will it kick butt for MY applications?

    1. Re:What sort of computations will this be good at? by benpeter · · Score: 1

      Be very good at searching large key spaces, ie brute forcing encrypted material by testing every possible key.

      If they're cheap and you can get the density up high enough maybe AES won't last as long as we thought.

  15. Gridlike Computing Vs Grid Computing by jedigeek · · Score: 3, Informative

    We've all heard the new buzzword, "grid computing" quite a bit in the news recently.

    The article doesn't actually have anything to do with "grid computing", but the processor's design is like a grid. The term "grid computing" often refers to large-scale resource sharing (processing/storage).
  16. beowulf by Anonymous Coward · · Score: 0, Offtopic

    What is the theoretical size limit of a beowulf cluster? 255? 35xxx? 10^20 ?

    Has anyone thought of making a beowulf cluster of beowulf clusters yet?

    1. Re:beowulf by fitten · · Score: 1

      What is the theoretical size limit of a beowulf cluster? 255? 35xxx? 10^20 ?

      This is usually limited by the amount of resources on the platforms. At times, this has been governed by such things as the number of open sockets the OS supported and/or how long it took to open all the connections to all the machines before RSH or the like started timing out and closing the connections.

      Has anyone thought of making a beowulf cluster of beowulf clusters yet?

      Yes. Grid computing encompasses this idea (things like Globus, etc.)

    2. Re:beowulf by Adm1n · · Score: 1

      Let us expand upond an N-dimensional Hypercube by adding more hypercubes as long as the interconnects scale accrodingly, processing power would scale logarythimicly. Ie; 2 dim Hcube has 2 interconnects of equal bandwidth. 4 dim has 16 so your connection bandwidth must be at least n^2 (that's Nsquared) where n = processors. Thus your crossbar is created. Using typical Queing theory and provided that you have a lot of netowrk bandwith your next issue is routing information in and out. So 1Terraflop is not unfathomable.

  17. Network processors already implement this idea by Anonymous Coward · · Score: 0

    Take a look at the intel ixp-2800. A network processor containing 16 multithreaded microprogrammable 32 bit processors and an xscale core riding herd. All are tightly coupled with a multi-layered memory architecture. Fun to program.

  18. BS & hype by master_p · · Score: 4, Interesting

    The prototypes will include four Trips processors, each containing 16 execution units laid out in a 4 x 4 grid. By the end of the decade, when 32-nanometer process technology is available, the goal is to have tens of processing units on a single die, delivering more than 1 trillion operations per second.

    At 32 nanometers, Intel could put tens of HT pentium cores on a single chip, achieving the same result.

    "One key question is, Will this novel architecture perform well on a variety of commercial applications?"

    For computational problems that can be broken down into parallel computations, the answer is yes. For all the other types of problems, the answer is no. Although I have to admit that most algorithmic bottlenecks is in iterative tasks that are highly parallelizable.

    On Trips, a traditional program is compiled so that the program breaks down into hyperblocks. The machine loads the blocks so that they go down trees of interconnected execution units. As one instruction is executed, the next one is loaded, and so on.

    *cough* EPIC *cough* VLIW architecture *cough*

    I support parallelism and I am looking forward to seeing it on my desktop, as it will increase the computational power of my computer tremendously. Unfortunately, it will mean new compilers and maybe programming languages that have primitives for expressing parallelism.

    By the way, the transputer chip was promising. The idea of lots of computational units running in parallel is nothing new(maybe each memory block must have its own processor to locally process and compute the data).

    1. Re:BS & hype by Valar · · Score: 2, Informative

      It's not as much hype as you would think (in the interest of full disclosure, I am a UT EE student and about half of my posts now on /. seem to be talking about something the university has done...). Yes, grid computing is a bad term for it, because it's already taken. I'm not sure whose fault it was that it got labelled that, but I doubt it was one of the guys actually working on this. They all seem like competitent lads. Now for what I actually have to say:

      At 32 nanometers, Intel could put tens of HT pentium cores on a single chip, achieving the same result.
      Yes, but any more than 16 logical cores, and your x86 arch won't recognize them. Why? 4 bit cpu identifiers (each logical core under HT identifies itself as a normal processor).

      For computational problems that can be broken down into parallel computations, the answer is yes. For all the other types of problems, the answer is no. Although I have to admit that most algorithmic bottlenecks is in iterative tasks that are highly parallelizable.
      Very true, but no more true for TRIPS than for any other parallel system. Additionally, just about every computer now does a lot of things in parallel. Think of any multitasking OS. So, worse comes to worse, you can run x number of apps as normal serial executions (though TRIPS wouldn't run any currently exsisting commercial software-- new platform and all, and a test too, not something ready for production by any means).

      Unfortunately, it will mean new compilers and maybe programming languages that have primitives for expressing parallelism.
      I completely agree.

    2. Re:BS & hype by tiohero · · Score: 1

      One of the more interesting processor designs would be the FORTH based 25xC18 using 25 C18 cpu cores which could achieve up to 60,000 (!!!) MIPS using a very low power design. The 25xC18 was designed by Chuck Moore. The interesting thing about the FORTH processors is that they use an extremely small instruction set (~24 instructions) and require only ~10K transistors per CPU allowing for very fast and low power operation. It also allows one to add on-chip DRAM right next to the core allowing 1ns memory access to a small cache. I think stack based processors are the way to go when it comes to multiprocessor designs since stacks allow easy pipelining of instructions and data between processors.

      You can learn more about FORTH based processors here. Here's additional information about the 25xC18.

      The FORTH based processors have never become mainstream, I'm not sure why that is? If this thing ever gets into production, it will be pretty revolutionary.

    3. Re:BS & hype by 0rbit4l · · Score: 1
      At 32 nanometers, Intel could put tens of HT pentium cores on a single chip, achieving the same result.

      No, they couldn't, because HT pentium cores use way too much power to be packed in at that density. This (and other similar) research is based on using many simple (but fast) low-power cores, usually in an adaptive fashion. (e.g., for one app I use certain processor cores for one portion of processing, for another I use them for something else entirely - and the mapping is usually done explicitly either by the programmer or the compiler.)

      All the dynamic scheduling/out-of-order logic that modern processors use consumes massive amounts of power. Current trends in computer architecture are such that an HT pentium (or similar) processor will dissipate more heat per surface area than the surface of the sun (if you follow the roadmap guidelines for projected clock speeds). In other words, it's time to examine new architectures (which is exactly what this and many other projects are doing.)

  19. How does this compare to VLIW? by binaryDigit · · Score: 2, Insightful

    Forgive me if I'm off base here, but perhaps a proccie nerd can explain the differences between this design and say VLIW. They seem closely related, breaking the app into parallelizable chunks and sending them to n execution units. The article doesn't mention if the trips processing nodes can 'talk' to each other. If they can't, then this seems very similar in concept to vliw (if not different in physical and logical layout).

  20. Check out by Anonymous Coward · · Score: 0

    Grid Guru. It's a slash site devoted th Grid computing.

  21. read the comments from the horse's mouth by Ristretto · · Score: 4, Informative

    This story already appeared, but was posted by someone who was not confused by the use of the term "grid"... Doug Burger, one of the two key profs on this project (and no relation!), answered lots of questions, which you can see here.

    -- emery berger, dept. of cs, univ. of massachusetts

  22. Why parallel processors aren't common by *weasel · · Score: 4, Interesting

    ... because nearly all programs are data-centric. parallelizing execution of code has an upper-bound with regards to increased efficiency, particularly when considering the increased overhead in memory management and control flow.

    parallelizing the data-processing itself (Eg Seti@Home) whereby the data being worked on itself is spread amongst 'loosely parallel' execution units is much more practical, and doesn't suffer from the overhead involved in creating parallel processor servers, or even parallel execution chips. It also alleviates the memory bottlenecks of parallel execution cores.

    I always wondered what kind of an app demands the kind of big iron that Cray and NEC churn out - that couldn't be more cost effectively realized through distributed processing amongst many independent computers (a la Google).

    It seems, even cyclical, result-dependant processing (weather prediction) could be coded to work in such a manner.

    1000 bare bones p4 3ghz PCs (~$600) have more processing power ( 2500 MFLOPS each ) than a single X1 cabinet ( 819 GFLOPS @ $2.5M ) and as you can see - for less than 1/4 of the cost.
    ( 2.55 TFLOPS @ $600,000 vs 819 GFLOPS @ $2.5M )
    ( p4 MFLOPS hit 5700 each w/ SSE2 )

    Now I imagine there have to be exceptions. There -has- to be a reason to have such big iron for certain problems. There must be a reason that very smart people advise their superiors to buy up around $8b of this stuff each year.

    but i don't personally see the applications, and given the monumental cost of developing a new processor nowadays - the market doesn't seem to either.

    so that's my $0.02 as to why more complex esoteric parallel execution designed chips remain so rare.

    --
    // "Can't clowns and pirates just -try- to get along?"
    1. Re:Why parallel processors aren't common by rockmuelle · · Score: 3, Insightful

      Scientific and financial computing, especially modelling and simulation, are where parallel computers can make a difference.

      Many of the approaches to these problems take the form of a grid of elements that have local and possibly non-local interactions with each other. Each processor gets a subset of the points to work with and has to communicate with the neighboring processor's memory space to get information about neighboring points.

      In a cluster, handling the points at the edges (or any non-local effects) requires a network and possibly disk request. Compared to local memory, this is incredibly slow and can temporarily starve the processor.

      Big iron parallel systems address this by giving more processors access to the same memory and other shared resources, avoiding the costly network requests.

      Of course, the current super computers (ASCII *, etc) are all clusters, just with incredibly fast network connections.

      -Chris

    2. Re:Why parallel processors aren't common by goombah99 · · Score: 1

      Most progamming languages (C, java) dont parallelize efficeintly and others written for parrallism are too special purpose to warrant attention. On the other hand there is good old fortran which will surprise a lot of people because its written to allow implicit multi-processing and avoid shared memory distribution and concurrency bottlenecks. see this post on slashdot

      --
      Some drink at the fountain of knowledge. Others just gargle.
    3. Re:Why parallel processors aren't common by Anonymous Coward · · Score: 0

      Ahhh yes and if I had 1000 Yugo's spot welded
      together they would go faster than an Indy
      Formula-1 racer and it would be cheaper. ;)

      There are a few issues folks seem to forget...

      [1] Computational Density
      [2] Peak vs. Sustained Performance.
      [3] Power and Cooling Requirements
      [4] Managability and Regression, vis a vi
      SSI vs. non-SSI.
      [5] And that pesky latency issue. ;)

  23. AKA Reconfigurable Computing by yerdaddie · · Score: 3, Informative
    The ability to adapt the architecture for the workload, as discussed in this article, is something common to many different reconfigurable computing architectures like:
    Quite a number of researchers are looking at the performance and density adavantages of reconfigurable architectures in addition to the work mentioned in this article. What's really intriguing is considering how opreating systems could support reconfiguration. Doesn't seem to be much work on the subject.
  24. Wow, talk about a powerful compuer! by Anonymous Coward · · Score: 0

    They can use it to think up even more lame, far-fetched acronyms.

  25. Carly Fiorina by codepunk · · Score: 1

    Carly said it is all hype and we cannot use grid's for at least another 5 years. Obviously Carly does not read slashdot or own a Linux box.

    --


    Got Code?
    1. Re:Carly Fiorina by Moggie68 · · Score: 1

      Another instance of someone just having to snipe at a person in high position just because the said person lacks a Y chromosome. And yes, I've got one.

  26. And the projected date and time for by BigGar' · · Score: 0

    skynet to become selfaware is now what?

    --


    Shop smart, Shop S-Mart.
  27. connection machines too by entartete · · Score: 1

    http://mission.base.com/tamiko/cm/
    the connection machine was another parallel computing system (64k little bitty processors hooked together into a grid) that had a flurry of excitement around it (almost 70 of them in operation at the peak of activity!) and then sorta died off. alot of the problems with systems like this weren't really flaws in the basic idea, just economic issues. If you can make a cheap non parallel system run some ugly hack of solution to the problem in something semi close to the time that the elegant but expensive as far as price per unit of processing custom made parallel system can, then people aren't going to want to invest the money in a specialized system unless there is just no other way possible to get their work done without it. but being able to apply the same techniques that let moore's law bumble along should help things out.

  28. Main memory bandwidth limits HPC today by ChrisRijk · · Score: 2, Insightful

    If even with one CPU core, if your system is main memory bandwidth limited (or mostly), then extra cores won't help (much). So this kind of design looks good only for non bandwidth limited tasks, which is a much smaller market.

    They don't seem to be considering business servers here, but they are more main memory latency limited than bandwidth limited, so multiple cores can help a lot. But you need more than simply lots of cores to have a good design. A critical thing to have is major software support which means using an existing ISA, not a new one.

    So I'd expect this to be quite an obscure product in reality.

  29. Buzzword collision by BigGerman · · Score: 1

    Naturally, if it was called Slow-poke Faulty, Blindly Restrictive Procesing System I would be less inclined to trust this solution.

  30. PS3? by JAgostoni · · Score: 1

    Isn't this what the PS3 is supposed to use? Some sort of grid-like structure in their processor?

    1. Re:PS3? by Adm1n · · Score: 1

      Cell is a joint venture in vaporware by motorola and IBM, it's designed to be a "Massivelly Parallell Microprocessor" consisting of (last I read) 6 Dies on one core each to render a portion of your screen. Used in conjunciton with your broadband connection to render information. The problem bieng that brodband is horribly slow in terms of speed and throughput when compared with standard ethernet and high-speed crossbar architechures. Sony's CEO was quoted as saying that "Game developers wish to see a 1000 fold increase in compuational power and we will provide it in our next platform by using Grid-Computeing". I wonder what the Total Cost of Operation is on a Grid of PS3's?

    2. Re:PS3? by JAgostoni · · Score: 1

      Or the TCO of a Beo.... I won't do it, I just won't do it.

    3. Re:PS3? by Adm1n · · Score: 1

      Linkey Linkey Isin't google great, it's by far my favorite cluster to abuse.

  31. The Parrallel Processor by Serapth · · Score: 1

    In an age where clusters are becoming more prevalent for parallel computing I've often wondered where the parallel processor was. How about you?"

    I may be thinking in different terms than you, but my understanding of future chip design is, that multiple CPU cores on one chip, is basically becoming the norm. To some extent, is this what hyper threading does on the newest Intel chips? I recall also reading the PPC G5 chip in the newer Mac's has multiple processor cores.

    So, to answer... where are parallel processor's? Try best buy! ;-)

    1. Re:The Parrallel Processor by Adm1n · · Score: 4, Informative

      No no no.
      Ok, HT double clocks the Cache! so you have two cache's for the price of one! The G5 is a multicore chip so is Cell Linky and The Opteron are all multicore chips, the diffrence (apart for the arch!) is the way VLIW's are feed to each of these. They are NOT paralell processors, paralellisam can be defined as the maintence of cache coherence, it is either inclusive (cray) or excluseive (rs6000), and requries a lot of bandwidth (local x-bar versus network). Where as parallel computers are not cache coherent and have a remote x-bar architechure, it all adds up to the same hypercube.

    2. Re:The Parrallel Processor by Anonymous Coward · · Score: 1, Informative

      G5 aren't multiple core CPU. However, IBM POWER4, which they are derived from, are dual core CPU.

    3. Re:The Parrallel Processor by julesh · · Score: 1

      HT double clocks the Cache! so you have two cache's for the price of one!

      Huh? I thought hyperthreading gave you a second instruction pipeline so that when the first one doesn't provide enough instructions for the processors parallel execution units (which have been a feature since the pentium) instructions from a second thread can be executed with the spare power.

      paralellisam can be defined as the maintence of cache coherence, it is either inclusive (cray) or excluseive (rs6000), and requries a lot of bandwidth (local x-bar versus network)

      Again huh? Me, I though parallelism was simply "executing more than one instruction at the same time". Certainly maintenance of cache coherence is an important design problem for building large parallel systems, but really it isn't the 'definition' of parallelism.

      Where as parallel computers are not cache coherent and have a remote x-bar architechure, it all adds up to the same hypercube.

      WTF does that mean? Who modded this drivel as 'informative'?

  32. Cray's Ideas by Adm1n · · Score: 1

    Cray said "Modify the Algebra to suit your Hardware, don't kill your processors with floating point operations, instead use a diffrent more efficent method". And Intel Listened. Crossbar N-Dimensional hypercubes are great for decreaseing the wall-clock time on complex problems, most noteably simulations. The worlds Largest super computer (NEC's Earth Sim in Japan) is used to do just that. The issue is the netowrk bandwidth or moving information form one cache to another. That is costly and intorduces a processing tax on parallel information. Myrinet's solution is ultrafast interconnects so your crossbar is disgustinly fast. And essentially you are still dealing with a Hypercube, then the issue becomes the distrobution of information into and out of the cube.

  33. did the memory bandwidth get scaled up as well? by Anonymous Coward · · Score: 0

    big deal if i have 40 processers on a chip if i still can't get enough memory bandwidth to feed one of them.

  34. The Connetion Machine by bluethundr · · Score: 2, Insightful

    In an age where clusters are becoming more prevalent for parallel computing I've often wondered where the parallel processor was. How about you?"

    Danny Hillis, the guy who founded ThinkingMachines designed a mchine called The Connection Machine, (this story has a cooler, more sci-fi lookin' pic of the old beastie) the central design philosophy was to achieve MASSIVE computing power through parallelism. It had 65,535 procs, each of lived on a wafer with dram thereon and a high bandwidth connection to up to (if I remember correctly) up to 4 other of the procs. Young sir Danny wrote a book on his exploits, well worth checking out (seemingly, it's been calling to me from my bookshelf for about a year now).

    And as someone pointed out, it seems we've seen this topic before. I'd have modded him up, (hint, hint) but I really like mentioning the connection machine where appropriate.

    --
    Quod scripsi, scripsi.
    1. Re:The Connetion Machine by aminorex · · Score: 1

      No, actually the CM-1 and CM-2 both placed 16
      1-bit bit-slice processors on each chip, so a
      65k node CM-2, for example, had 4k "beta" chips.
      You could program it as a 65kb-wide VLIW machine.
      But TMC quickly discovered that the bulk of sales
      opportunities were related to the Cold War, and
      for that purpose what was wanting was not the
      vast symbol-pushing capacity of the CM-1, but
      lots and lots of FLOPS. So they added FPUs.
      The FPUs used blocks of 32 1-bit CPUs like MMUs.

      This lead to enormous complications. In order
      to maximize the throughput of the FPU, you had
      to keep it's pipeline full, and that meant the
      bit-processors had to fill a register file with
      data, and act as controllers for the FPUs which
      operated on the register file.

      It was almost impossible to code well for this
      machine, because TMC kept most of the architecture
      secret, and would only let you program it using
      high-level abstractions. That worked fairly well
      with the bit-processors, which fit very well with
      the PL design, but for the FPUs, where each data
      word was a 1-bit slice through the memory of 32
      bit-cpus, and access to memory was through a custom
      "transposer", it sucked rocks.

      An Herculean task, writing a data-parallel Fortran
      compiler to abstract the "slicewise" machine
      architecture, and hence provide "dumb" fluid
      dynamicists and molecular modellers near full-speed
      access to the FPUs was eventually successful,
      but by that time the architecture was obsoleted.

      --
      -I like my women like I like my tea: green-
  35. Die Yields by dragonknight831 · · Score: 1

    I'm just curious what will happen to the yields when they are busy cramming more cores onto a single die. Already they have to discard or down-rate many of the die on each wafer. What will happen when you have several cores, any of which might be faulty and ruin the remainder of the die.

    1. Re:Die Yields by Adm1n · · Score: 2, Informative

      Die verifacation will be modified to accomidate the core level verifacation prior to multiple cores bieng used. Since you are layering dies on one another they will be verified individually, then as a whole if they do not add up as individuals then off to the scrap heap. But that all depends on the number of cores and process. Keep in mind that currently design sofware limits are around 20K layers of interconnects, so if a core is only 20 layers of interconnects (not uncommon) it's only 100 layers if its scrap and since it's vapor deposition the losses are neglegable (compareable to white noise or pennies on the hundred). Fab's spend more finding problems (and fixing them) than they do on materials. Yelds are much more prone to design flaws and external condition errors than failure due to a singular element (rmember the Pentium Floating Point error due to the capacitors not bieng sprayed at the right density?).

  36. Deja Vu all over again by AlecC · · Score: 4, Interesting

    This is very much not new. The basic idea has come and gone several times in the last twenty years, to my knowledge. Both SIMD and MIMD systems have been tried several timed. NCR even had one called the Grid, IIRC. Thinking machines (as seen on Jurassic Park I). The Inmos tranputer was designed for exactly this sort of connectivity. Intel had a development machine (?iWarp?) which tried to use it. And I am sure there were others that I don't recall. (As a user and fan of the transputer, I used to follow the field from a distance).

    But the problem has always been the programming. Ordinary software does not map very well onto these architectures. Certain specific problems can be mapped well onto them, which results in spectacular performance claims for the system. But generally such systems perform well only on those problems for which they were specifically designed.

    Communications is a common reason for failure. They scale very badly. In the early days of development, the first few processors have any-to-any connectivity, so the application will really fly. But since the connectivity rises as the square of the nuymber of processors, this cannot hold for very long. As soon as connectivity becomes limited, communications bottlenecks start to appear, and you get processors being held up either sending messages or waiting for them to arrive. Buffering (which many did not implement in their communications architectures) helps, but itm doesn't solve the problem. (A bit like lubrication - a small amount brings a considerable improvement in performance, but past a certain point, it only adds to costs).

    Another problem is load balancing. It is very difficult to design your system so you don't end up with most of the CPUs waiting for one, overloaded, CPU to finish its job. The only architectures which really worked were the farm model - a central dispatcher sends tasks to a "farm" of identical "workers", which therefore request work units as and when they need them. This means that the whole code for the system has to be loaded into each worker; not necessarily a killer at todays memory prices, but it would be nice to be more efficient. It also requires the task to be divisible into a vey large number of chunks, which can executed independently without too much communications. OK for large volume simulations etc., but a disaster for (say) database programming, image/voice recognition.

    It also doesn't help that not may people really think multi-threaded in their program design. Again, no-one that I know has a good Object Oriented multi-threading model. Current models are analagous to either pre-structured programming or early structured programming. Which means that people, reasonably, approach multi-threading as a dangerous monster to be approached only whan absolutely necessary, with great care, and if possible in flame-proof armour. For this sort of system to be much use we need a development which does to current threading what inheritance did to pre-OO languages: something that makes is so simple that, one over the hump of initial unfamiliarity, people use it all the time without even thinking about it.

    I designed one of the larger heterogenous transputer based system to ship - up to 100 transputers in 6 different roles. Load and communications balancing was a real hassle from the the day the system first started to work for real, and we were constantly tuning buffers, fiddling with routing algoirithms, movong bits or processing from this CPU to that to get the perfomance up. (Not to mention that inmos completely blew their second generation transputer, which we had been hoping would solve many of our problems).

    --
    Consciousness is an illusion caused by an excess of self consciousness.
    1. Re:Deja Vu all over again by Anonymous Coward · · Score: 0
      But the problem has always been the programming. Ordinary software does not map very well onto these architectures. Certain specific problems can be mapped well onto them, which results in spectacular performance claims for the system.

      I agree with your post. but isn't the issue of programming just the normal learning curve for a new model of software design? Problems that can map well into distributed and/or parallel architecture will get huge performance improvement, but could it be that many more engineering problems can use distributed/parallel processing? Just because programmers are using procedural techniques to solve a problem, it doesn't mean the problem is procedural in nature.

    2. Re:Deja Vu all over again by Adm1n · · Score: 1

      Well why not use the systems and algorithims in place in commerical clusters like Mosix and OpenMosix as models and do simulations using current traffic queing theorey prior to any hardware design? Moshe Bar devloped OpenMosix as a cluster that operates by farming threads to the most available machine and the code is free. Using that model one can then develop a decent hardware platform that would be able to accomidate it's own monitroing system as part of the communications infrastructre.

  37. Grid posting by Petronius · · Score: 1

    How long before Taco also posts it?

    --
    there's no place like ~
  38. project home page by the+quick+brown+fox · · Score: 2, Informative
    project home page

    They have some papers available there...

  39. Doug Burger is wicked cool by Anonymous Coward · · Score: 0

    I went to UT and had the privelege of taking computer architecture with Doug Burger about 4 years ago, one of the co P.I.s of the project. He used to give us rock hard exams ( but buy us pizza to ensure nobody felt bummed out because of them ). Also used to give tons of homework. However, he never came across as evil, just as someone who genuinely wanted us to learn. He's incredibly smart, knows what he is going and is good natured to boot. Check out some of the fun quotes in his plan I went to many lectures of his about his grid architecture project. At that time he had many graduate students working on it - some working on a simulator for the processor, some working on a compiler and some working on studies of what applications are going to take advantage of the new architecture. I'm sure this project is going to turn out to be really cool.

  40. Re:Image a... by Anonymous Coward · · Score: 0

    Ahh, there it is. That's the post i came here to see ;)

  41. I'm sorry. by fshalor · · Score: 1

    I read this as "Girl Processing" and was preparing a WTF? comment.

    Internal parsing error reported. :)

    I always thought the "single" processor paradigm has gone on way too long. I guess soon we'll be able to plug in multiple processors like we do ram.. But a question.
    (1/req)=(1/R1)+(1/r2)+(1/R3) ... Wouldn't it make more sence to run them in series? :) (jk)

    --
    -=fshalor ::this post not spellchecked. move along::
  42. The Grid... by hey · · Score: 1

    ... As of August 14 seems like a terrific idea for electric power. Let's copy that fine idea of dependency on the perfect working for a system several states away.

  43. Fortran 95 oddly enough is multi-processor aware. by goombah99 · · Score: 4, Informative
    Fortran is NOT for every day programming of word processors and such. However the Modern Fortran Language probably ought to be the choice for most scientific programming, its just that people think of it as an "old" as in decrepit Languange and dont learn it.


    for parallel processing fortran boast many language level features that give ANY code implicit parallelism and implicit multi-threading and implicit distribution of memory WITHOUT the programmer cognizantly invoking multiple threads or having to use special libraries or overloaded commands.
    An example of this is the FORALL and WHERE statements that replace the usual "for" and "if" in C.

    FORALL (I = 1:5)
    WHERE (A(I,:) /= 0.0)
    A(I,:) = log(A(i;0)
    ENDWHERE
    call some_slow_disk_write(A(I,:)
    END FORALL

    the FORALL runs the loop with the variable "i" over the range 1 to 5 but in any order not just 1,2,3,4,5 and also of course can be done in parallel if the compiler or OS, not the programmer, sees the opportunity on the run-time platform. The statement is a clue from the programmer to the compiler not to worry about dependencies. Moreover the program can intelligently multi-thread so the slow-disk-write operation does not stop the loop on each interation.

    The WHERE is like an "if" but tells the compiler to map the if operation over the array in parallel. What this means is that you can place conditional test inside of loops and the compiler knows how to factor the if out of the loop in a parallel and non-dependant manner.

    Moreover, since the WHERE and FORALL tell the compiler that the there are no memory dependent interactions it must worry about. thus it can simply distibute just peices of the A array to different processors, without having to do maintain concurrency between the array used by different processcors, thus elminating shared memory bottlenecks.

    Another parallelism feature is that the header declaration not only declare the "type" of variable ,as C does, but also if the routine will change that variable. This lets the compiler know that it can multi-thread and not have to worry about locking an array against changes. In the example, the disk-write subroutine would declare the argument (A) to be immutable. Again the multi-threading is hidden from the user, no need for laborious "synchronize" mutex statements. It also allows for the concept of conditionally-mutable data.

    Other rather nice virutes of FORTRAN is that it uses references rather than pointers (like java). And amazingly the syntax makes typos that compile almost impossible. that is, a missing +,=,comma, semi colon, the wrong number of array indicies, etc... will not compile (in contrast to ==, ++, =+ and [][] etc ...).

    One sad reason the world does not know about these wonderful features, or repeats the myths about the fortran language missing features is due to GNU. yes I know its a crime to crtisize GNU on slashdot but bear with me here because in this case they desereve some for releasing a non DEC-compatible language.

    for the record, ancient fortran 77 as welll as modern fortran 95 DOES do dynamic allocation, support complex data structures (classes), have pointers (references) in every professional fortran compiler. Sadly GNU fortran 77, the free fortran, lacks these language features and there is no GNU fortran 95 yet. This is lack prevents a lot of people from writing code in this modern language. if Gnu g77 did not exist the professional compilers would be much more affordable. So I hope some reader who know about complier design is motivate to give the languishing GNU fortran 95 project the push it needs to finnish.

    In the age of ubiquitous dual processing fortran could well become a valuable scientific language due to its ease of programming and resitance to syntax errors

    --
    Some drink at the fountain of knowledge. Others just gargle.
  44. MOD UP +insightful+informative by Anonymous Coward · · Score: 0

    My God, that is probably the most insightful and informative comment I have ever read on slashdot, bar none!

  45. Read the Article by EnglishTim · · Score: 2, Insightful

    Read the article - this isn't the case that you've got a whole bunch of traditional processors and you try and divide the work between them. They're talking about the CPU itself being split into several smaller general units, so that each instruction gets excecuted by several of these units. The instructions are grouped together and then sent to the CPU in blocks. All the work for that block is then split between the units, taking into account any interdependencies. I suppose the closest thing to it would be to have microcode being executed in parallel.

    1. Re:Read the Article by AlecC · · Score: 1

      From the article: The prototypes will include four Trips processors, each containing 16 execution units laid out in a 4 x 4 grid. By the end of the decade, when 32-nanometer process technology is available, the goal is to have tens of processing units on a single die, delivering more than 1 trillion operations per second.

      You've got a whole bunch of non-traditional processors and you try and divide the work between them.

      The individual CPUs are, as you say, more flexible than current CPUs. Like hyperthreading and deep pipelining, that will bring a one-off performance improvement of perhaps, two, three or four times. Not to be sneered at - but most systems can get a four times improvement by the brute force method of throwing, say, ten processors at it. In the small number of processors range, overheads can be low enough that a multi-cpu system only loses a large fraction of its processing power on overheads. Given the economies of scale, it seems to me that it is cheaper to use off-the-shelf components, rather than do a lot of expensive development of a new chip - which you will probably have to manufacture using a process a cople of years older (and therefore slower) than the laytest, greates ptocess intel are using for the newest top-of-the-line CPU.

      Parallelism won't do much unless we get tens of parallel units working at the same time.

      --
      Consciousness is an illusion caused by an excess of self consciousness.
  46. karma whoring. by *SECADM · · Score: 1

    Since the article doesn't really have to do with grid computing. Here are some real Grid Computing links.

    Globus Toolkit
    LSF
    openPBS
    gridengine
    OSCAR
    ROCK MPP
    maui

    and last but not least: beowulf cluster
    ---

    --
    sure I'll have a sig.
  47. Re:Fortran 95 oddly enough is multi-processor awar by sketerpot · · Score: 2, Informative

    There's a good book explaining a lot of this stuff in detail available from O'reilly. I can vouch for it having some neat stuff, and it covers how to write fortran in such a way as to take advantage of the parallelism features.

  48. Gnu Fortran 95 compilation server? by goombah99 · · Score: 1
    For those who want to help here's the link to the gnu g95 page. The fact this is not out yet is community wide shame.

    I wonder if there is some way someone could practically and legally set up a compilation server for F95 using a non gnu fortran. One could probably talk one of the proprietary compilers (Portland group or Absoft) into allowing this since it would actually promote sales of their products.

    The reason this would improves sales is that This would alleviate the dillema programmers face. Write in crippled GNU syntax and have your program compilable by the masses or write in a sane, uncrippled syntax and produce great code that's easy to write, read and debug, and runs many times faster, but can only compile on an expesive compiler. the solution is to have a compilation server that serves a wide variety of target platforms.

    The developers still buy the pro fortran since the server would be impractical for development. But it would allow end users to compile the source. thus it would increace the viability of fortran as a language and improve sales of the compilers

    --
    Some drink at the fountain of knowledge. Others just gargle.
  49. Grid computing: get a clue by hackrobat · · Score: 1
    Today I finally decided to get a clue about grid computing. So I went over to IBM developerWorks, and followed the link to this "conceptual flyover" article. Having developed enough interest, I decided to check out Foster's original paper called the Anatomy of the Grid. Impressive!

    Links:

    See also: Throughput Computing
  50. Playstation 3 by Anonymous Coward · · Score: 0

    Isn't this what the new Playstation 3 cpu is based on? Single chips that contain multiple processing cores?

    Designed by the "grid" masters themselves -- IBM.

  51. Urgonomics by Silverblade · · Score: 1

    I am new at this. But i probably do know that if this is happening then someone is upgrading on this and so on and so on. See now we are getting into urgonomics. Man and Machine. We won't even need the internet. We will be the internet. Mankind will be the internet. With this grid processing, trillion bites and all. Imagine it being upgraded. I'm only 15 but i have amazing ideas about this stuff. I am a computer person. Any comments tell me. Yes i know i rambled but i need someone to tell

  52. Re:Fortran 95 oddly enough is multi-processor awar by Pig+Bodine · · Score: 2, Informative
    Sadly GNU fortran 77, the free fortran, lacks these language features and there is no GNU fortran 95 yet. This is lack prevents a lot of people from writing code in this modern language.

    I wouldn't put much blame on GNU. Fortran 77 was a fairly unpleasant language, even before GNU existed. Compiler extensions sometimes helped but weren't too great for portability.

    Not that I don't want to see a GNU Fortran 95, but if you can tolerate free as in beer software, Intel makes their fortran compiler available for free for noncommercial use on Linux: IFC

    There is also the F programming language which is a (mostly) tastefully selected subset of Fortran 95: F. Mostly it just throws out redundant features and stuff inherited from Fortran 77. It's a little picky in a teaching-language sort of way and takes some getting used to, but I have ported code to F without pulling my hair out. And the code did end up a bit clearer for the changes.

  53. Can't wait... by Anonymous Coward · · Score: 0

    ...to see the heatsink on a 1THz, 16PU on die processor. Two cases? One for the liquid nitrogen cooling system, the other for your 48x dvd burner, etc.

  54. the difference being... by dioscaido · · Score: 1

    ... that parallel computers are prohibitively expensive, compared to a networked cluster, due to the hardware involved.

  55. Legacy by Anonymous Coward · · Score: 0

    one word: Atari Transputer

    oldschool hardware kicks ass ;)

  56. Good question by epepke · · Score: 2, Interesting

    I spent 13 years at the Supercomputer Computations Research Institute, an interdisciplinary research institute whose job it was to figure such things out. Amongst other goodies, we had the first CM-2 (a SIMD box with 65536 processors) with floating point chips, at the time the fastest machine in the world. We also had a homegrown machine for quantum chromadynamics. And a cluster with 150+ nodes, and some shared memory machines, yada yada yada. Lots of stuff.

    So, from my experience:

    It's a little bit tricky to do. Sometimes you find an algorithm that someone abandoned fifty years ago that turns out to map better onto the hardware. However, it isn't all that tricky to do, and there are plenty of algorithms and libraries to make the job easier.

    But it still doesn't happen anyway, because even a small amount of work is more than no work at all. And besides, what people want to do is run their old dusty decks but just have them run faster. And in the mean time, Intel has just come out with a faster scalar processor, so why bother?

    The only thing I can see coming out of this is if, say, NVidia makes a faster graphics card based on it.

    1. Re:Good question by SiJockey · · Score: 1

      Just to be clear, what we are proposing is a faster scalar processor that happens to have lots of arithmetic units, which is optimized (through lots of speculation) to run single threads quickly. We do break binary compatibility, but are working on a static translation tool to convert dusty deck binaries into TRIPS binaries with no programmer (obviously) intervention. That being said, we are incorporating modes where graphics and DSP-type workloads can take advantage of all those arithmetic units. We'd really like to merge the general processing and DSP/graphics markets, and our dataflow-like ISA allows different application types to be automatically (not by the programmer) mapped to high-frequency, highly-concurrent substrates but still be treated as a single thread.

      --
      --+-- Doug Burger, UT-Austin Computer Sciences
  57. It is still a CPU with parallelism bolted on by Anonymous Coward · · Score: 0

    For the best parallel performance you have to give up serial performance, and that is something the main processor lines cannot afford to do. Parallelism even when extensive is just something to use up all the extra gates they have.

    The most powerfull parallel designs will come from areas which dont have to deal with legacy and can invest a lot of money for architecture development. So that pretty much means consoles and PC graphics ... since m$&Nintendo are not investing enough and the graphics market is unstable the most promising is IBM&Sony's Cell.

    The only other market which can use processors designed for maximum parallel performance is HPC, and that market is just peanuts.

  58. CPU 'Blackouts'? by Anonymous Coward · · Score: 0

    What if there are more clients needing the processing power that the grid can provide, or when one of the 'generators' shuts down? Given how often we have to deal with Windoze and virus, will it a local 'blackout' leaves 50 billion users with no computing powers? This kind of computing grid sounds like an accident waiting to happen, and a much more devastating one too. We no longer need centralized computing network for our processing needs, and we should not start going backwards now.

    1. Re:CPU 'Blackouts'? by Handyman · · Score: 1

      This is definitely something that could happen if dependence on such a centralized system would ever become the norm. However, what will probably happen is that there will be a lot of locality in the processing power supply, e.g., devices in your house normally use your own PC (or maybe the PC of someone close to you), if they don't use it fully then others can use it (and you actually get paid for this!). You then have a system where you're not dependent on your own PC's computing power anymore, and if your PC accidentally breaks down there is always backup power to be drawn from a bit further away so that your fridge can continue to do it's very important calculations (e.g., chemical analysis of the gases in the fridge to detect rotting food, or something). Shortages only become a problem when the system as a whole has undercapacity. Even in that scenario, the only thing that can happen is that some computation jobs are denied. In addition, market mechanisms (e.g., rising prices of computing power that accompany the higher demand) and the fact that people pay and get paid directly for their computer power (micropayments!) will make sure that undercapacity will not occur, because the more price-conscious users will back out from using too much computing power if the price gets too high. Currently the total computation capacity in the world is a factor 10 greater than what is actually used (given that most PCs sit idle most of the time, even when they're being used!), so I don't expect problems soon. :)

    2. Re:CPU 'Blackouts'? by Anonymous Coward · · Score: 0

      The problem may not be resolved by having untapped computing power that is otherwise never get used. As seen by the recent blackout, nuclear generators are forced to shut down when they are still perfectly functional, creating cascading overload. The problem won't be solved just by getting more generators. The computing grid must also has strong security features and reasonable amount of autonomy (e.g. allocating at least x GFLOPs to run home appliances or using separate computers for household) to avoid CPU 'blackout' to spread through the entire world.

  59. CPU 'Blackouts'? by Anonymous Coward · · Score: 0

    What if there are more clients needing the processing power that the grid can provide, or when one of the 'generators' shuts down? Given how often we have to deal with Windoze and virus, will a local 'blackout' leaves 50 billion users with no computing powers? This kind of computing grid sounds like an accident waiting to happen, and a much more devastating one too. We no longer need centralized computing network for our processing needs, and we should not start going backwards now. Hopefully we don't come to a society where we have to rely on a certain Blue NAVI from Lan to blast out the system errors...

  60. Not hard to program by SiJockey · · Score: 1

    Actually, the goal for this processor is to keep increasing single-thread performance, and not just by pumping up the clock speed, but by doing more ops per cycle. So, we want to increase performance *without* putting programmers through all the pain of parallelizing their code into fine-grained chunks.

    --
    --+-- Doug Burger, UT-Austin Computer Sciences
  61. Ramifications for encryption? by MMHere · · Score: 1

    Are processors such as the one proposed by the end of the decade any threat to encryption products with small keys?

    I.e., how soon will the average processor available on the street be able to crack a 56-bit DES key? A 128 bit key? Will a 1024 bit key ever be crackable by brute force?

    We keep hearing that "all the kings computers and all the kings men" could never crack 1024 bits by brute force in millenia of trying. But does the continued exponential advancement of computing power threaten this state of affairs?