all: tests fail on AppliedMicro X-Gene ARM64 processor #11957

Closed
ikitayama opened this Issue Jul 31, 2015 · 23 comments

Comments

Projects
None yet
5 participants

I've been trying to build go natively on X-Gene, however:

$ taskset 1 ./all.bash

fails.

Contributor

davecheney commented Jul 31, 2015

Can you please include as much detail as possible. Does it build pass without using task set ?

Thanks

Dave

On 31 Jul 2015, at 11:32, Itaru Kitayama notifications@github.com wrote:

I've been trying to build go natively on X-Gene, however:

$ taskset 1 ./all.bash

fails.


Reply to this email directly or view it on GitHub.

No it did not, without the taskset twice the build stopped at:

Testing packages.

ok archive/tar 0.082s
ok archive/zip 6.477s
ok bufio 0.984s
ok bytes 50.702s
ok compress/bzip2 1.170s
ok compress/flate 9.381s
ok compress/gzip 0.112s
ok compress/lzw 1.184s
ok compress/zlib 17.086s
ok container/heap 0.043s
ok container/list 0.041s
ok container/ring 0.262s
ok crypto/aes 0.320s
ok crypto/cipher 0.024s
ok crypto/des 0.120s
ok crypto/dsa 0.228s
ok crypto/ecdsa 0.562s
ok crypto/elliptic 0.624s
ok crypto/hmac 0.021s
ok crypto/md5 0.040s
ok crypto/rand 0.204s
ok crypto/rc4 2.571s
ok crypto/rsa 4.325s
ok crypto/sha1 0.033s
ok crypto/sha256 0.029s
ok crypto/sha512 0.047s
ok crypto/subtle 0.059s

Is there a way to skip testing as an interim solution to complete the build process?

Contributor

davecheney commented Jul 31, 2015

Is there a way to skip testing as an interim solution to complete the build process?

Yes, use ./make.bash, in place of ./all.bash

Can I ask you to please include more information, as much as possible, insane amounts, the entire output if possible via a gist.

Thanks

Dave

Contributor

davecheney commented Jul 31, 2015

Which operating system are you using, which version, can you show uname -a, lsb_release -a (or equivalent if you are not in a debian world), etc.

Contributor

mikioh commented Jul 31, 2015

@ikitayama,

Please take a look at https://github.com/golang/go/blob/master/CONTRIBUTING.md, and let us know your information. Otherwise, this issue never gets anywhere.

@mikioh mikioh changed the title from Native build fails on AppliedMicro X-Gene to all: tests fails on AppliedMicro X-Gene ARM64 processor Jul 31, 2015

@mikioh mikioh changed the title from all: tests fails on AppliedMicro X-Gene ARM64 processor to all: tests fail on AppliedMicro X-Gene ARM64 processor Jul 31, 2015

I've put information as much as I can, see the gist link below.

https://gist.github.com/ikitayama/c366010e4f27ea5da0a5

Contributor

davecheney commented Jul 31, 2015

Thank you. The arm64 builders on the build.golang.org dashboard are identical machines (I suspect we all have the same development hardware kit, in the same cheap black case), which do not replicate your results.

Can you help me by explaining what you see and more details about your operating system. Both arm64 builders I run are running Ubuntu 14.04.

Contributor

davecheney commented Jul 31, 2015

Oh, here is one thing

GOROOT_BOOTSTRAP=$GOROOT

^ please don't do that. You will be overwriting the toolchain you are using to rebuild.

I recommend this procedure

  1. on another machine, say a stock linux/amd64 machine, run this command

    cd $GOROOT/src
    env GOOS=linux GOARCH=arm64 ./bootstrap.bash

Then copy the resulting .tgz file to your arm64 host and unextract it to $HOME

cd $GOROOT/src
env GOROOT_BOOTSTRAP=$HOME/go-linux-arm64-bootstrap ./all.bash

This is the process that the builders use and I think you will find success with it.

