Commit Graph

1777 Commits (26442de1b3192d48b399ef6fc637f4e3249aeee7)
 

Author SHA1 Message Date
mingrammer 017c9f9cbc Fix typos
mingrammer ca89e7d77e Support go modules
Minje Park ca1fcad2aa retrieve a cpu count depends on an boolean argument
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
WAKAYAMA shirou bb15c85289 [mem][freebsd]: add SysctlUint which can adapt both 32 and 64 bit
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.
Lomanic ebc97eefea
Merge pull request #644 from Lomanic/issue640
[cpu][linux] Add support for logical arg in Counts #640 #628
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.
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.
Lomanic 200e5fbeab [cpu][linux] Remove regexp in Counts
Also remove some remaining debug print and unnecessary strings.Split
Lomanic c0ca431bf1 [cpu][linux] Add support for logical arg in Counts #640 #628
Lomanic 27ec6a0789 [host][linux] Remove call to sysctl binary in host/host_linux.go #639
Lomanic 7e9e36b568 [host][openbsd] Remove calls to sysctl binary in host/host_openbsd.go #639
Lomanic e3c878cc43 [mem][darwin] Remove calls to sysctl binary in mem/mem_darwin.go #639
Lomanic d110536e10 [host][darwin] Remove calls to sysctl binary in host/host_darwin.go #639
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.
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
shirou 6c6abd6d16
Merge pull request #626 from mznet/manual-available-memory-calculation
Manual available memory calculation
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
Lomanic 41e774419f
Merge pull request #643 from wcc526/master
Update process_linux.go for Add process ConnectionsMax
wcc526 462e0f6c2f Update process_linux.go for Add process ConnectionsMax
Lomanic 368a865910 [disk][linux] Fix comment in PartitionsWithContext
Lomanic 0d3a2ac515
[disk][linux] Fix comment in PartitionsWithContext
Lomanic b67304da73
Merge pull request #634 from qaz52897/support_old_kernel
Support Linux kernels without /proc/self/mountinfo (<2.6.26)
nikita-vanyasin 59b002e5c2 Fix function naming
nikita-vanyasin 4ef0ddafc7 Eliminate WMI queries when calling cpu.Times with percpu=True
based on e89f2c5fad/internal/monitors/cpu/cpu_windows.go
shirou 9294781cc9
Merge pull request #636 from shirou/feature/update_xswdev_version_freebsd_12
[mem]freebsd: update xswdev_version to adapt FreeBSD 12.
Minje Park c75deb9dc0 debug codes were removed
Minje Park 47ed6aaebd activefile and inactivefile fields were removed from VirtualMemoryStat
shirou b3d992b0f6 [mem]freebsd: update xswdev_version to adapt FreeBSD 12.
JHE a08b926ce6 It could be another error than the "self/mountinfo" missing
JHE 06a21ae66a Fix some issue.
JHE a5cb715e64 if mountinfo not found, use mounts
JHE d141349619 if mountinfo not found, use mounts
JHE a45f6d8a03 if mountinfo not found, use mounts
shirou 0714469421
Merge pull request #593 from nvinzens/master
replace self/mounts with self/mountinfo
shirou 150e391450
Merge pull request #632 from shirou/add_freebsd_arm
add FreeBSD ARM support. copied from i386
Minje Park d23abede78 struct typo and broken test case were fixed
Minje Park d7ce61cac8 Error checks and fallback for old linux
Minje Park 9fb3b9625d mem available fallback under kernel 2.6.13
shirou 64d607539e add FreeBSD ARM support. copied from i386
shirou 7675aac4b0
Merge pull request #631 from shirou/add_created_time_on_windows_to_readme
add created_time on Windows to README
shirou 4a5a3cb6da add created_time on Windows to README
Nico Vinzens 1a7a39a789
Merge branch 'master' into master
shirou 457f04671d [process] move PageFaultsStat to process.go
shirou 98c84ed30a [process]: move HWM to MemoryInfo
at least FreeBSD and Darwin has HWM.
shirou a33a26bd97
Merge pull request #567 from tagirb/grouped_memorymaps
implement grouped memorymaps output
shirou 48b37fa45e
Merge pull request #616 from nefeli/linux_page_faults
[process][linux] Export process page fault info
shirou d94da856e5
Merge pull request #624 from ajacoutot/cpu-openbsd
cpu: implement Mhz and Cores on OpenBSD
shirou faf242fefc
Merge pull request #625 from wcc526/patch-1
Add VmHWM