... And UNIX For All

Discussions on more advanced topics such as monolithic vs micro-kernels, transactional memory models, and paging vs segmentation should go here. Use this forum to expand and improve the wiki!
User avatar
Owen
Member
Member
Posts: 1700
Joined: Fri Jun 13, 2008 3:21 pm
Location: Cambridge, United Kingdom
Contact:

Re: ... And UNIX For All

Post by Owen »

Rusky wrote:Those challenges have been faced by every company to break into the CPU market, including Intel (vs IBM), AMD (with AMD64), and all the ARM manufacturers. Look at the companies that license and manufacture their own ARM CPUs. They have essentially the same problem (minus creating the architecture) and are doing very well for themselves, even threatening Intel in some areas. It's definitely a possibility.
Intel produced the first microprocessor (a major leap in its own right), and gained traction in the marketplace with the 8008 and increasingly the 8080. Their meteoric rise, of course, is attributable to the 8086/8088, which IBM picked because it was, of the processors available at the time, (A) cheapest, (B) could address more than 64kB of memory (a necessity of the era), (C) had a large suite of peripheral chips (simplifying the design and making it cheaper), and (D) required minimal external glue.

AMD started as a second source of Intel; they never had to break into the market to anywhere near the same extent. Consider that, if you sell a compatible microprocessor to an existing market-dominant party, then it is only the capabilities of your hardware, your cost, your marketing and any contracts your competitors may have taken out which restrain you. AMD64 was a simple offering of what everybody wanted (x86 compatible 64-bit CPUs) while Intel was caught with their pants down (they believed their own IA64 kool-aid, while anybody with in-depth knowledge of CPU design should have seen the disaster of a design that was a mile away)

ARM, of course, was purpose built by Acorn for their RISC PCs; it kind of fumbled along in that space for a while. When developing the Netwon, Apple went hunting for a low power, low interrupt latency, high performance processor. ARM was closest to their requirements, so they worked with Acorn to spin off the ARM division as Advanced RISC Machines, where they co developed the ARM610, which was used in the Newton. ARM cores were low power, small, and available for licensing; they were the right core at the right time, and therefore started getting designed into everything from PDAs to fridges.

Note that, in both the cases of Intel and ARM, they were architectures with cores available in the right place at the right time. Or, they happened to find their niche before anybody else did. This is a market where inertia is not to be underestimated.
Rusky wrote:The Mill has a cheaper and faster design, which will significantly lower the cost. They estimate a 10x performance/power increase over traditional OoO superscalar designs for good, well-analyzed reasons- even early on it has a good chance of matching Intel's power/performance, if not beating it, for the markets they target. That is their business model, after all.
The Mill will always suffer the intrinsic disadvantage that it will never be able to match Intel's fabs, nor volumes. Unless they have managed to secure very significant investments, they will not be able to afford leading edge process nodes. This will limit clock speeds, power efficiency, and therefore performance. They will be paying higher prices per CPU, because their CPUs will cover a higher silicon area and will be produced in lower volumes, plus the need to recoup high setup costs. Additionally, larger silicon areas mean lower yields.
Rusky wrote:The software really isn't a problem either. The Mill is designed to run regular old off-the-shelf C code, including Unix kernels, so most applications will see the benefits immediately on recompile (using LLVM as the backend, so even that won't take much/any effort). While a Linux port may not take full advantage of the design, it will still benefit from it, with no real performance penalties.
Some of the benefits will be available while running 'legacy software', but not all. Unmodified apps will be unable to exploit portals, for example
Rusky wrote:Your expected scenario is still possible, but I don't expect it. I expect it to break into some niche (server farms might be easier?) and grow from there. And like I said before, if their patents get sold off, many aspects of the design could show up in a next-gen Intel or ARM or something. Some of us will likely see at least some aspects of it.
I wish them luck; they have good people. I think their architecture design commits some sins (there are already something like 4 sub variants of it, for example; all upwards compatible, but of course you need to recompile your code for each variant for best performance. They are nearly committing the VLIW sin). Their best bet is to enter the supercomputer space, I think; but I'm not sure they can muster the resources to do that.

A lot of their performance comes from the Belt. This is very clever, but hard to implement into existing processors. In other words, I would not expect it to transition to other hardware. Some of their other functionality might. Things like portals are cool, but probably difficult to transfer. Additionally, much existing software is engineered around the expense of system calls; in other words, "legacy software" is written to avoid system calls, which means system calls are not generally a major optimization target for processor designers.
User avatar
Brendan
Member
Member
Posts: 8561
Joined: Sat Jan 15, 2005 12:00 am
Location: At his keyboard!
Contact:

Re: ... And UNIX For All

Post by Brendan »

Hi,
Owen wrote:
Rusky wrote:Those challenges have been faced by every company to break into the CPU market, including Intel (vs IBM), AMD (with AMD64), and all the ARM manufacturers. Look at the companies that license and manufacture their own ARM CPUs. They have essentially the same problem (minus creating the architecture) and are doing very well for themselves, even threatening Intel in some areas. It's definitely a possibility.
Intel produced the first microprocessor (a major leap in its own right), and gained traction in the marketplace with the 8008 and increasingly the 8080. Their meteoric rise, of course, is attributable to the 8086/8088, which IBM picked because it was, of the processors available at the time, (A) cheapest, (B) could address more than 64kB of memory (a necessity of the era), (C) had a large suite of peripheral chips (simplifying the design and making it cheaper), and (D) required minimal external glue.

