Yinan Zhang
5d823f3a91
Consolidate struct definitions for prof dump parameters
2020-06-29 14:27:50 -07:00
Yinan Zhang
1f5fe3a3e3
Pass write callback explicitly in prof_data
2020-06-29 14:27:50 -07:00
Yinan Zhang
4556d3c0c8
Define structures for prof dump parameters
2020-06-29 14:27:50 -07:00
Yinan Zhang
1c6742e6a0
Migrate prof dumping to use buffered writer
2020-06-29 14:27:50 -07:00
Yinan Zhang
dad821bb22
Move unwind to prof_sys
2020-06-29 14:27:50 -07:00
Yinan Zhang
d128efcb6a
Relocate a few prof utilities to the right modules
2020-06-29 14:27:50 -07:00
Yinan Zhang
4736fb4fc9
Move file handling logic in prof_data to prof_sys
2020-06-29 14:27:50 -07:00
Yinan Zhang
767a2e1790
Move file handling logic in prof to prof_sys
2020-06-29 14:27:50 -07:00
Yinan Zhang
03ae509f32
Create prof_sys module for reading system thread name
2020-06-29 14:27:50 -07:00
Yinan Zhang
adfd9d7b1d
Change tsdn to tsd for thread name allocation
2020-06-29 14:27:50 -07:00
Yinan Zhang
841af2b426
Move thread name handling to prof_data module
2020-06-29 14:27:50 -07:00
Yinan Zhang
8118056c03
Expose prof_data testing internals only in prof tests
2020-06-29 14:27:50 -07:00
Yinan Zhang
f43ac8543e
Correct prof header macro namings
2020-06-29 14:27:50 -07:00
Yinan Zhang
c8683bee80
Unify printing for prof counts object
2020-06-29 14:27:50 -07:00
Yinan Zhang
5d292b5660
Push error handling logic out of core dumping logic
2020-06-29 14:27:50 -07:00
Yinan Zhang
f541871f5d
Reduce prof dump buffer size in debug build
2020-06-29 14:27:50 -07:00
Yinan Zhang
354183b10d
Define prof dump buffer size centrally
2020-06-29 14:27:50 -07:00
Yinan Zhang
7455813e57
Make dump file writing replaceable in test
2020-06-29 14:27:50 -07:00
Yinan Zhang
21e44c45d9
Make maps file opening replaceable in test
2020-06-29 14:27:50 -07:00
Yinan Zhang
4bb4037dbe
Extract utility function for opening maps file
2020-06-29 14:27:50 -07:00
Yinan Zhang
f307b25804
Only replace the dump file opening function in test
2020-06-29 14:27:50 -07:00
Yinan Zhang
d8cea87562
Move size inspections to test/analyze
2020-06-26 09:45:28 -07:00
Yinan Zhang
537a4bedb4
Add a tool to examine random number distributions
2020-06-26 09:45:28 -07:00
Yinan Zhang
d460333efb
Improve naming for prof system thread name option
2020-06-24 14:32:01 -07:00
David T. Goldblatt
25e43c6022
Witness: Make ranks an enum.
...
This lets us avoid having to increment a bunch of values manually every time we
add a new sort of lock.
2020-06-19 18:05:08 -07:00
Yinan Zhang
092fcac0b4
Remove unnecessary source files
2020-06-19 12:15:44 -07:00
Yinan Zhang
a795b19327
Remove beginning define in source files
...
```
sed -i "/^#define JEMALLOC_[A-Z_]*_C_$/d" src/*.c;
```
2020-06-19 12:15:44 -07:00
Yinan Zhang
24bbf376ce
Unify arena flag reading and selection
2020-06-19 11:06:05 -07:00
Yinan Zhang
e128b170a0
Do not fallback to auto arena when manual arena is requested
2020-06-19 11:06:05 -07:00
Yinan Zhang
95a59d2f72
Unify tcache flag reading and selection
2020-06-19 11:06:05 -07:00
Yinan Zhang
4b0c008489
Unify zero flag reading and setting
2020-06-19 11:06:05 -07:00
Yinan Zhang
2a84f9b8fc
Unify alignment flag reading and computation
2020-06-19 11:06:05 -07:00
Yinan Zhang
b7858abfc0
Expose prof testing internal functions
2020-06-19 09:16:51 -07:00
Yinan Zhang
40fa6674a9
Fix prof timestamp conf reading
2020-06-17 16:02:51 -07:00
David Goldblatt
7e09a57b39
stress/sizes: Fix an off-by-one issue.
...
Algorithmically, a size greater than 1024 ZB could access one-past-the-end of
the sizes array. This couldn't really happen since SIZE_MAX is less than 1024
ZB on all platforms we support (and we pick the arguments to this function to be
reasonable anyways), but it's not like there's any reason *not* to fix it,
either.
2020-06-16 10:34:19 -07:00
David Goldblatt
dcfa6fd507
stress/sizes: Add a couple more types.
2020-06-16 10:34:19 -07:00
David Goldblatt
40672b0b78
Remove duplicate logging in malloc.
2020-06-16 10:33:55 -07:00
Jon Haslam
4aea743279
High Resolution Timestamps for Profiling
2020-06-15 12:12:49 -07:00
David Goldblatt
d82a164d0d
Add thread.peak.[read|reset] mallctls.
...
These can be used to track net allocator activity on a per-thread basis.
2020-06-11 13:54:22 -07:00
David Goldblatt
fe7108305a
Add peak_t, for tracking allocator net max.
2020-06-11 13:54:22 -07:00
David Goldblatt
17a64fe91c
Add a small program to print data structure sizes.
2020-06-11 08:13:38 -07:00
Yinan Zhang
3e19ebd2ea
Add lock to protect prof last-N dumping
2020-06-09 17:03:05 -07:00
Yinan Zhang
a835d9cf85
Make prof last-N dumping non-blocking
2020-06-09 17:03:05 -07:00
Yinan Zhang
fc8bc4b5c0
Increase dump buffer for prof last-N list
2020-06-09 17:03:05 -07:00
Yinan Zhang
264d89d641
Extract restore and async cleanup functions for prof last-N list
2020-06-09 17:03:05 -07:00
Yinan Zhang
857ebd3daf
Make edata pointer on prof recent record an atomic fence
2020-06-09 17:03:05 -07:00
Yinan Zhang
b8bdea6b26
Fix: prof_recent_alloc_max_ctl_read() does not take tsd
2020-06-09 17:03:05 -07:00
Yinan Zhang
730658f72f
Extract alloc/dalloc utility for last-N nodes
2020-06-09 17:03:05 -07:00
Yinan Zhang
035be44867
Separate out dumping for each prof recent record
2020-06-09 17:03:05 -07:00
David Goldblatt
8da0896b79
Tcache: Make an integer conversion explicit.
2020-05-28 15:52:40 -07:00