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

go1.5.2, linux/amd64, Building packages ... fatal error: procresize: invalid arg #13908

Closed
jpicau opened this issue Jan 11, 2016 · 6 comments
Closed

Comments

@jpicau
Copy link

jpicau commented Jan 11, 2016

I'm trying to compile/install the go1.5.2 compiler on a SGI NUMA hardware running SUSE Linux Enterprise Server 11 (x86_64). I installed the go1.4.3 compiler before. It passed all tests. Then I set the GOROOT_BOOTSTRAP variable and ran ./all.bash.

Unfortunately, the proccess fails while

Building go_bootstrap for host, linux/amd64.

...
with

Building packages and commands for linux/amd64.

fatal error: procresize: invalid arg

runtime stack:
runtime.throw(0x7a6c00, 0x17)
/home/jpi/bin/go1.5/src/runtime/panic.go:527 +0x90
runtime.procresize(0x240, 0x0)
/home/jpi/bin/go1.5/src/runtime/proc1.go:2713 +0xb0f
runtime.schedinit()
/home/jpi/bin/go1.5/src/runtime/proc1.go:72 +0x110
runtime.rt0_go(0x7fffffffdf88, 0x9, 0x7fffffffdf88, 0x0, 0x0, 0x9, 0x7fffffffe394, 0x7fffffffe3ca, 0x7fffffffe3d2, 0x7fffffffe3db, ...)
/home/jpi/bin/go1.5/src/runtime/asm_amd64.s:109 +0x132

Has anyone an idea what is going wrong? Thanks!

@bradfitz
Copy link
Contributor

How many processors?

@jpicau
Copy link
Author

jpicau commented Jan 11, 2016

jpi@hydra:~/bin/go1.5/src> cpumap
Mon Jan 11 16:47:42 CET 2016
hydra.informatik.uni-kiel.de

This is an SGI UV
model name : Intel(R) Xeon(R) CPU E5-4640 0 @ 2.40GHz
Architecture : x86_64
cpu MHz : 2400.240
cache size : 20480 KB (Last Level)

Total Number of Sockets : 36
Total Number of Cores : 288 (8 per socket)
Hyperthreading : ON
Total Number of Physical Processors : 288
Total Number of Logical Processors : 576 (2 per Phys Processor)

UV Information
HUB Version: UVHub 3.0
Number of Hubs: 44
Number of connected Hubs: 36

Number of connected NUMAlink ports: 416

@bradfitz
Copy link
Contributor

The default limit is 256:

In src/runtime/runtime2.go:

const (
        // The max value of GOMAXPROCS.                                                                                                                                   
        // There are no fundamental restrictions on the value.                                                                                                            
        _MaxGomaxprocs = 1 << 8
)

Change that and recompile. Or set GOMAXPROCS=256.

@jpicau
Copy link
Author

jpicau commented Jan 11, 2016

I changed it to:
jpi@hydra:~/bin/go1.5/src> grep MaxGomaxprocs runtime/runtime2.go
_MaxGomaxprocs = 512
allp [_MaxGomaxprocs + 1]*p

But still ...

Building packages and commands for linux/amd64.

fatal error: procresize: invalid arg

runtime stack:
runtime.throw(0x798690, 0x17)
/home/jpi/bin/go1.5/src/runtime/panic.go:527 +0x90
runtime.procresize(0x240, 0x0)
/home/jpi/bin/go1.5/src/runtime/proc1.go:2691 +0xb0f
runtime.schedinit()
/home/jpi/bin/go1.5/src/runtime/proc1.go:72 +0x110
runtime.rt0_go(0x7fffffffdf88, 0x9, 0x7fffffffdf88, 0x0, 0x0, 0x9, 0x7fffffffe394, 0x7fffffffe3ca, 0x7fffffffe3d2, 0x7fffffffe3db, ...)
/home/jpi/bin/go1.5/src/runtime/asm_amd64.s:109 +0x132

Thanks by the way!

@jpicau
Copy link
Author

jpicau commented Jan 11, 2016

Sorry, it's too late. Now I changed it to 1024 and it works!

@jpicau
Copy link
Author

jpicau commented Jan 11, 2016

Thanks a lot, Brad!

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

No branches or pull requests

3 participants