AMD started as a second source of Intel; they never had to break into the market to anywhere near the same extent. Consider that, if you sell a compatible microprocessor to an existing market-dominant party, then it is only the capabilities of your hardware, your cost, your marketing and any contracts your competitors may have taken out which restrain you. AMD64 was a simple offering of what everybody wanted (x86 compatible 64-bit CPUs) while Intel was caught with their pants down (they believed their own IA64 kool-aid, while anybody with in-depth knowledge of CPU design should have seen the disaster of a design that was a mile away)

ARM, of course, was purpose built by Acorn for their RISC PCs; it kind of fumbled along in that space for a while. When developing the Netwon, Apple went hunting for a low power, low interrupt latency, high performance processor. ARM was closest to their requirements, so they worked with Acorn to spin off the ARM division as Advanced RISC Machines, where they co developed the ARM610, which was used in the Newton. ARM cores were low power, small, and available for licensing; they were the right core at the right time, and therefore started getting designed into everything from PDAs to fridges.

Note that, in both the cases of Intel and ARM, they were architectures with cores available in the right place at the right time. Or, they happened to find their niche before anybody else did. This is a market where inertia is not to be underestimated.
Exactly. If you have a look at CPUs, we've mostly got 80x86, ARM and MIPs dominating different markets. They are all about 30 years old, and nothing that's been introduced in that time (including Intel's own Itanium) had significant market penetration. The closest is PowerPC/Cell (still 20 years old), and only due to major funding from a massive company who had their own foundries (IBM).
Rusky wrote:The Mill has a cheaper and faster design, which will significantly lower the cost. They estimate a 10x performance/power increase over traditional OoO superscalar designs for good, well-analyzed reasons- even early on it has a good chance of matching Intel's power/performance, if not beating it, for the markets they target. That is their business model, after all.
Until working chips are actually available they can estimate whatever they like. If the chips are ever available in usable/working systems, then we can find out how wrong their worthless estimates were.
Owen wrote:
Rusky wrote:The software really isn't a problem either. The Mill is designed to run regular old off-the-shelf C code, including Unix kernels, so most applications will see the benefits immediately on recompile (using LLVM as the backend, so even that won't take much/any effort). While a Linux port may not take full advantage of the design, it will still benefit from it, with no real performance penalties.
Some of the benefits will be available while running 'legacy software', but not all. Unmodified apps will be unable to exploit portals, for example
Yes; and without software that's able to exploit key features (e.g. portals) they aren't going to get the "10x performance/power increase" they've estimated.
Owen wrote:I wish them luck; they have good people. I think their architecture design commits some sins (there are already something like 4 sub variants of it, for example; all upwards compatible, but of course you need to recompile your code for each variant for best performance. They are nearly committing the VLIW sin). Their best bet is to enter the supercomputer space, I think; but I'm not sure they can muster the resources to do that.
I wish them luck too (I honestly do hope to see systems using Mill one day, I just don't think I ever will).

I'm not too sure about the super-computer space (I doubt there's a lot of profit to be had there, and suspect a lot of CPUs used in super-computers were sold at little or no profit just for marketing/publicity). Instead; I'd be tempted to look at gaming consoles (much larger number of units sold, no backward compatibility, minimal OS if any, etc).


Cheers,

Brendan
For all things; perfection is, and will always remain, impossible to achieve in practice. However; by striving for perfection we create things that are as perfect as practically possible. Let the pursuit of perfection be our guide.
User avatar
Rusky
Member
Member
Posts: 792
Joined: Wed Jan 06, 2010 7:07 pm

Re: ... And UNIX For All

Post by Rusky »

On Owen's points- I agree, the Mill will need to start from some smaller niche before it has any chance of getting bigger, and it will probably take a while to grow from there. But there are definitely niches they could fit in, and they are designing their business model around that. I mentioned server farms because they care a lot about power usage and parallel processing, both areas the Mill's design is strong in. Another possibility, like Brendan mentioned, is game consoles, which care a lot about price, and for mobile games/phones which also care a lot about power consumption. It's also much easier to try out new CPUs in both those fields because they care less about backwards compatibility.

Legacy software will be able to take advantage of portal calls as a fast version of system calls and IPC, since that stuff is in libraries that need to be ported to new architectures anyway. For their subvariants, recompilation is in fact required to run at all, not just for best performance- but they also have a standard format that's compatible with all of them. This is probably the biggest hurdle to porting any OS, but it's not like it's an unsolved problem- OS X has been handling similar situations for years, for example.

Why so skeptical of their performance estimates? It's not like it's a brand new concept with no precedent to compare with- the design is heavily inspired by DSPs, which actually achieve those numbers. The 10x increase is not due to OS-area features like portals anyway- it's due to the belt, static scheduling with deferred loads rather than OoOE (yes this is a win, not an almost-sin-of-VLIW), the fast call mechanism, asynchronous state saving/restoring, the improved cache architecture, the unprecedented issue width (30+ MIMD per cycle!), and the strong software pipelining and vectorizing support (no prelude/postlude, no early exit cost), etc. Those are all performance/power wins at the level of just recompiling random application code, and that's where they get their "10x" number.
Post Reply