Commit Graph

1532 Commits (c8251cf603d7b8911a0ff8f3919df9550701f658)
 

Author SHA1 Message Date
Omar Polo 53ce014b14
handle EOPNOTSUPP when checking for hw.smt
if hw.smt is not applicable for the current platform (e.g. i386),
pretend it's enabled
6 years ago
Xu Lian 6eb4d73bde Fix an indentation issues 6 years ago
Liam Xu b3670f8027 Add hour handling in convertCPUTimes function
This commit add hour handling in convertCPUTimes function.

The time string usually comes from macOS command line:
ps -a -o stime,utime -p <pid>

which could contain hour string.
6 years ago
Omar Polo c28fe78291
forget to take addr 6 years ago
Lomanic 381f7cc0bf
Merge pull request #652 from mingrammer/fix-misspells
Fix typos
6 years ago
mingrammer 017c9f9cbc Fix typos 6 years ago
mingrammer ca89e7d77e Support go modules 6 years ago
Minje Park ca1fcad2aa retrieve a cpu count depends on an boolean argument 6 years ago
shirou 533485542f
Merge pull request #649 from shirou/feature/fix_648_freebsd_mem
[mem][freebsd]: add SysctlUint which can adapt both 32 and 64 bit
6 years ago
WAKAYAMA shirou bb15c85289 [mem][freebsd]: add SysctlUint which can adapt both 32 and 64 bit 6 years ago
Omar Polo 932f2f6049
Fix cpu stats when hw.smt is enabled
When hw.smt is enabled, and it's enabled by default from 6.4, the
number of cpus given by `runtime.NumCPU()` is half of the total: only
the cpuN with N = 0,2,4,... are used by the system. We need to detect
that and ask for the correct stats.
6 years ago
Lomanic ebc97eefea
Merge pull request #644 from Lomanic/issue640
[cpu][linux] Add support for logical arg in Counts #640 #628
6 years ago
Omar Polo 12d92847cf
Get hw.ncpuonline without unix.SysctlUint32
unix.Sysctl always return an error when asking for hw.ncpuonline, so
revert to a direct unix.Syscall6 to get the cpu count.
6 years ago
Omar Polo c2c7893509
fix logic error + little refactor
Fix: get cptime of n-th cpu when `percpu` instead of the average.

While there, rearrange the last if statement to make the code a bit
more homogeneous.
6 years ago
Lomanic 200e5fbeab [cpu][linux] Remove regexp in Counts
Also remove some remaining debug print and unnecessary strings.Split
6 years ago
Lomanic c0ca431bf1 [cpu][linux] Add support for logical arg in Counts #640 #628 6 years ago
Lomanic 27ec6a0789 [host][linux] Remove call to sysctl binary in host/host_linux.go #639 6 years ago
Lomanic 7e9e36b568 [host][openbsd] Remove calls to sysctl binary in host/host_openbsd.go #639 6 years ago
Lomanic e3c878cc43 [mem][darwin] Remove calls to sysctl binary in mem/mem_darwin.go #639 6 years ago
Lomanic d110536e10 [host][darwin] Remove calls to sysctl binary in host/host_darwin.go #639 6 years ago
Lomanic 974d52d412 [load][darwin] Remove calls to sysctl binary in load/load_darwin.go #639
Again, a simple benchmark:

Lomanics-iMac:~ lomanic$ time ./load_avg.old ; time ./load_avg
{load1:0.89,load5:0.99,load15:1.01} <nil>

real    0m0.019s
user    0m0.008s
sys     0m0.013s
{load1:0.8876953125,load5:0.98828125,load15:1.0146484375} <nil>

real    0m0.011s
user    0m0.004s
sys     0m0.006s

This is faster and yields more precise results.
6 years ago
Lomanic 2ec35609d2 [cpu][darwin] Remove calls to sysctl binary in cpu/cpu_darwin.go #639
Empirical benchmark (calling to cpu.Info):

Lomanics-iMac:~ lomanic$ time ./cpu_info
info 0: {"cpu":0,"vendorId":"GenuineIntel","family":"6","model":"30","stepping":5,"physicalId":"","coreId":"","cores":2,"modelName":"Intel(R) Core(TM) i5-6440HQ CPU @ 2.60GHz","mhz":2590,"cacheSize":256,"flags":["syscall","xd","em64t","lahf","lzcnt","prefetchw","rdtscp","tsci","fpu","vme","de","pse","tsc","msr","pae","mce","cx8","apic","sep","mtrr","pge","mca","cmov","pat","pse36","clfsh","mmx","fxsr","sse","sse2","htt","sse3","ssse3","cx16","sse4.1","sse4.2","popcnt","vmm"],"microcode":""}

