Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 6 Apr 2014 15:16:23 +0500
From:      Jordan Hubbard <jkh@ixsystems.com>
To:        Adrian Chadd <adrian@freebsd.org>
Cc:        "svn-src-head@freebsd.org" <svn-src-head@freebsd.org>, Baptiste Daroussin <bapt@freebsd.org>, "src-committers@freebsd.org" <src-committers@freebsd.org>, David Chisnall <theraven@freebsd.org>, "svn-src-all@freebsd.org" <svn-src-all@freebsd.org>
Subject:   Compiler toolchain roadmap
Message-ID:  <EB9CE8A8-E897-4DE1-A8BC-80C6CC23E612@ixsystems.com>
In-Reply-To: <CAJ-Vmom-19LujsTQ%2Bv4XozE%2BiEH18LMEQitBLC-At=DmsgkB%2BQ@mail.gmail.com>
References:  <201404021607.s32G7mhw051355@svn.freebsd.org> <20140404115256.GA85137@ivaldir.etoilebsd.net> <F2A33EA8-14F2-4D62-9021-9023A1751E48@FreeBSD.org> <8D6AF193-A5A3-4A28-A230-97A543395ACA@ixsystems.com> <2E0EC8CB-B3EE-4DB8-A33D-58FD2107F14D@FreeBSD.org> <6A02504F-5543-4F91-92F6-7B4FB9A34DC4@ixsystems.com> <152D73EE-DF9E-4757-B547-F1F22B12C824@FreeBSD.org> <B06E1588-8828-485F-A407-3F19231F8EA5@ixsystems.com> <8E3BD3C1-A441-48C5-97BC-45EF67513096@FreeBSD.org> <6418BE83-BE78-473B-9311-C849507FA885@ixsystems.com> <CAJ-Vmom-19LujsTQ%2Bv4XozE%2BiEH18LMEQitBLC-At=DmsgkB%2BQ@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help

On Apr 6, 2014, at 2:34 PM, Adrian Chadd <adrian@freebsd.org> wrote:

> So if we want to be taken seriously by those funny companies that make =
CPUs, then:

Not really religious about that at all, I just wonder the following:

1. How long will it be considered worthwhile to not be able to have =
various advanced features in base (like blocks, or someday perhaps, more =
advanced C++ features / GC / yada yada yada) because the lowest common =
denominator compiler technology, probably not even under control of the =
project itself (those =93weird-ass compiler ports=94 David mentioned), =
simply doesn=92t support those things?

Moreover, there=92s not much incentive for the companies in question to =
modernize their toolchains if FreeBSD is happy to remain somewhere in =
the 1990s in terms of what compiler features it leverages, and it=92s =
not particularly clear to me how the presence / participation (?) of =
those companies is being valued in the overall scheme of things.  If one =
lone MIPS R3000 vendor was holding back because it was using the =
Mongoose-V radiation-hardened part (yeah, that=92s a real thing) and =
FreeBSD for some solution, would that be worth holding the entire =
project back?  No?  How about two such vendors?  Three?  Where do you =
draw the line?   I don=92t even pretend to have the answer to that =
question, I just think it=92s a question worth asking.

Also, JFYI, I don=92t really have any strong personal agenda where this =
is concerned - I can just keep taking FreeBSD and hacking it up every =
which way such that =93what=92s in base=94 becomes increasingly =
irrelevant to me, but the more I diverge, the less easy it becomes to =
upstream stuff back.  I already had that experience once at Apple, and =
it ultimately didn=92t hold me back at all so the =93omg the cost of =
forking=94 argument is no longer one that holds much fear for me, but =
it=92s a shame that all the I18N / UNIX03 / numerics optimization / =85 =
work that occurred in the open over the first 3-5 years I was there was =
never able to benefit FreeBSD because of said divergence, either.

2. What=92s the long-term prognosis on a multi-architecture ecosystem?   =
I certainly remember the =93good old days=94 when any company that knew =
how to solder two transistors together had their own CPU architecture, =
but those folks have been dying off for decades now.  Now we have Intel =
as the long-dominant 900 pound gorilla, which is why FreeBSD originally =
chose to focus almost exclusively on that architecture (and I think that =
was a smart decision), and the smaller but still feisty ARM =
architecture.  That=92s about it.  Yes, I know about the others, but =
just because a port *can* be done doesn=92t necessarily mean it *should* =
be, and I=92ll cite the Alpha and Itanium ports as existence proofs of =
that.  Heck, I was a huge proponent of the Alpha port - I wanted a 64 =
bit version of FreeBSD back then so badly I could taste it, and I =
personally thought the Alpha was pretty damn cool - I even had one of my =
own.  Didn=92t make it such a good idea in hindsight, however.

Again, if there=92s a common theme in my two bullets there, it=92s =93show=
 me the numbers!=94   Sure, I know of vendors who use MIPS and, for that =
matter, PowerPC and a few other far more obscure architectures as well.  =
I=92m familiar with Juniper and Cisco=92s interest.  I even read =
Warner=92s slides from BSDCan 2008, where a fairly long and slightly =
sordid tale is told of MIPS support trying repeatedly to get into the =
tree, being repeatedly rebuffed until it finally somehow took root =
through a semi-cabalistic effort with dark rituals involving dead =
chickens and Perforce.  Now it=92s 2014 and apparently we can=92t have =
nice things in the tree because of MIPS?   Maybe I=92m over-simplifying =
the argument, but even simplistically I would easily understand it if =
you substituted =93ARM=94 or =93Intel=94 because I can count those =
numbers easily and know without even trying that there are at least 7 =
zeros involved in the total.  Every PC ever shipped.  Every Samsung =
phone.  Big and impressive numbers that can=92t be argued with.   I=92m =
just not getting the same impression from the other architectures under =
discussion here.

- Jordan







Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?EB9CE8A8-E897-4DE1-A8BC-80C6CC23E612>