[Mesa-dev] [PATCH shader-db 4/5] nv-report: make use of argparse
Ilia Mirkin
imirkin at alum.mit.edu
Fri Aug 3 21:39:05 UTC 2018
Oh. argparse.add_argument doesn't do what I thought it did. Neat. I
was going by memory, which most resembles a colander by now =/
This change is
Reviewed-by: Ilia Mirkin <imirkin at alum.mit.edu>
On Fri, Aug 3, 2018 at 5:34 PM, Rhys Perry <pendingchaos02 at gmail.com> wrote:
> They should still be positional arguments.
>
> For example, the output of --help (after the 5th patch) is:
>
>> usage: nv-report.py [-h] [--top ATTR N] [--smallest ATTR N] before after
>>
>> Shows changes between two shader-db runs for the nouveau drivers.
>>
>> positional arguments:
>> before the baseline run
>> after the run to compare against the baseline
>>
>> optional arguments:
>> -h, --help show this help message and exit
>> --top ATTR N also show the top n programs affected for attr
>> --smallest ATTR N also show the smallest n programs affected for attr
>
> (it doesn't seem to matter where --top/--smallest is)
>
> On Fri, Aug 3, 2018 at 10:29 PM, Ilia Mirkin <imirkin at alum.mit.edu> wrote:
>> I'd rather keep these as positional args. You can still use argparse
>> for other optional items.
>>
>> On Fri, Aug 3, 2018 at 3:53 PM, Rhys Perry <pendingchaos02 at gmail.com> wrote:
>>> Signed-off-by: Rhys Perry <pendingchaos02 at gmail.com>
>>> ---
>>> nv-report.py | 13 +++++++++++--
>>> 1 file changed, 11 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/nv-report.py b/nv-report.py
>>> index 079b2e08a3..1c1491af0a 100644
>>> --- a/nv-report.py
>>> +++ b/nv-report.py
>>> @@ -12,11 +12,15 @@ fields, except for the type, are optional.
>>>
>>> import re
>>> import sys
>>> +import argparse
>>>
>>>
>>> STATS = ["local", "shared", "gpr", "inst", "bytes"]
>>> ATTRS = ["name", "type"] + STATS
>>>
>>> +DESCRIPTION = """Shows changes between two shader-db runs for the nouveau
>>> +drivers."""
>>> +
>>> def getgroupvalue(m, groupname):
>>> if not m[groupname]:
>>> return 0
>>> @@ -130,8 +134,13 @@ def print_helped_hurt(keys, before, after):
>>> print
>>>
>>> def main(argv):
>>> - before = read_stats(argv[1])
>>> - after = read_stats(argv[2])
>>> + parser = argparse.ArgumentParser(description=DESCRIPTION)
>>> + parser.add_argument('before', help="the baseline run")
>>> + parser.add_argument('after', help="the run to compare against the baseline")
>>> + args = parser.parse_args(argv[1:])
>>> +
>>> + before = read_stats(args.before)
>>> + after = read_stats(args.after)
>>>
>>> keys = set()
>>> for key in set(before.stats.keys()) | set(after.stats.keys()):
>>> --
>>> 2.14.4
>>>
>>> _______________________________________________
>>> mesa-dev mailing list
>>> mesa-dev at lists.freedesktop.org
>>> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
More information about the mesa-dev
mailing list