real    0m0.049s
user    0m0.023s
sys     0m0.041s
Lomanics-iMac:~ lomanic$ time ./cpu_info.fixed
info 0: {"cpu":0,"vendorId":"GenuineIntel","family":"6","model":"30","stepping":5,"physicalId":"","coreId":"","cores":2,"modelName":"Intel(R) Core(TM) i5-6440HQ CPU @ 2.60GHz","mhz":2590,"cacheSize":256,"flags":["fpu","vme","de","pse","tsc","msr","pae","mce","cx8","apic","sep","mtrr","pge","mca","cmov","pat","pse36","clfsh","mmx","fxsr","sse","sse2","htt","sse3","ssse3","cx16","sse4.1","sse4.2","popcnt","vmm","syscall","xd","em64t","lahf","lzcnt","prefetchw","rdtscp","tsci"],"microcode":""}

real    0m0.010s
user    0m0.004s
sys     0m0.006s
6 years ago
shirou 6c6abd6d16
Merge pull request #626 from mznet/manual-available-memory-calculation
Manual available memory calculation
6 years ago
shirou 41128a19e8
Merge pull request #641 from nikita-vanyasin/eliminate-wmi-queries-for-cpu-usage
Eliminate WMI queries when calling cpu.Times with percpu=True
6 years ago
Lomanic 41e774419f
Merge pull request #643 from wcc526/master
Update process_linux.go for Add process ConnectionsMax
6 years ago
wcc526 462e0f6c2f Update process_linux.go for Add process ConnectionsMax 6 years ago
Lomanic 368a865910 [disk][linux] Fix comment in PartitionsWithContext 6 years ago
Lomanic 0d3a2ac515
[disk][linux] Fix comment in PartitionsWithContext 6 years ago
Lomanic b67304da73
Merge pull request #634 from qaz52897/support_old_kernel
Support Linux kernels without /proc/self/mountinfo (<2.6.26)
6 years ago
nikita-vanyasin 59b002e5c2 Fix function naming 6 years ago
nikita-vanyasin 4ef0ddafc7 Eliminate WMI queries when calling cpu.Times with percpu=True
based on e89f2c5fad/internal/monitors/cpu/cpu_windows.go
6 years ago
shirou 9294781cc9
Merge pull request #636 from shirou/feature/update_xswdev_version_freebsd_12
[mem]freebsd: update xswdev_version to adapt FreeBSD 12.
6 years ago
Minje Park c75deb9dc0 debug codes were removed 6 years ago
Minje Park 47ed6aaebd activefile and inactivefile fields were removed from VirtualMemoryStat 6 years ago
shirou b3d992b0f6 [mem]freebsd: update xswdev_version to adapt FreeBSD 12. 6 years ago
JHE a08b926ce6 It could be another error than the "self/mountinfo" missing 6 years ago
JHE 06a21ae66a Fix some issue. 6 years ago
JHE a5cb715e64 if mountinfo not found, use mounts 6 years ago
JHE d141349619 if mountinfo not found, use mounts 6 years ago
JHE a45f6d8a03 if mountinfo not found, use mounts 6 years ago
shirou 0714469421
Merge pull request #593 from nvinzens/master
replace self/mounts with self/mountinfo
6 years ago
shirou 150e391450
Merge pull request #632 from shirou/add_freebsd_arm
add FreeBSD ARM support. copied from i386
6 years ago
Minje Park d23abede78 struct typo and broken test case were fixed 6 years ago
Minje Park d7ce61cac8 Error checks and fallback for old linux 6 years ago
Minje Park 9fb3b9625d mem available fallback under kernel 2.6.13 6 years ago
shirou 64d607539e add FreeBSD ARM support. copied from i386 6 years ago
shirou 7675aac4b0
Merge pull request #631 from shirou/add_created_time_on_windows_to_readme
add created_time on Windows to README
6 years ago
shirou 4a5a3cb6da add created_time on Windows to README 6 years ago
Nico Vinzens 1a7a39a789
Merge branch 'master' into master 6 years ago
shirou 457f04671d [process] move PageFaultsStat to process.go 6 years ago