OLD | NEW |
(Empty) | |
| 1 // Copyright 2011 The Go Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style |
| 3 // license that can be found in the LICENSE file. |
| 4 |
| 5 package co |
| 6 |
| 7 import ( |
| 8 "exec" |
| 9 "os" |
| 10 ) |
| 11 |
| 12 func sysInitOS() { |
| 13 cmd := exec.Command("sysctl", "hw.ncpu", "machdep.cpu.core_count", "hw.p
ackages", "machdep.cpu.cache.linesize") |
| 14 info, err := cmd.Output() |
| 15 if err != nil { |
| 16 print("co.SysConf: failed to execute sysctl (", err, ")\n") |
| 17 return |
| 18 } |
| 19 sysConf[ConfThreadCount] = sysParam(info, "hw.ncpu") |
| 20 sysConf[ConfCoreCount] = sysParam(info, "machdep.cpu.core_count") |
| 21 sysConf[ConfProcessorCount] = sysParam(info, "hw.packages") |
| 22 sysConf[ConfNumaNodeCount] = sysConf[ConfProcessorCount] |
| 23 sysConf[ConfCacheLineSize] = sysParam(info, "machdep.cpu.cache.linesize"
) |
| 24 } |
OLD | NEW |