be4d84c0c1
mcexec: Add --stack-premap=<premap_size>[,<max>]
...
<premap_size> of stack is pre-mapped on creating a process.
And its max size of stack is set to <max>.
This replaces MCKERNEL_RLIMIT_STACK=<premap_size>,<max>.
2017-09-26 17:04:10 +09:00
a2fbe99b60
madvise: support MADV_DONTDUMP/DODUMP
...
refs #661
2017-09-26 14:21:40 +09:00
5b51eb80a3
Redirect kmsg to /dev/log and detect hungup
...
1. ihkmond retrieves kmsg when the amount of kmsg exceeds the threashold and
/dev/mcosX is deleted
2. ihkmond periodically monitors OS status change to detect hungup
2017-09-20 15:25:19 +09:00
daa7526127
rusage and ihklib: Fix out-of-memory reporting and cleanup
...
1. Fix OOM: Count memory usage only when allocation succeeded
2. Fix OOM: Make user allocation fail when memory is running out
3. Fix OOM: Move rusage_init() before numa_init()
4. Cleanup: Rename ihkconfig/ihkosctl functions
5. Cleanup: Pass event type to eventfd()
6. Cleanup: arch/.../rusage.h --> arch/.../arch_rusage.h
2017-09-20 15:11:57 +09:00
c5d71c325d
Modify copyright of files related to XPMEM
2017-09-20 15:11:57 +09:00
aa7cb970c4
ihk_os_getrusage(): Compile LWK-specific results in mcctrl
...
1. User asks mcctrl for the result via ihk_os_getrusage() with passing void *
2. mcctrl compiles the results and passes them to the user
3. User interprets it by using the type defined in the LWK-specific header
2017-09-20 15:03:45 +09:00
2a46fd0b2d
compiler.h: take in recent linux updates for newer gcc support
...
Had to remove from original compiler-gcc:
- things that deal with types, e.g. READ_ONCE macro and friends;
- #define barrier(). This one would be better there at some point.
2017-09-12 18:27:28 +09:00
a05b6e1ba8
Expand dump-functions for excluding user/unused memory (This is rebase commit for merging to development)
2017-09-11 15:49:04 +09:00
0278a876db
disable POSTK_DEBUG_* on x86_64
2017-09-07 22:20:22 +09:00
9989f41fd3
add arm64 support
...
- add arm64 dependent codes with GICv3 and SVE support
- fix bugs based on architecture separation requests
2017-09-05 15:06:27 +09:00
236a072311
Add qlmpi and swap to mckernel (This is rebase commit for merging to development)
2017-08-29 15:04:58 +09:00
74f15783d2
ihk_os_getrusage(): Add per-page-size memory usage accounting
2017-08-17 12:49:34 +09:00
4cd1c120fa
profile: add PROFILE_remote_page_fault
2017-07-23 19:00:00 +09:00
6714161c25
profile remote TLB invalidations
2017-07-20 22:28:25 +09:00
992a292c08
profile: better time breakdown and exclusion of idle cycles
2017-07-20 17:36:34 +09:00
38961fca78
Revert "do_fork(): RLIMIT_NPROC check"
...
This reverts commit 035e7913d8 .
2017-07-13 04:13:41 +09:00
035e7913d8
do_fork(): RLIMIT_NPROC check
...
1. mcexec sets RLIMIT_NPROC to the number of mcexec threads.
2. do_fork() gets the current number of threads by calling rusage function.
3. do_fork() returns -EAGAIN when the limit is exceeded.
2017-07-12 20:42:38 +09:00
d7b8e7f4f4
fix to count user pages
...
refs #864
2017-07-14 09:51:39 +09:00
0f58e9e77d
NUMA: expose correct /sys/devices/system/node/nodeX/meminfo
2017-07-07 00:59:32 +09:00
5cdd194856
Port Linux red-black trees
2017-07-08 18:12:01 +09:00
67843151d3
fix how to count rss and num of threads
...
refs #864
refs #865
2017-07-03 16:27:46 +09:00
07efb3ab9a
support to utility thread offloading
2017-06-27 13:27:09 +09:00
2afc9d37d1
fix config.h inclusion
2017-06-17 07:05:33 +09:00
52bc052e1a
mcexec: recursively bind mount $prefix/rootfs/ on /
2017-06-16 18:01:25 +09:00
1ca16b9693
rusage: add kernel/include/config.h.in
2017-06-08 09:02:52 +09:00
6bdafbd33b
Fix rusage
2017-06-07 09:30:42 +09:00
edf059888d
support rusage parameter of wait4
...
refs #857
2017-05-28 07:52:47 +09:00
dd2ef89997
SMP: generic function call facility for CPU sets
2017-05-28 07:41:48 +09:00
9b5ccb5a33
Pre-map file mappings from /dev/shm (--mpol-shm-premap mcexec argument)
2017-05-23 20:00:06 +09:00
746b459e7f
profile: more detailed profiling of file PFs
2017-05-23 19:58:52 +09:00
e901d42fb6
mcexec: --extend-heap-by: argument to specify heap extension size
2017-05-23 19:58:49 +09:00
105d373765
PROFILE_page_fault_XXX: more detailed page PF profiling
2017-05-23 19:57:08 +09:00
0dd2fad33b
brk(): more forceful heap extension
2017-05-23 19:57:08 +09:00
a256280118
PROFILE_mmap_XXX: more detailed mmap profiling
2017-05-23 19:57:08 +09:00
d75be7228b
PROFILE_mmap_anon_no_contig_phys: profile ANON mmap()s that couldn't be backed by contiguous physical memory
2017-05-23 02:42:06 +09:00
e3e0f6a174
mcexec: introduction of --profile
2017-05-23 02:42:06 +09:00
dd6f721e03
profile: job level event accumulation
2017-05-23 02:42:06 +09:00
9c25d47d9b
mcexec: transfer job information to LWK
2017-05-23 02:42:06 +09:00
e2f424846c
profile: rewrite syscall tracker for generic profiling code
2017-05-23 02:42:05 +09:00
610463ff39
sched_setaffinity(): respect process cpu_set
2017-05-23 02:39:42 +09:00
26b9484bae
mcexec: --mpol-threshold to control MPOL_BIND/MPOL_PREFERRED
2017-05-23 02:39:42 +09:00
182202523e
mcexec/mm: user memory policy control for heap, stack, etc.
2017-05-23 02:39:42 +09:00
fdbdcbd0ee
VR_AP_USER: memory range flag to respect user mempolicy (e.g., in PF handler)
2017-05-23 02:39:41 +09:00
21373338cc
mcctrl: IHK CPU register manipulation implementation
2017-05-20 12:38:14 +09:00
84025cc9cb
configure : add option --enable-rusage
2017-05-19 10:31:14 +09:00
ba58054c9d
create rusage branch.
2017-05-19 10:30:36 +09:00
c2b1d8e3ef
IKC: delete the comments for review
2017-05-19 10:26:29 +09:00
8daffa939e
IKC: distribute IKC-interrupt to Linux cpus.
2017-05-19 10:26:29 +09:00
9992fe0d72
mcctrl: support remote CPU MSR read/write operations
2017-05-05 00:01:43 +09:00
1541b26086
ihklib: add pa_info functions.
2017-04-27 17:13:49 +09:00