[HN Gopher] Keeping Power relevant in the open source world
___________________________________________________________________
Keeping Power relevant in the open source world
Author : pabs3
Score : 98 points
Date : 2022-01-22 11:41 UTC (11 hours ago)
(HTM) web link (peter.czanik.hu)
(TXT) w3m dump (peter.czanik.hu)
| marcodiego wrote:
| Don't forget that POWER10 is no longer ryf-certifiable. Of course
| the ryf certification may be questionable but it is an
| established bar, POWER9 was able to cross it, POWER10 probably
| won't: https://www.talospace.com/2020/08/power10-sounds-really-
| grea...
| https://twitter.com/RaptorCompSys/status/1435510763402244105...
| unixhero wrote:
| Any reference to the ryf certification?
| Jasper_ wrote:
| They're referring to the FSF's "Respects Your Freedoms"
| programme, a frankly absurd specification that encourages
| vendors to lock down closed source firmware into ROM rather
| than actually make it free. RYF doesn't care about the
| hardware designs themselves being open (no computer would
| qualify in that case), so they treat closed-source firmware
| ROM images as identical to closed-source hardware, which is
| fine. But store that firmware on some sort of RAM, or
| flashable ROM, and all of a sudden it's now closed-source
| firmware, which is bad.
|
| The end result is that systems that are the most locked down
| are those which "Respects Your Freedoms".
| unixhero wrote:
| Ah thanks a lot. I asked because I had not heard of that
| abbreviation.
| fsflover wrote:
| https://news.ycombinator.com/item?id=30036588
| goodpoint wrote:
| FSF RYF certification carries very little weight.
|
| If you care about not having backdoors in your hardware, RYF is
| not very relevant because it allows closed source hardware and
| firmware blobs.
| marcodiego wrote:
| https://news.ycombinator.com/item?id=30036588
| detaro wrote:
| RYF allows various "tricks" of hiding blobs, so it is not what
| I'd use as the benchmark here. Raptor's standards are likely
| higher than what RYF would require...
| marcodiego wrote:
| I don't know if the firmware on embedded controllers in
| currently ryf-certified laptops are open source, but that is
| the only source of "trick" I can see that could be currently
| explored to get ryf certification.
|
| I've heard people saying things like "even a windows device
| could be ryf-certified if it was in ROM", but I see nothing
| even close to this when I look at currently ryf-certified
| devices. People are probably influenced by this:
| https://puri.sm/posts/librem5-solving-the-first-fsf-ryf-
| hurd... where a Purism engineer describes a "trick" to store
| a memory controller training firmware in ROM and run it on a
| "secondary processsor" so it can get Librem 5 ryf-certified;
| but to this day Librem 5 is still not certified and probably
| won't because of this specific issue.
|
| Also there are the people who correctly question that ryf is
| silly because it accepts software without code available if
| it is in ROM and only runs on a secondary processor. I
| currently have no counter-argument to this and I think it
| would be great if FSF explained it clearly. Nevertheless,
| there are some reasonable points to consider that stance:
| - AFAIK, the form of accepted code is only for "secondary
| processors" and can't take over the system or compromise it,
| - having things in ROM forces manufacturers to maximally
| simplify it, - having things in ROM forces
| manufacturers to implement more features in software that can
| be checked and - having things in ROM forces
| manufacturers to be extra careful when implementing it.
| detaro wrote:
| I'm not saying that RYF is entirely useless, just that "new
| version requires firmware blobs, old one didn't" is a
| clearer and stronger statement than mentioning RYF IMHO.
| marcodiego wrote:
| Hmmm... I understand.
|
| I mentioned ryf certification because Tallos II and Talos
| II Lite are the only ryf-certified modern systems
| available. Also, I bet FSF is very strict when certifying
| systems so we don't have to rely on the word of the
| vendor only.
| p_l wrote:
| POWER10 could probably game RYF certification. Raptor is
| really much stricter than everyone on that topic. If you
| make bits of firmware non-upgradeable, I believe you can
| pass them as RYF-certified even if they are blobs - they
| are counted as part of the hardware.
|
| Raptor didn't accept anything like that, closest is the
| minimal (it's a RISC after all) microcode mask rom in
| POWER9 core that AFAIK is effectively covering some hairy
| and rarely used instructions as multiple standard Power
| instructions. And it's so small thing that I am not
| really sure it's there...
| andrewf wrote:
| At least Linux POWER can go little endian! Being big endian seems
| pretty lonely in 2022 - AIX, Solaris and stuff on System Z?
| https://community.ibm.com/community/user/ibmz-and-linuxone/b...
| gnufx wrote:
| I counted other big endian processors (probably looking at GCC
| support) a while ago, but I don't remember what they were, and
| probably only embedded processors.
| hulitu wrote:
| What was interesting at Power is that it used SDRAM at half the
| processor speed which made processing of data from memory faster
| unlike traditional PC when you read data in bursts.
| DannyBee wrote:
| IBM has had this argument internally for eons.
|
| When i was there, _two decades ago_ , people were making
| presentations internally saying the same thing - "without
| affordable volume machines that random people can buy and use to
| develop, this ecosystem will fail"
|
| Then, like now, there were even organizations/companies people
| thought might eventually take care of doing this that weren't IBM
| (Spoiler alert: They didn't)
|
| Given that it has been at least two decades, i'm not sure whether
| that makes the doomsayers wrong or right.
|
| But I am sure of one thing: IBM didn't care to do it then, and
| doesn't seem likely to start caring to do it now
| nix23 wrote:
| Yeah IBM is crazy with z/OS too, give out free z/OS developer
| images so everyone interested could play with it and maybe it
| sparks interest in mainframe again? NONONO pay ~500$ every year
| and you need a usb-dongle, and "master the mainframe" is just
| open for 2 month a year...it's pure stupidity.
| aidenn0 wrote:
| PASemi was stopped by an acqui-hire. I don't like
| counterfactuals, but that was a huge transfer of expertise from
| Power to ARM
| DannyBee wrote:
| I mean, this is true, but it doesn't really change a lot of
| what i said. It was always something :)
|
| If your ecosystem is stopped in its tracks because someone
| acquired a small company, it is not a particularly robust
| ecosystem.
|
| From what i was told (and i was very young and inexperienced
| when i worked at IBM, so take it with a grain of salt), the
| baseline issue was always the same on the IBM side - the chip
| groups controlled most of the budget for the chips, and
| didn't see any way that spending hundreds of millions to make
| developer-friendly hardware would have positive ROI. Most of
| their revenue was not derived from the customers they thought
| this might ever attract.
|
| It's similar to why they told Apple to go pound sand
| repeatedly until Apple switched to Intel - Apple did not make
| up a really meaningful part of the business of Power chips
| from where they sat, so they didn't really care about giving
| Apple what it wanted.
|
| The software folks involved thought this was mostly insane
| chithanh wrote:
| Warning: rant (sorta)
|
| I remember discussing with an IBM representative at one of the
| last CeBIT shows (was it 2016?) that the community who did open
| source development on non-x86 were gravitating away from
| POWER/PowerPC towards ARM. The affordable hardware was a major
| selling point.
|
| His offered "solution" was that IBM granted free access to its
| POWER cloud. But that is of course not interesting for someone
| who runs a home lab and works on Linux distros.
|
| And even so, the blog post still does not aim to where they
| need to aim. Raptor systems are far from "affordable" for your
| average CS undergraduate or hobbyist. Power Pi's $250 target
| price is still off by almost an order of magnitude. The $250+
| market is served by second-hand POWER servers, which are ok for
| home labs. Unfortunately, Ubuntu and IBM in their infinite
| wisdom decided to drop POWER8 support from upcoming releases,
| which will drive away home labs and the open source community
| further from Power.
|
| https://www.phoronix.com/scan.php?page=news_item&px=Ubuntu-2...
| nix23 wrote:
| >His offered "solution" was that IBM granted free access to
| its POWER cloud.
|
| Yeah the mainframe community asked ibm to open some newer
| systems >24bit but ibm told them they want to provide the
| community with new "actual" software...out of that came that
| stupid program called "master the mainframe" or "IBM Z
| Xplore" it's unbelievable that they are so tone-deaf even to
| the most loyal IBM fans...IBM is the perfect example of a
| marketing/management and anti-engineer company (as of today),
| they really deserve to have a slow death.
| chasil wrote:
| This is starting to feel a lot like the DEC Alpha, at least
| from the perspective of the 3rd party motherboards.
|
| The ubiquity of x86 and ARM does not leave much room for the
| Power architecture in the general market.
| mkj wrote:
| At the other end of the scale, if anyone wants to play you can
| run a little openpower CPU on an FPGA with completely open
| source. https://github.com/antonblanchard/microwatt
|
| It's capable of running Linux, some example docs are
| https://shenki.github.io/boot-linux-on-microwatt/ The toolchain
| consists of "apt install gcc-powerpc64le-linux-gnu" on Debian, no
| funny downloads. And if you want to target a Lattice ECP5 board
| even the FPGA tools are also all open, thanks to Yosys and
| friends.
|
| All the openpower ISA spec PDFs are available for perusing on the
| openpower site.
| berlinquin wrote:
| Thanks for sharing. I've looked at getting a PowerPC dev board,
| but didn't find anything at a reasonable price. I never made
| the connection that microwatt plus and FPGA would get me there.
| h2odragon wrote:
| If i had a "different" ISA to market, I'd think the very first
| priority would be to have excellent free compilers for it, be
| they FOSS or not. Write our own and give them away if we gotta.
| Remove every barrier to people using your product that you can.
|
| IBM doesn't think that way. They're probably using "the longhair
| hippies can't use this hardware" as a selling point.
| detaro wrote:
| TIL LLVM and gcc are not excellent free compilers and useless
| for longhair hippies. What do your hippies use?
| h2odragon wrote:
| I know nothing of the support for the POWER arch out there
| now... if you do, would you say it could be improved? is
| "corporate whim" stifling open support for them? Last I
| messed with POWER i couldn't find docs for what I needed and
| so just stuck with Intel Sparc and Alpha. (The last two were
| still viable market presences then; to give an idea of how
| long ago this was)
| nix23 wrote:
| >Last I messed with POWER i couldn't find docs
|
| You can use google nowadays.
| detaro wrote:
| ... so you "know nothing", but started the discussion by
| making a strong claim to the contrary, seriously?
|
| The article already lays out the field: The infrastructure
| groundwork is done (compilers, linux distros, ...), in no
| small part thanks to IBM funding such efforts. The main
| limit is hardware availability and overall mindshare, not
| infrastructure. If you have a reason to develop for POWER
| it's easy and reasonably well documented in my experience,
| the problem for the ecosystem is that few people have such
| reasons. (i.e. you're either an enterprise supplier like
| SAP or a bunch of nerds at an uni or with a raptor box at
| home, little inbetween)
| ballen wrote:
| The IBM XL compilers have had a free to download community
| version for a little while now [1]. They also appear to be
| adopting LLVM [2].
|
| 1. https://www.ibm.com/products/xl-cpp-linux-compiler-power
|
| 2. https://community.ibm.com/community/user/power/blogs/si-
| yuan...
| DannyBee wrote:
| In some ways, #2 is sad to me. Don't get me wrong, I have
| worked a ton on LLVM and love it.
|
| But at least when i was there, IBM's interprocedural middle-
| end (TPO) was some of the nicest and well structured C++
| compiler code i had seen in a long time. It was well written,
| well commented, and well architected.
| IainIreland wrote:
| It may have changed since I left, but my understanding as
| of a few years ago was that IBM was replacing the front-end
| with Clang but continuing to use TPO (at least for now).
| Lammy wrote:
| > "Old Macs are big-endian, just as network processors from NXP.
| Some Power developers still want big-endian systems to keep the
| dream alive. But support for big-endian systems is mostly gone
| from Linux distributions, and when it comes to developing common
| utilities or even programming languages, most developers are no
| more even aware that a world exists outside of little-endian. As
| much as I love the PowerPC laptop project, I see it now as a dead
| end: producing hardware for an ever shrinking software
| ecosystem."
|
| Note that PowerPC itself is bi-endian and always has been since
| the PPC601, configurable via a special register. POWER gained
| this capability in POWER3 when it subsumed the PowerPC ISA. Old
| PowerPC Macs are explicitly big-endian because they needed to
| maintain compatibility with everything written for the earlier
| MC680x0-based Macs whose CPUs were big-endian-only. Windows NT
| ran on PowerPC in little-endian mode!
|
| https://www.cs.umd.edu/~meesh/cmsc411/website/projects/outer...
|
| https://catfox.life/2018/11/03/clearing-confusion-regarding-...
| goodpoint wrote:
| IBM had the opportunity of being the royalty-free ISA that RISC-V
| is. Or even release the cores "IP". They squandered it.
| classichasclass wrote:
| The ISA _is_ open and royalty free.
|
| There are at least three open cores, all IBM funded or
| designed:
|
| https://github.com/antonblanchard/microwatt
| https://github.com/openpower-cores/a2o
| https://github.com/openpower-cores/a2i
|
| The last two are older but they work. Microwatt is developing
| by leaps and bounds.
| goodpoint wrote:
| I'm aware. The problem is that the ecosystem has been opened
| up too late, while the RISC-V ship has sailed and also
| missing the opportunity to disrupt datacenters and phones.
| google234123 wrote:
| Anything to back up this assertion? Like some key
| dates/moments?
| smarx007 wrote:
| "squandered [..] the opportunity of being the royalty-free ISA"
|
| Last time I checked, IBM was a business. I don't think losing
| an "opportunity" to give away the ISA for free sounds like a
| loss to them.
| tyingq wrote:
| They open sourced the ISA in 2019.
|
| https://openpowerfoundation.org/the-next-step-in-the-
| openpow...
| [deleted]
| markphip wrote:
| The most compelling argument for POWER was to make sure there is
| competition to amd64/x86 and we do not develop a monoculture. I
| think arm and risc-v have filled that hole nicely and taken over
| for POWER. Without readily available and affordable hardware I do
| not see much of a future for POWER in open-source. It seems
| entirely dependent on IBM to keep it going unless this changes.
| classichasclass wrote:
| I'm not sure I agree about RISC-V. ARM is now indisputably in
| the same performance ballpark as x86_64 (M1 most obviously but
| there are others), as is Power, but RISC-V has a ways to go
| before it can compete on the same turf. It hasn't even really
| competed with ARM in embedded, despite its advantages there
| (though it has all but killed the zombie corpse of neo-MIPS).
|
| I do agree that without other processor makers, however, the
| Power ecosystem is crucially overdependent on IBM policy. This
| is not a new problem but it hasn't gotten any better with
| OpenPOWER.
| ashirviskas wrote:
| Can someone tell me where I can read more on what Power exactly
| is?
| Nursie wrote:
| Power is a processor architecture produced by IBM. It's been
| pretty popular at times - server side it was up there with Sun
| Sparc in popularity, before Linux on x86 ate the server market
| for lunch. Client side, variants of it were in every console
| for one of the generations - Wii/PS3/Xbox360. As pointed out by
| another poster, the PowerPC variant used to be in apple
| hardware too.
|
| Variations of standard Power chips are also what runs IBM's
| mainframes. For quite a long time they beat Intel in raw
| performance on some benchmarks. The problem is it was 10x the
| price.
|
| The workstations and servers were always crazy expensive
| compared to x86 hardware and that's one reason they remained
| pretty niche.
|
| Within IBM, Power systems were most frequently used to run
| IBM's Unix - AIX.
|
| https://en.wikipedia.org/wiki/IBM_Power_microprocessors
| ngcc_hk wrote:
| https://www.geeksforgeeks.org/powerpc-architecture/
|
| Geek for geek. Otherwise try wiki.
| https://en.m.wikipedia.org/wiki/PowerPC
|
| Used in old apple before replaced by intel. In one console.
| sidpatil wrote:
| PowerPC is a derivative of the original POWER architecture by
| IBM.
|
| https://en.m.wikipedia.org/wiki/IBM_POWER_instruction_set_ar.
| ..
| chasil wrote:
| Also used in the Xbox 360, and an exotic variant was also
| in the PlayStation 3.
| classichasclass wrote:
| And GameCube, and Wii/Wii U.
| redwood wrote:
| Squeezed out my ARM frankly since it's captured the imagination
| as the next server platform
| huks wrote:
| My experience using Voidlinux, on a Raptor POWER9 system, has
| been excellent. The software support has just gotten better and
| better. It would be a shame to lose this momentum.
|
| Affordability and availability are major pain points. I've shared
| my excitement about OpenPOWER with many and their excitement
| evaporates when they are told what a modest system costs.
|
| I am strong believer in FOSS and fully open owner controlled
| hardware. I think this is far more important than it appears at
| first glance. It sounds like tinfoil hat stuff, but the reality
| is we're backed into a corner. The less control owners/users
| have, the more vulnerable they are.
|
| --edit typo s/that/than/..
| classichasclass wrote:
| Fedora on POWER9 for my daily driver, personally (a dual-8
| Raptor Talos II). I like the architecture, having been an AIX
| admin since the 3.2.5 days (still have a personal POWER6 with
| it) and a long time Power Mac bigot, and I like Raptor's
| commitment to openness. My HTPC is a Blackbird.
|
| It shouldn't be a privilege to own a fully user-auditable
| computer. Cost continues to be a problem, which is why I hope
| Microwatt gets into more things. But the cost is primarily from
| the motherboard, which has no economies of scale (CPU prices
| are actually fairly competitive), and other than the processor
| everything else is off-the-shelf. Fedora, Void and FreeBSD work
| well in my personal experience, and there are other choices.
| berlinquin wrote:
| Unrelated, but thank you for your blog! I check in
| occasionally, mostly looking for a reason to justify buying
| one of the Raptor machines at work. I really enjoy the
| articles on qemu/virtualization.
| AlbertoGP wrote:
| My main workstation is too a Raptor Power9 running Void since
| November 2019, and I'm very happy with it although as the
| article mentions, "My experience with firmware is that open
| source does not mean necessarily better, rather the opposite".
| OpenBMC (the firmware for the little ARM-based embedded
| computer that boots the big one) has a number of rough edges.
|
| From time to time I submit patches to software to make it work
| (or work better) on this machine, last week it was these two
| trivial ones:
|
| https://github.com/ciao-lang/ciao/pull/45
|
| https://github.com/janet-lang/janet/pull/915
|
| Typically that's all that's needed, in some cases it's just
| more of it:
|
| https://github.com/oneapi-src/oneDNN/pull/767
|
| But for most things, since it's Linux, it's just those small
| changes: (one of my customers runs the software I write on AIX
| and that's a little more work)
|
| https://github.com/IntelRealSense/librealsense/pull/5586
|
| https://sourceforge.net/p/speed-dreams/tickets/1022/
|
| For Rust programs, many packages used i8 for C strings (to
| interface with OpenGL for instance) which broke when running on
| ppc64 and had to be changed to c_char, but that's not a problem
| these days, I guess because many people now test on ARM.
|
| https://github.com/femtovg/femtovg/pull/5
|
| Before Power10 was done, IBM actually asked us Raptor users
| about proposals for useful machine code instructions to add to
| it. I replied that I'd like to have hardware UTF-8 de-/encoding
| but they wanted a more detailed proposal and I never got around
| to write it. I'm not even sure that this would be worthwhile,
| but I see UTF-8 de-/encoding everywhere in the code I write and
| would like it to approach memory read/write speeds.
|
| I was very disappointed to learn that they had gone more
| proprietary with Power10 so I would not have been able to use
| those instructions anyway. What a pity! This machine still
| covers my needs so I'm not planning to replace it any time
| soon.
| classichasclass wrote:
| Interesting, never heard about them asking about ISA changes.
| Where was that done?
|
| There are some lovely new instructions in Power10 but until
| they get the firmware source out fully I won't use them in
| the Firefox JIT.
| AlbertoGP wrote:
| It was through the IRC channel. I sent a direct message as
| response and exchanged a couple of sentences, then they
| gave me their IBM email address to submit the detailed
| proposal. My understanding was that it would have to be
| justified and for that I would have to show that it could
| be more efficient than an implementation based on the
| existing SIMD instructions which I'm not familiar with. I
| suspect that the kind of instructions that could actually
| be put there might not perform better than that.
|
| I regret not sending at least an amateurish proposal, I
| still think it would be a good idea to have no-cost UTF-8
| en-/decoding. Not just for text, but for general variable-
| length encoding of other kinds of data.
| classichasclass wrote:
| Very interesting. Which channel specifically?
|
| VSX is really where the new development is happening, but
| it's become quite complete. The PC-direct instructions
| first made available in P9 also really closed a gap
| (beforehand you had to do bl with a weird flag to get PC
| in LR without trashing the history table).
| AlbertoGP wrote:
| The IRC channel was #talos-workstation on FreeNet, now on
| Libera.Chat.
|
| Do you know of some minimal example of calling VSX
| instructions from C?
|
| Ideally just one .c file and one Makefile or README with
| the exact GCC command to compile it, plus a pointer to
| documentation describing each instruction. I've seen
| assembler inserted into C source code with GCC, but I've
| never done it and I assume there are some non-obvious
| details to take into account.
| gnufx wrote:
| I don't know what you want of the VSX, but if you want
| vectorized code, what do you expect to gain over letting
| the compiler do it on your C? If you want an example,
| there's the kernels in OpnBLAS and FFTW (and BLIS, but
| that seems to be broken on POWER9).
|
| There's an IBM web page somewhere with three(?)
| alternatives for using VSX, one of which is just using
| SSE intrinsics -- I don't know how well that works -- and
| another is a library that's now in Fedora, whose name I
| forget.
|
| That said, it's obviously not competitive with AVX2 or,
| presumably SVE, unless you can win on parallelization (or
| plain clock speed, which you probably can't).
| gnufx wrote:
| I don't manage the system I work on, so I don't see OpenBMC,
| but "a number of rough edges" sounds a lot better than the
| proprietary BMCs it's been my misfortune to use, which appear
| basically to be unsupported.
|
| As far as rust goes, I've just asked around for rust
| expertise to try to get a feel for whether it's worth
| persisting with trying to make the stuff work that a user
| wants, since I know nothing about it. (The first issue I
| found was exactly i8 in a current crate.) That is rather the
| exception in building free software for ppc64le, though, in
| my experience of packaging HPC-type stuff. The real problems
| are with Mellanox/NVIDIA proprietary stuff for GPU support.
___________________________________________________________________
(page generated 2022-01-22 23:01 UTC)