OpenPOWER opens further
In what was to prove something of a theme throughout the morning, Hugh Blemings said that he had been feeling a bit like a kid waiting for Christmas recently, but that the day when the presents can be unwrapped had finally arrived. He is the executive director of the OpenPOWER Foundation and was kicking off the keynotes for the second day of the 2019 OpenPOWER Summit North America; the keynotes would reveal the "most significant and impressive announcements" in the history of the project, he said. Multiple presentations outlined a major change in the openness of the OpenPOWER instruction set architecture (ISA), along with various related hardware and software pieces; in short, OpenPOWER can be used by compliant products without paying royalties and with a grant of the patents that IBM holds on it. In addition, the foundation will be moving under the aegis of the Linux Foundation.
Blemings also wrote about the changes in a blog post at the foundation web site. To set the stage for the announcements to come, he played a promotional video (which can be found in the post) that gave an overview of the foundation and the accomplishments of the OpenPOWER architecture, which includes underlying the two most powerful supercomputers in the world today.
Opening the presents
Ken King, general manager of OpenPOWER alliances for IBM, was up next to fill the audience in on what IBM and the foundation were up to. He said that he liked the idea of being Kris Kringle but that his employees may actually think he is more like Scrooge, at least when they come to him for money, he said with a laugh. The announcements would be "game changing for the open community", he said.
$ sudo subscribe todaySubscribe today and elevate your LWN privileges. You’ll have access to all of LWN’s high-quality articles as soon as they’re published, and help support LWN in the process. Act now and you can start with a free trial subscription.
The foundation has made significant progress to date; it has more than 350 members at this point. There are more than 40 server products available from 20 or so different vendors. Systems range from the workstation class up through supercomputers, he said. All of that was accomplished by the OpenPOWER community.
IBM has long been involved in open-source software, including its $1 billion dollar commitment to Linux in 1999, but it has more recently moved into the open-hardware world. In 2013 it started the OpenPOWER Foundation and in 2016 it started the OpenCAPI Consortium to foster the Coherent Accelerator Processor Interface (CAPI) standard. It is now time to take the next step, King said.
"First and foremost", he said, the POWER ISA is being licensed to the OpenPOWER Foundation so that anyone can use it to build products royalty free and with the patent rights. Changes to the ISA will be made via an open-governance model within the foundation. A majority vote will govern extensions and changes to the ISA. IBM is also contributing a softcore implementation of the ISA.
Reference designs for OpenCAPI and the OpenCAPI memory interface (OMI) will be contributed to the community through the consortium. Those specifications will now be community controlled, rather than controlled by IBM. The idea is not only to make them industry-wide standards but also to drive convergence with other standards such as Compute Express Link (CXL), King said.
In addition, because of the importance of moving to open governance, the OpenPOWER Foundation will become a part of the Linux Foundation, he said. It will still have its own board and decision making, but will be an entity under the Linux Foundation. That switch doesn't change anything for the OpenPOWER community, it is just as critical, he said, but it is making a statement to the industry that OpenPOWER will be a part of the leading organization for open governance in the world.
Various vendors and research institutions reviewed the idea before it was made public, he said; there was lots of endorsement and even excitement. POWER is the only architecture that is completely open from the lowest levels of the hardware and firmware up through the server software stack. It is not a "de-commitment from IBM", he said; it is a "further commitment" to POWER by the company.
Demo time
Later in the morning, IBM distinguished engineer Anton Blanchard took the stage to describe some steps he and his colleagues had taken to show what can be done with the softcore that was being released. He is a software person who created a hardware counter in VHDL in college many years ago; "it probably didn't count", he said to laughter.
They only had a few months to pull something together. What they came up with was the "first step in a journey"; it is a simple OpenPOWER-compliant core written in VHDL 2008. It uses an open-source tool called GHDL to simulate the hardware. The processor is called MicroWatt and will be available soon on GitHub, he said. It is "very simple by CPU standards"; it is a single-issue, in-order processor that implements the scalar subset of the OpenPOWER ISA. It also uses components (e.g. a UART) from other open-hardware projects.
But there needs to be something to run on the simulated processor, so they turned to MicroPython, which is a small, embedded version of the Python language. Michael Neuling ported MicroPython to the MicroWatt core, which did not require any generic changes to the code, just the expected platform-specific code. He demonstrated that in a video that showed building and running the simulator, then typing "1 + 2" at the MicroPython prompt. After a noticeable five or more second delay, "3" was displayed; "it is a little slow, obviously", he said to laughter and applause.
The next step was to put the MicroWatt onto a Xilinx FPGA board. He showed a video of the code being loaded onto the board. From the MicroPython prompt, it printed the canonical "hello world" string, but that doesn't really show that much, he said. Code to calculate Fibonacci numbers was then run to produce the first 100 numbers in short order.
There is a bit of "smoke and mirrors" in the demo, Blanchard said. They ran out of time, so there are no hardware divide instructions in the MicroWatt. For now, the toolchain was altered so that it did not emit them. They should be able to fairly easily pull in a hardware-divide implementation from other open-hardware projects, he said. MicroWatt is just a proof of concept, without any optimization, but it does work.
They also put the MicroWatt on a Xilinx Alveo accelerator board, which only used a small fraction of the FPGA on the Alveo. So they decided to put a bunch of MicroWatts on it and were able to fit 41 into roughly 80% of the FPGA. Blanchard said he only had a day to come up with a demo for that; repeatedly writing "hello world" from each MicroPython interpreter between the cores produced a jumble of output. "Oops, I forgot the locking", he said.
MicroWatt has been lots of fun to play with, Blanchard said. Next up is to add a simple supervisor state, which would enable it to run some of the Internet of Things operating systems. With a bit more work on supervisor mode, it should be able to run Linux. He would love to see others start to work with it and perhaps create a Verilog implementation.
Compliance and licensing
In a "birds of a feather" (BoF) session held later that morning, Blanchard and OpenPower Foundation president Mendy Furmanek answered questions about the announcements. In particular, they filled in some information about the compliance side of the equation. It is important not to fracture the ecosystem with incompatible implementations, Furmanek said. But not all products will want or need to implement the entire ISA.
For now, the foundation has identified four separate tiers of instructions. In order to get the patent rights for a product, it will have to comply with one of those four tiers, but it can add instructions from the higher-level tiers as well. The levels are: scalar fixed point (what MicroWatt is based on), floating point, Linux server, and AIX server. There is a compliance workgroup within the foundation that will determine the compliance levels. In addition, changes to the ISA will only require a majority vote of a workgroup made up of foundation members if they are backward compatible; changes that are not backward compatible require a unanimous vote.
Blanchard said that they did not want to have too many options, like what RISC-V has done with optional instructions and such. The Linux server level is more complicated, he said, but Linux can run on the simpler levels, which may be appropriate for embedded applications. It would not take a huge amount of effort to take something like MicroWatt and turn it into a chip that could run Linux, he said.
Furmanek said that the foundation would like to see contributions from members and non-members alike. The AIX level is effectively set up to give IBM a place to continue building out on its POWER roadmap if the community decides it wants to go in a different direction. But POWER has a robust and unified ecosystem, she said, and IBM wants to ensure that continues.
Licensing the OpenPOWER designs that get created based on the foundation's work must be done under a Creative Commons (CC) license, she said. Other licenses are not geared toward hardware and, in particular, don't have patent terms that make sense. Those contributions can additionally be licensed using other licenses, as long as the CC terms are passed on. The foundation is still working with its lawyers to figure all of this out.
The patent rights will come when building actual hardware. There is no indemnification for patents that others might assert against OpenPOWER, but there is a defensive termination clause. If someone is using the OpenPOWER patents and asserts other patents against OpenPOWER, their right to use the OpenPOWER patents will terminate. There has been discussion of creating an organization like the Open Invention Network for hardware, but it is not clear that it actually would work, she said.
One common concern that was mentioned multiple times during the morning presentations was the dearth of open-source tools to work with and build actual hardware. Electronic design automation (EDA) tools are generally proprietary and costly. That also came up at the BoF, There are some open-source tools available, Furmanek said, but they have not reached commercial grade, at least yet. Her background is in the EDA space and she is hopeful that there will be more news in that area before too long.
There were several other keynotes in the morning as well as a panel discussion, all of which helped to round out the overall picture. It is clear that IBM, the foundation, and its members are quite enthusiastic about these changes. The impact they will have on the industry is unclear. It may be, as some say, too little and too late, but that remains to be seen.
[I would like to thank LWN's travel sponsor, the Linux Foundation, for
funding to travel to San Diego for OpenPOWER Summit NA.]
| Index entries for this article | |
|---|---|
| Conference | OpenPOWER Summit North America/2019 |