I am on Fedora release 22, Kernel version is 4.0.8-300.fc22.aarch64. All packages are synched daily.

I was using the toolchain built on my Mac OS X, is this not supported at all? I will try to built it fresh on a linux/amd64 machine and see if there's any difference.

Contributor

davecheney commented Jul 31, 2015

I was using the toolchain built on my Mac OS X, is this not supported at all? I will try to built it fresh on a linux/amd64 machine and see if there's any difference.

Yes, that is supported, there is no problem in building the bootstrap environment on a mac.

I believe the problem is you have set

GOROOT_BOOTSTRAP=$GOROOT

Which is causing the bootstrap environment to be overwritten during the build process.

I learned the setting from the GoArm Wiki, recipe is described at the bottom of the page.

Building Go from all.bash fails even in the non-parallel set-up. Make.bash fails also in parallel mode.

Output of taskset 1 make.bash is below:
https://gist.github.com/ikitayama/783904eeccf2579294c2

Contributor

davecheney commented Jul 31, 2015

I am sorry but I cannot help you if you use taskset. That is not how go should be built.

On 31 Jul 2015, at 18:08, Itaru Kitayama notifications@github.com wrote:

Output of taskset 1 make.bash is below:
https://gist.github.com/ikitayama/783904eeccf2579294c2


Reply to this email directly or view it on GitHub.

OK. I'll drop the trick from now on and tried to build go without it.

make.bash worked this time.

$ go version
go version devel +3548a1e Fri Jul 31 00:37:44 2015 +0000 linux/arm64

Thank you very much for your support, Dave.

Contributor

davecheney commented Jul 31, 2015

I'm glad to hear that.

You may want to try all.bash to also run the tests on your system.

If you want to raise an issue about the taskset failure that would be fine, but it is not a priority for the upcoming 1.5 release.

On 31 Jul 2015, at 19:46, Itaru Kitayama notifications@github.com wrote:

make.bash worked this time.

$ go version
go version devel +3548a1e Fri Jul 31 00:37:44 2015 +0000 linux/arm64

Thank you very much for your support, Dave.


Reply to this email directly or view it on GitHub.

Will do that next week. How do we work around the lack of memory issue, I think that's preventing
the machine from building Go steadily? Is 16 GB sufficient for the 8-core Mustang?

Contributor

davecheney commented Jul 31, 2015

All the builders on the dashboard are mustang machines, we have no problems with available memory.

On 31 Jul 2015, at 20:09, Itaru Kitayama notifications@github.com wrote:

Will do that next week. How do we work around the lack of memory issue, I think that's preventing
the machine from building Go steadily? Is 16 GB sufficient for the 8-core Mustang?


Reply to this email directly or view it on GitHub.

Contributor

ianlancetaylor commented Jul 31, 2015

I removed the recommendation on the wiki page to set GOROOT=GOROOT_BOOTSTRAP. That is not supported.

As far as I can tell, this issue is fixed, so closing.

I'll report back the all.bash results on Fedora 22 here when I am granted access to a 32GB Mustang.

Contributor

davecheney commented Aug 3, 2015

Thank you. To repeat, 512mb per core is sufficient for a successful build.
All the arm64 builders on the dashboard are using the standard 16gb
configuration shipped with the xgene development system.

On Mon, 3 Aug 2015 10:19 Itaru Kitayama notifications@github.com wrote:

I'll report back the all.bash results on Fedora 22 here when I am granted
access to a 32GB Mustang.


Reply to this email directly or view it on GitHub
#11957 (comment).

all.bash went ok this morning without an issue on a 32GB of Mustang (Fedora 21) in the Linaro server lab.

The full log of the build and tests:
https://gist.github.com/ikitayama/d2fc32362b83ca5744a4

@mikioh mikioh added this to the Go1.5 milestone Aug 4, 2015

@gopherbot gopherbot locked and limited conversation to collaborators Aug 5, 2016

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.