From patchwork Tue Jul 20 06:34:21 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Naohiro Tamura X-Patchwork-Id: 44432 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 90E4838515DE for ; Tue, 20 Jul 2021 06:34:55 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 90E4838515DE DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1626762895; bh=BLjG1qEcOasJuKh4rGGCYjO6zgSq7qgzcbqp+FOt8Ik=; h=To:Subject:Date:In-Reply-To:References:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To: From; b=WS50eL5ihjWVDC6U3GyqX9BFDXBnXM8rB1n3RFu75KJoFS6QSxVR8z1P6mYRm2jXW 5m7D0vuo9IDzgjl6uR0GFV4IJzokosIrC6KG9XfLW0PWWNXBk5A+dOYPQ06yryQgBJ pXZlrKXRERKSzWMTQkTdI3ClhhdEHAH7unQR/s+c= X-Original-To: libc-alpha@sourceware.org Delivered-To: libc-alpha@sourceware.org Received: from esa10.hc1455-7.c3s2.iphmx.com (esa10.hc1455-7.c3s2.iphmx.com [139.138.36.225]) by sourceware.org (Postfix) with ESMTPS id 605913854814 for ; Tue, 20 Jul 2021 06:34:32 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 605913854814 IronPort-SDR: H92u5L2djbTGwIUUHji0CirljMLRrxFigIT5+6YiY5gw7ETGjs+6X7bwxv1TEvgRPgZynXUwOk K8sCQSgZqNzpR1BCjnPGe3Oofv6aQy6vzxgGjKj7Hz4RUT/YbJFcsS3vLRXzx5RWszeEywzlww NVCzUJd+W06I0/juVi03gnPullFTZ7+lwfIygDqcuOT2rTPbnKiLA+DCj2+OAft9ID3XlL1YNZ +9ou9OrAUFDel1Qw6ipIJ8Pql5xAGni7nWkBppnBn8I0O/HysyqVytl+IcOetyzz27LgWt/wrJ ql4U5q9NEHQsCFlxDUFZpCGp X-IronPort-AV: E=McAfee;i="6200,9189,10050"; a="25231272" X-IronPort-AV: E=Sophos;i="5.84,254,1620658800"; d="scan'208";a="25231272" Received: from unknown (HELO oym-r2.gw.nic.fujitsu.com) ([210.162.30.90]) by esa10.hc1455-7.c3s2.iphmx.com with ESMTP; 20 Jul 2021 15:34:30 +0900 Received: from oym-m4.gw.nic.fujitsu.com (oym-nat-oym-m4.gw.nic.fujitsu.com [192.168.87.61]) by oym-r2.gw.nic.fujitsu.com (Postfix) with ESMTP id AFDCAE60B4 for ; Tue, 20 Jul 2021 15:34:29 +0900 (JST) Received: from m3050.s.css.fujitsu.com (msm.b.css.fujitsu.com [10.134.21.208]) by oym-m4.gw.nic.fujitsu.com (Postfix) with ESMTP id D9A8E216A17 for ; Tue, 20 Jul 2021 15:34:28 +0900 (JST) Received: from bionic.lxd (unknown [10.126.53.116]) by m3050.s.css.fujitsu.com (Postfix) with ESMTP id C1C48AB; Tue, 20 Jul 2021 15:34:28 +0900 (JST) To: Noah Goldstein , Wilco Dijkstra , "Lucas A. M. Magalhaes" , libc-alpha@sourceware.org Subject: [PATCH v2 1/5] benchtests: Enable scripts/plot_strings.py to read stdin Date: Tue, 20 Jul 2021 06:34:21 +0000 Message-Id: <20210720063421.362260-1-naohirot@fujitsu.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20210713082214.307529-1-naohirot@fujitsu.com> References: <20210713082214.307529-1-naohirot@fujitsu.com> X-TM-AS-GCONF: 00 X-Spam-Status: No, score=-11.2 required=5.0 tests=BAYES_00, GIT_PATCH_0, KAM_DMARC_NONE, KAM_DMARC_STATUS, KAM_LAZY_DOMAIN_SECURITY, SPF_HELO_PASS, SPF_NONE, TXREP autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Naohiro Tamura via Libc-alpha From: Naohiro Tamura Reply-To: Naohiro Tamura Errors-To: libc-alpha-bounces+patchwork=sourceware.org@sourceware.org Sender: "Libc-alpha" This patch enables scripts/plot_strings.py to read a benchmark result file from stdin. To keep backward compatibility, that is to keep accepting multiple of benchmark result files in argument, blank argument doesn't mean stdin, but '-' does. Therefore nargs parameter of ArgumentParser.add_argument() method is not changed to '?', but keep '+'. ex: $ jq '.' bench-memset.out | plot_strings.py - $ jq '.' bench-memset.out | plot_strings.py - bench-memset-large.out $ plot_strings.py bench-memset.out bench-memset-large.out error ex: $ jq '.' bench-memset.out | plot_strings.py --- benchtests/scripts/plot_strings.py | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/benchtests/scripts/plot_strings.py b/benchtests/scripts/plot_strings.py index c71f0804e4de..ec634692d9ad 100755 --- a/benchtests/scripts/plot_strings.py +++ b/benchtests/scripts/plot_strings.py @@ -31,6 +31,7 @@ import json import matplotlib as mpl import numpy as np import os +import sys try: import jsonschema as validator @@ -331,8 +332,11 @@ def main(args): for filename in args.bench: bench = None - with open(filename, "r") as f: - bench = json.load(f) + if filename == '-': + bench = json.load(sys.stdin) + else: + with open(filename, "r") as f: + bench = json.load(f) validator.validate(bench, schema) @@ -354,7 +358,8 @@ if __name__ == "__main__": # Required parameter parser.add_argument("bench", nargs="+", - help="benchmark results file(s) in json format") + help="benchmark results file(s) in json format, " \ + "and/or '-' as a benchmark result file from stdin") # Optional parameters parser.add_argument("-b", "--baseline", type=str,