ARMv5 support request

346 views
Skip to first unread message

JT Olds

unread,
Dec 13, 2016, 4:15:55 PM12/13/16
to golang-dev
Hey Golang team!

I've seen a few references that ARMv5 support will be dropped with Go 1.9, and while I am excited for upcoming ARM optimizations with the SSA backend, we have a *large* number of ARMv5 servers that we are supporting and must continue to support for the foreseeable future. Upcoming hardware sales from us will be newer ARM instruction sets, but the bulk of our existing deployment is and will continue to be ARMv5 for better or worse.

So, the few references I've seen that the plan is to drop ARMv5 with Go 1.9 have us shaking a little. We can of course stick on Go 1.8, and in no way are we interested in not getting the benefit of the newer ARM instructions when supported, but surely there's a way to support both ARMv6 and newer instructions, and still build for ARMv5?

Is that possible? What would it take to persuade someone to keep ARMv5 support in some way on the roadmap? 

Thanks
-JT

Brad Fitzpatrick

unread,
Dec 13, 2016, 4:21:17 PM12/13/16
to JT Olds, golang-dev

One problem with arm5 support is us getting hardware capable of doing builds.

Do you have any interest in running the arm5 builders if support stays?


--
You received this message because you are subscribed to the Google Groups "golang-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to golang-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

JT Olds

unread,
Dec 13, 2016, 4:25:08 PM12/13/16
to golang-dev, ma...@jtolds.com
Absolutely, we'd be more than happy to do that.
To unsubscribe from this group and stop receiving emails from it, send an email to golang-dev+...@googlegroups.com.

Brad Fitzpatrick

unread,
Dec 13, 2016, 4:48:21 PM12/13/16
to JT Olds, golang-dev
What sort of ARMv5 hardware do you have? And how much RAM?


To unsubscribe from this group and stop receiving emails from it, send an email to golang-dev+unsubscribe@googlegroups.com.

JT Olds

unread,
Dec 13, 2016, 4:57:54 PM12/13/16
to Brad Fitzpatrick, golang-dev
Currently we do most of our builds on iMX6 reference boards that each have a 1GB of RAM, but obviously that's not ARMv5 hardware, even though we target ARMv5 with them. 

Slower, but just in the office alone we have hundreds of our own ARMv5 boards that are based on Marvell Kirkwood SoC references (http://www.7-cpu.com/cpu/Kirkwood.html) that each have 256MB of RAM.

With vendor relationships we could probably request other reference boards if needed. What are you looking for?

JT Olds

unread,
Dec 13, 2016, 5:02:04 PM12/13/16
to Brad Fitzpatrick, golang-dev
I guess I should add that the iMX6 boards go from dual core to quad core, whereas our Marvell Kirkwood-based boards are single-core. A coworker pointed me to https://github.com/golang/go/wiki/DashboardBuilders#builder-requirements, I think we should be able to find something that fits the bill.

Brad Fitzpatrick

unread,
Dec 13, 2016, 5:02:04 PM12/13/16
to JT Olds, golang-dev
Currently we run our "ARMv5" builders on Scaleway.com, which is actually more capable hardware, so we don't accurately test whether we're cheating and accidentally using instructions which we shouldn't be.

Our build system is capable of cross-compiling on fast hardware (e.g. huge Kubernetes x86 farm) and then sharding the tests out over slow hosts, so maybe your 256MB ARMv5 thingies will be sufficient. We could at least disable any tests that require more than 256MB of RAM.


To unsubscribe from this group and stop receiving emails from it, send an email to golang-dev+unsubscribe@googlegroups.com.

JT Olds

unread,
Dec 13, 2016, 5:09:37 PM12/13/16
to Brad Fitzpatrick, golang-dev
Oh! Well in that case, just let me know what we need to do and we'll spin up however many you need. We don't have a ton of extra development bandwidth at the moment, but I'm sure we could pitch in and help some from a development perspective as well.

minux

unread,
Dec 13, 2016, 6:21:36 PM12/13/16
to JT Olds, Brad Fitzpatrick, golang-dev
On Tue, Dec 13, 2016 at 4:57 PM, JT Olds <ma...@jtolds.com> wrote:
Currently we do most of our builds on iMX6 reference boards that each have a 1GB of RAM, but obviously that's not ARMv5 hardware, even though we target ARMv5 with them. 

Slower, but just in the office alone we have hundreds of our own ARMv5 boards that are based on Marvell Kirkwood SoC references (http://www.7-cpu.com/cpu/Kirkwood.html) that each have 256MB of RAM.

With GOGC=50, 256MB RAM + a little swap suffices to pass all.bash on linux/mips.
I expect ARMv5 memory usage will be similar on tip.
Reply all
Reply to author
Forward
0 new messages