Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

x/build: set up ppc64/linux and ppc64le/linux POWER9 builders #30138

Closed
ceseo opened this issue Feb 8, 2019 · 16 comments

Comments

Projects
None yet
6 participants
@ceseo
Copy link
Contributor

commented Feb 8, 2019

In preparation to the work I intend to submit for go1.13, we would certainly need new POWER9 builders to test the new instructions.

Do you have any preferences on where to set these up? Is OSU still fine?

Thanks!

@gopherbot gopherbot added this to the Unreleased milestone Feb 8, 2019

@gopherbot gopherbot added the Builders label Feb 8, 2019

@ALTree ALTree added the new-builder label Feb 9, 2019

@ALTree

This comment has been minimized.

Copy link
Member

commented Feb 9, 2019

@ianlancetaylor

This comment has been minimized.

Copy link
Contributor

commented Feb 9, 2019

@ceseo Who are you asking?

From the point of view of the Go project, I think anywhere reliable is fine.

@ceseo

This comment has been minimized.

Copy link
Contributor Author

commented Feb 11, 2019

@ianlancetaylor thanks! I'd like the opinion of any of the maintainers before start setting them up.

So, I guess I'll set them up at OSU, since our current builders POWER8 are there too.

@bradfitz

This comment has been minimized.

Copy link
Member

commented Feb 11, 2019

I hereby bless continued use of OSU.

@ceseo

This comment has been minimized.

Copy link
Contributor Author

commented Feb 11, 2019

@bradfitz cool, thanks!

What sizing did you use for the current POWER8 builders? (disk/CPUs/memory)

@bradfitz

This comment has been minimized.

Copy link
Member

commented Feb 11, 2019

debian@go-le-1:~$ cat /proc/cpuinfo 
processor       : 0 
cpu             : POWER8 (architected), altivec supported
clock           : 3425.000000MHz
revision        : 2.1 (pvr 004b 0201)

processor       : 1
cpu             : POWER8 (architected), altivec supported
clock           : 3425.000000MHz
revision        : 2.1 (pvr 004b 0201)

timebase        : 512000000
platform        : pSeries
model           : IBM pSeries (emulated by qemu)
machine         : CHRP IBM pSeries (emulated by qemu)

debian@go-le-1:~$ free
             total       used       free     shared    buffers     cached
Mem:       4177344    1068416    3108928      95552     112768     692352
-/+ buffers/cache:     263296    3914048
Swap:            0          0          0

debian@go-le-1:~$ lsblk
NAME   MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
vda    254:0    0  40G  0 disk 
├─vda1 254:1    0   7M  0 part 
└─vda2 254:2    0  40G  0 part /
@ceseo

This comment has been minimized.

Copy link
Contributor Author

commented Feb 11, 2019

Excellent! I'll get this going then.

@dmitshur

This comment has been minimized.

Copy link
Member

commented Feb 21, 2019

We need to decide what builder host type names we should use for the new builders. I see we already have "host-linux-ppc64-osu" and "host-linux-ppc64le-osu" host types:

https://github.com/golang/build/blob/da35c5f8393ceb4ddf77a333b424c3cc4799a70f/dashboard/builders.go#L378-L395

@ceseo In the original issue, you said:

we would certainly need new POWER9 builders to test the new instructions.

Can you elaborate on how the new instructions are different? What are the exact GOOS and GOARCH values? Is it still GOOS=linux GOARCH=ppc64 and GOOS=linux GOARCH=ppc64le and the difference is POWER8 vs POWER9?

Given that "host-linux-ppc64-osu" and "host-linux-ppc64le-osu" host names are already taken, do you think these would be appropriate?

host-linux-ppc64-power9-osu
host-linux-ppc64le-power9-osu

("-osu" suffix since they'll also be running at OSU.)

@ceseo

This comment has been minimized.

Copy link
Contributor Author

commented Feb 22, 2019

I have a change ready that creates a new env var like GOARM for ppc64/ppc64le. POWER9 has a new ISA, so we want to be able to generate these new instructions in SSA and take advantage of extra performance without breaking POWER8. However, we need to be able to test them. That's why we need a builder.

host-linux-ppc64le-power9-osu is fine.

There's no need for a ppc64 (BE) builder, since there are no Linux distributions supporting POWER9 on big endian at the moment. AIX people might want a ppc64 POWER9 builder in the future, though.

@gopherbot

This comment has been minimized.

Copy link

commented Feb 25, 2019

Change https://golang.org/cl/163757 mentions this issue: dashboard: add linux-ppc64le POWER9 builder

@ceseo

This comment has been minimized.

Copy link
Contributor Author

commented Feb 25, 2019

@dmitshur I think everything is set now. The builder is showing in the Go Farmer list and the CL for builders.go is submitted. Please let me know if anything else is required.

@dmitshur

This comment has been minimized.

Copy link
Member

commented Feb 25, 2019

Excellent! Thanks for sending the CL. I will be able to get to it tomorrow or so, but review from others is welcome too.

@dmitshur

This comment has been minimized.

Copy link
Member

commented Feb 27, 2019

This is deployed now. The new builder is showing up on build.golang.org:

image

@bradfitz

This comment has been minimized.

Copy link
Member

commented Feb 27, 2019

Reopening this as they're failing with:

##### moved GOROOT
build cache is required, but could not be located: GOCACHE is not defined and neither $XDG_CACHE_HOME nor $HOME are defined

Looks like some config work remains.

@bradfitz bradfitz reopened this Feb 27, 2019

@ceseo

This comment has been minimized.

Copy link
Contributor Author

commented Mar 8, 2019

Yes, I saw that. Sorry for the delay... I was on vacation.

Trying to fix it now.

@ceseo

This comment has been minimized.

Copy link
Contributor Author

commented Mar 8, 2019

@bradfitz it seems to be working now. Please see if you're happy with that and then you can close this issue again.

@bradfitz bradfitz closed this Mar 8, 2019

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.