diff options
author | Ben Gamari <bgamari.foss@gmail.com> | 2017-02-28 09:31:06 -0500 |
---|---|---|
committer | Ben Gamari <ben@smart-cactus.org> | 2017-02-28 10:56:11 -0500 |
commit | db2a667655506c43dd3c8260d29031bde55f1bee (patch) | |
tree | 2e0f1a77d29ebed8102a3bcd519dedaf5d4e7bfa /rts/RtsFlags.c | |
parent | c686af5818686efb55cfd81ac104027c959d6277 (diff) | |
download | haskell-db2a667655506c43dd3c8260d29031bde55f1bee.tar.gz |
rts: Allow profile output path to be specified on RTS command line
This introduces a RTS option, -po, which allows the user to override the stem
used to form the output file names of the heap profile and cost center summary.
It's a bit unclear to me whether this is really the interface we want.
Alternatively we could just allow the user to specify the `.hp` and `.prof` file
names separately. This would arguably be a bit more straightforward and would
allow the user to name JSON output with an appropriate `.json` suffix if they so
desired. However, this would come at the cost of taking more of the option
space, which is a somewhat precious commodity.
Test Plan: Validate, try using `-po` RTS option
Reviewers: simonmar, austin, erikd
Reviewed By: simonmar
Subscribers: thomie
Differential Revision: https://phabricator.haskell.org/D3182
Diffstat (limited to 'rts/RtsFlags.c')
-rw-r--r-- | rts/RtsFlags.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/rts/RtsFlags.c b/rts/RtsFlags.c index 9cff81001e..8d713542cc 100644 --- a/rts/RtsFlags.c +++ b/rts/RtsFlags.c @@ -296,14 +296,16 @@ usage_text[] = { " -S[<file>] Detailed GC statistics (if <file> omitted, uses stderr)", "", "", -" -Z Don't squeeze out update frames on stack overflow", -" -B Sound the bell at the start of each garbage collection", +" -Z Don't squeeze out update frames on stack overflow", +" -B Sound the bell at the start of each garbage collection", #if defined(PROFILING) "", -" -p Time/allocation profile (output file <program>.prof)", -" -P More detailed Time/Allocation profile", -" -Pa Give information about *all* cost centres", -" -pj Output cost-center profile in JSON format", +" -p Time/allocation profile in tree format ", +" (output file <output prefix>.prof)", +" -po<file> Override profiling output file name prefix (program name by default)", +" -P More detailed Time/Allocation profile in tree format", +" -Pa Give information about *all* cost centres in tree format", +" -pj Output cost-center profile in JSON format", "", " -h<break-down> Heap residency profile (hp2ps) (output file <program>.hp)", " break-down: c = cost centre stack (default)", |