Debian GNU/Linux riscv64 port -- Sponsors and Build machines
In previous posts about the riscv64
port there were mentions about history,
progress and other details, but in this one I want to address the topic of
sponsors and build machines, which even if there are mentions from time to time
(e.g. in talks and slides posted here), it has not been covered in a
comprehensive manner.
And it's only fair that we acknowledge people and orgs sponsoring and contributing resources... and about time too. They will appear roughly in chronological order.
Bytemark
From the early days in 2015, when the plans for the port were still very preliminary, we got support from Bytemark, which already supports Debian and other FOSS projects, and important parts of the Debian infrastructure are hosted there.
In particular, they sponsored a virtual machine with a good amount of CPU, RAM and disk space (and good connectivity and great bandwidth with Debian repos :-)) in which many of the early attempts to bootstrap happened, after things started to get beyond personal laptop territory (see Debian GNU/Linux port for RISC-V 64-bit (riscv64) for more details).
This has been acknowledged here: Debian RISC-V's wiki page, “Credits” section:
“Bytemark provides hardware to help to kick-start this port. Bytemark is a long-time partner of Debian”
and in the post Debian GNU/Linux port for RISC-V 64-bit (riscv64) mentioned before, and in slides of talks.
Kurt Keville, MIT's CSAIL
Kurt Keville from MIT's CSAIL was helping since early on, in 2016.
He has very kind to help me to travel and give talks about the Debian GNU/Linux riscv64 port in RISC-V so-called “workshops” in MIT/CSAIL in 2016 and UPC/Barcelona Supercomputing Centre in 2018.
Also, and apart from other great help that can never be paid off like encouragement to go ahead in important moments, in 2018 he set up and couple of big-ish servers, the network connectivity is excellent and there's also a local Debian mirror, which is great.
Here we host the rv-mit-01 to -18 VMs (see buildd status
pages), building
packages “natively” (inside Qemu, but emulating a riscv64
machine). These
were the main builders for most of 2018 of all suites (basically, unstable
─which is the most important and through which all packages enter the archive
that it will eventually be settled as stable
─, and experimental
).
In the last few months most of unstable
is built by hardware machines, but
these ones are still busy with experimental
suite, and kept as back-up if
other machines fail, or in cases of extended peak times, we can easily tell them
to start processing packages from unstable
again.
This support was really crucial in the early days, without these important resources the port would probably not be able to lift off. It has been acknowledged in the past, but only in talks.
SiFive
SiFive is company created by many of the minds from UC Berkeley who conceived and created the RISC-V architecture.
At the moment, they are the only to offer hardware that can be purchased publicly which can be used to build packages ─and as a general purpose GNU/Linux riscv64 system, for that matter─, the HiFive Unleashed.
They sponsored one board soon after it was premiered at FOSDEM in 2018, which is
named rv-hfu-01 and hosted by me (though not attached to the buildd network,
but sometimes appears mentioned in build logs or bug reports), in which happen
many of the tries and special builds of packages with difficulties (e.g. builds
for unreleased
suite special of debian-ports, with some functionality disabled
or to break dependency cycles, etc.).
They also sponsored other HiFive Unleashed boards, like one intended to become a porterbox (still in the works) and another one named rv-rr44-01 and hosted by Aurélien Jarno (there are plans to move them elsewhere, but it's convenient to have them close to one's hand, in case of problems, like frequent lock-ups).
rv-rr44-01 is part of the buildd network, and appears listed in the buildd status page for rv-rr44-01, so you can see the stats and what it's currently building.
Support from SiFive has been acknowledged in the past, but only in talks.
Aurélien Jarno
Aside from lots of personal time and skill contributing to this port, and
debian-ports and Debian in general, there are two VMs that have been hosted and
managed by him, that have been building packages for unstable
and
experimental
since the early days too, along with the rv-mit- ones.
They are now hosted elsewhere (but kept their names), more on this below.
GCC Compile Farm Project / Oregon State University Open Source Lab (OSUOSL)
In mid-2018 I was approached by Laurent Guerby, from the GCC Compile Farm Project, to offer another two machines that they would host and we could use.
The GCC Compile Farm Project is a facilitator for free software developers to get access to resources, mosty to compile/build software projects, as the name implies. The management system for this project is hosted by Tetaneutral, and the machines themselves are hosted by various organizations around the world. These two machines will actually be hosted by the Oregon State University Open Source Lab (OSUOSL). From Lance Albertson, OSL's director:
“These machines are owned and hosted by the Oregon State University Open Source Lab (OSUOSL). The OSUOSL is a non-profit organization and provides infrastructure hosting for over 160 open source projects including those of worldwide leaders like the Apache Software Foundation, the Linux Foundation and Drupal.”
It turns out that the machines are very similar to those at MIT that we were using, so it was basically doubling resources available.
By the time that we could set the machines up it was the start of “freeze”
period for buster release, so basically we moved Aurélien's
rv-aurel32-01 and -02 there instead of adding new VMs. Since then and
at the moment they are helping to build unstable
, because the hardware
machines cannot cope in peak times.
Links to their buildd status pages:
- https://buildd.debian.org/status/architecture.php?a=riscv64&buildd=buildd_riscv64-rv-aurel32-01
- https://buildd.debian.org/status/architecture.php?a=riscv64&buildd=buildd_riscv64-rv-aurel32-02
We also use these machines for some work done by Helmut Grohne's rebootstrap project, because it's been very helpful to bootstrap RISC-V and we want ports in the future to be even more easy to bootstrap and adopt in Debian :-)
Mullvad
Mullvad is a VPN service from Sweden. They are providing us with HiFive Unleashed boards, rack space, network, ancillary hardware, and staff time on site to allow us to manage the boards remotely.
At the moment rv-mullvad-01 and -02, which are part of the buildd network, are hosted by Mullvad (the hostnames are a bit of a give-away, aren't they?). We were trying to get more boards there in the recent past, and while it has not been possible so far, we expect to have more boards there in the future.
Thanks to this, it has been possible since about mid-2019 to switch and have most packages built by hardware machines (all of them HiFive Unleashed boards), instead of mostly VMs until then.
This is a very important step in the progress of the port to hopefully become first-class at some point in the future, and this would not have been possible without support from Mullvad.
Their support had not been acknowledged publicly, so it was about time and one of the reasons of this post.
Links to their buildd status pages:
- https://buildd.debian.org/status/architecture.php?a=riscv64&buildd=buildd_riscv64-rv-mullvad-01
- https://buildd.debian.org/status/architecture.php?a=riscv64&buildd=buildd_riscv64-rv-mullvad-02
And finally...
... if you want to contribute in any way, please get it touch.
Work keeps happening and there are news in other areas that would be worth mentioning, but I really wanted to keep focus in this post on sponsors and build machines, so that's all for now.
Happy Building!