Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Can someone explain why the RISC-V ecosystem won’t eventually stabilise into a series of lower performance open source cores and higher performance closed source (and non licensable) cores.

In other words why should designers open source performance leading cores for competitors to copy?



You're Netgear or Asus or someone. You need a core to put in your network equipment, and the low performance one is nearly good enough. If you spend some money to make it 10% better then it is good enough. If that amount of money is less than you'd have to pay to license ARM, you might as well do that.

You also might as well release your changes.

If you try and keep your improvements to yourself then when someone else goes to make their own improvements, they start with the original design instead of yours. To get the benefit of their improvements you now have to do more work yourself in order to integrate them with yours. How does that help you?

Think about how Linux works. If you release it for anyone to use, when someone else wants to make independent improvements, they start with your design and you get the benefit of their work for free (and vice versa). And you make your money selling routers/phones/coffee machines/whatever, not processors, so this is in your interest.

Several iterations of this later and the "higher performance closed source (and non licensable) cores" are starting to look like HP-UX and AIX, meanwhile Linux has captured nearly the entire market.


>and the low performance one is nearly good enough.

You may be surprised at the CPU requirement for modern WIFi Router.

>If that amount of money is less than you'd have to pay to license ARM, you might as well do that.

That is not only it, the cost are going to support the linux firmware these router will be based on. Which having ARM ecosystem will be beneficial. So your initial cost estimate will have to include that into calculation as well.

And it is part of the reason why all routers are moving from their own MIPS CPU to ARM CPU.


> You may be surprised at the CPU requirement for modern WIFi Router.

You may be surprised at the performance of modern CPUs. Even the slow ones are pretty fast.

> That is not only it, the cost are going to support the linux firmware these router will be based on. Which having ARM ecosystem will be beneficial. So your initial cost estimate will have to include that into calculation as well.

The Linux ecosystem is highly portable. It's not like Windows where you're stuck with already-compiled binaries for the wrong architecture. You have the source code, it already runs on half a dozen processor architectures, so you compile it for the one you're using.

> And it is part of the reason why all routers are moving from their own MIPS CPU to ARM CPU.

They're doing that because MIPS is dead. The company that owns MIPS went bankrupt and has now announced they're going to make RISC-V processors:

https://www.eejournal.com/article/wait-what-mips-becomes-ris...

Before that they half-heartedly tried to open source MIPS, but that was after they were already sinking and it was too late to save them.


The key point you’ve missed is that Linux is gpl licensed. If you make changes and make those changes available in a binary you have to release the source code. Not so for a new RISC-V core (or notably for many of Linux’s competitors).

Sure if you make a small change then you might release it. Designing cores isn’t all about small incremental changes though.

Still not sure what the incentives are for a firm that has made a significant investment in a new core or in extending an existing core, what the incentive is for them to release those changes.


With software, the one true incentive is that someone else will maintain your code and you won't have to spend valuable time constantly rebasing your downstream patches. This is why e.g. Netflix contributes heavily to FreeBSD's network stack.

This is the real reason to upstream, regardless of license. When that incentive doesn't apply and companies only release for compliance, we get Android-vendor-style source dumps and "BSPs" that are not very useful — not upstreamable and often barely even work as documentation.

It's a bit harder with silicon since a chip is "done" once you've sent it to manufacturing, but still somewhat applies when you maintain an evolving line of chips.


Thanks - agree completely. Possibly also true that Netflix isn’t really worried about competitors using their contributions to FreeBSD to compete with them?


That should generally be the default assumption, because companies can pay for the improvements that most benefit their niche.

Suppose your company makes the mid-range device. You have competitors above and below you. The one above you uses a fast expensive processor, the one below you uses a slow cheap processor. You need a medium processor for a medium price. If you design your own, it gets cheaper than the existing middle one but still not as cheap as the cheap one.

So if you design one, it's too big, costs too much to fab, for the low end. It's too slow for the high end. You're the only one who can use it. You and companies outside your market who don't compete with you at all, because you make network switches and they make cars.

You also make a good point about the GPL above, but there isn't any reason why processors couldn't use a GPL-style license, is there?


I’m not a lawyer so can’t comment on the GPL point but I hope you’re right.

I suspect that the most likely route to open source higher performance cores is some sort of cross industry consortium collaboration - rather than a single firm - with GPL cores and a central body doing a lot of the work.

I do wonder whether you eventually end up with something that economically looks a lot like a cross between Red Hat and Arm though - say with membership fees for support rather than licensing fees.


It's a fair question. How does an open high end chip design benefit anyone other than a competing company? How would an end user be able to verify that the chip in their hand is the same as what's in the schematics they get? Wouldn't it be cost-prohibitive for regular people to have those designs manufactured? High performance cores being opened would be nice to have but not really practical, unless I'm missing something.


This is why I think the priority for software will shift back towards performance in the coming decades. Even now very few people can get decent GPUs. Who knows if one day chips that can run the latest bloatware will be affordable?


Because open-source system don't just 'stabilize'. Just like Linux didn't stabilize on low performance cores and on high performance cores you use some proprietary core.

Open Hardware is still way more difficult but we will not reach any 'stabilization' anytime soon.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: