Stories
Slash Boxes
Comments

SoylentNews is people

posted by Fnord666 on Tuesday May 14 2019, @07:43PM   Printer-friendly
from the gate-twiddling dept.

I'm tired of the dominance of the out-of-order processor. They are large and wasteful, the ever-popular x86 is especially poor, and they are hard to understand. Their voodoo would be more appreciated if they pushed better at the limits of computation, but it's obvious that the problems people solve have a latent inaccessible parallelism far in excess of what an out-of-order core can extract. The future of computing should surely not rest on terawatts of power burnt to pretend a processor is simpler than it is.

There is some hope in the ideas of upstarts, like Mill Computing and Tachyum, as well as research ideas like CG-OoO. I don't know if they will ever find success. I wouldn't bet on it. Heck, the Mill might never even get far enough to have the opportunity to fail. Yet I find them exciting, and much of the offhand "sounds like Itanium" naysay is uninteresting.

This article focuses on architectures in proportion to how much creative, interesting work they've shown in public. This means much of this article comments on the Mill architecture, there is a healthy amount on CG-OoO, and the Tachyum is mentioned only in passing.

https://medium.com/@veedrac/to-reinvent-the-processor-671139a4a034

A commentary on some of the more unusual OoO architectures in the works with focus on Mill Computing's belt machines.


Original Submission

 
This discussion has been archived. No new comments can be posted.
Display Options Threshold/Breakthrough Mark All as Read Mark All as Unread
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
  • (Score: 1) by shrewdsheep on Wednesday May 15 2019, @09:31AM (1 child)

    by shrewdsheep (5215) on Wednesday May 15 2019, @09:31AM (#843747)

    "What effect will the CPUs designed to optimize deep learning algorithms have?", ... I am wondering on what? Isn't the really interesting question: "What will be the effect of deep learning algorithms used to optimize CPUs?" (on their performance)

  • (Score: 2) by HiThere on Wednesday May 15 2019, @04:49PM

    by HiThere (866) Subscriber Badge on Wednesday May 15 2019, @04:49PM (#843885) Journal

    It depends on which way you are looking. My guess is that if you measure bits processed per second you wouldn't see any change, but would you want to run an accounting program on a Turing machine?

    So. If you're using an algorithm that is inherently "embarrassingly parallel" on a single threaded machine, the time of execution will be a lot longer than if you run it on a strongly parallel machine. And deep learning can be designed in a way close to "embarrassingly parallel". There *are* choke points, but most of them can be worked around. Think of an n-way parallel message passing system with immutable messages. That can scale with the number of independent threads available. There *is* overhead, but not excessive. Each thread needs an input queue, and it needs to be able to determine the address of the threads that it wants to send messages to. (This isn't a deep learning specification, but it's a simplification I often use to think about it with.) A system designed for this kind of thing wouldn't work that well on an inherently sequential process, but it would work quite well for things like pattern recognition (and I don't mean regular expressions).

    I really doubt that this will become the dominant type of system, as language is an inherently serializing mode of thinking, including not only natural languages, but almost all computer languages. Prograf was an attempt to abstract a parallel mode of thought, but it was never very popular, died with the pre-OSX Mac, and was implemented in a serial fashion for a serial computer. I understand that there are other dataflow languages around, but I've never been exposed to them. (Among Prograf's failings was that it was an inherently graphical language, so the programs weren't very dense in information on an "area of display" basis. This made it hard to see much of the program at once. People seem to keep making this mistake. Look at Scratch or E-Toys. They work for toy examples, but anything serious takes up so much screen space that you can't see enough at once to understand what's going on.)

    However, not being dominant isn't the same as unimportant. They will run certain kinds of programs so much faster that there's essentially no comparison. It's like quantum computing in that way. And I also doubt that that will ever become a dominant form, but if they can stabilize things it may be very important for a very important subclass of problems.

    --
    Javascript is what you use to allow unknown third parties to run software you have no idea about on your computer.