From patchwork Tue Aug 4 11:31:34 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paul Zimmermann X-Patchwork-Id: 40202 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 40957385C8B1; Tue, 4 Aug 2020 11:31:56 +0000 (GMT) X-Original-To: libc-alpha@sourceware.org Delivered-To: libc-alpha@sourceware.org Received: from mail3-relais-sop.national.inria.fr (mail3-relais-sop.national.inria.fr [192.134.164.104]) by sourceware.org (Postfix) with ESMTPS id 969A4385700B for ; Tue, 4 Aug 2020 11:31:53 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 969A4385700B Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=inria.fr Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=Paul.Zimmermann@inria.fr X-IronPort-AV: E=Sophos;i="5.75,433,1589234400"; d="scan'208";a="355921338" Received: from tomate.loria.fr (HELO tomate) ([152.81.10.51]) by mail3-relais-sop.national.inria.fr with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 04 Aug 2020 13:31:34 +0200 Date: Tue, 04 Aug 2020 13:31:34 +0200 Message-Id: From: Paul Zimmermann To: libc-alpha@sourceware.org Subject: improve documentation of the 'name' directive and the 'workload' mechanism X-Spam-Status: No, score=-8.8 required=5.0 tests=BAYES_00, GIT_PATCH_0, KAM_DMARC_STATUS, RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) 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: , Errors-To: libc-alpha-bounces@sourceware.org Sender: "Libc-alpha" Hi, here is a patch improving the 'name' directive and the 'workload' mechanism (for "make bench"). Feedback is welcome. I will submit separately later on some new workload traces for sin, exp, pow, sinf128, expf128, powf128. Paul Zimmermann From b8ff91bf0bfb26114d1b4e5d30f210f41a4ff58d Mon Sep 17 00:00:00 2001 From: Paul Zimmermann Date: Tue, 4 Aug 2020 13:27:39 +0200 Subject: [PATCH] improve documentation of the 'name' directive and the 'workload' mechanism Reviewed-by: Carlos O'Donell --- benchtests/README | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/benchtests/README b/benchtests/README index f440f3295a..44736d7e63 100644 --- a/benchtests/README +++ b/benchtests/README @@ -125,17 +125,25 @@ math functions perform computations at different levels of precision (64-bit vs performance of these functions. One could separate inputs for these domains in the same file by using the `name' directive that looks something like this: - ##name: 240bit + ##name: 240bits -See the pow-inputs file for an example of what such a partitioned input file -would look like. +All inputs after the ##name: 240bits directive and until the next `name' +directive (or the end of file) are part of the "240bits" benchmark and +will be output separately in benchtests/bench.out. See the pow-inputs file +for an example of what such a partitioned input file would look like. -It is also possible to measure throughput of a (partial) trace extracted from -a real workload. In this case the whole trace is iterated over multiple times -rather than repeating every input multiple times. This can be done via: +It is also possible to measure latency and reciprocal throughput of a +(partial) trace extracted from a real workload. In this case the whole trace +is iterated over multiple times rather than repeating every input multiple +times. This can be done via: ##name: workload- +where is simply used to distinguish between different traces in the +same file. To create such a trace, you can simply extract using printf() +values uses for a specific application, or generate random values in some +interval. See the expf-inputs file for an example of this workload mechanism. + Benchmark Sets: ==============