From patchwork Fri Jul 19 22:11:20 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: DJ Delorie X-Patchwork-Id: 33743 Received: (qmail 50815 invoked by alias); 19 Jul 2019 22:11:24 -0000 Mailing-List: contact libc-alpha-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libc-alpha-owner@sourceware.org Delivered-To: mailing list libc-alpha@sourceware.org Received: (qmail 50807 invoked by uid 89); 19 Jul 2019 22:11:24 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-17.4 required=5.0 tests=AWL, BAYES_00, GIT_PATCH_0, GIT_PATCH_1, GIT_PATCH_2, GIT_PATCH_3, SPF_HELO_PASS autolearn=ham version=3.3.1 spammy= X-HELO: mx1.redhat.com Date: Fri, 19 Jul 2019 18:11:20 -0400 Message-Id: From: DJ Delorie To: libc-alpha@sourceware.org Subject: "make check" times While digging for some low-hanging fruit in "make" times, I did this: That one instance of "head" is called over 6000 times per "make check", and as it's the only non-builtin in that script, it adds about 11 seconds of overhead compared to just reading that one line with builtins. My question here is: how much of a time savings is worth the complexity of said savings? diff --git a/scripts/merge-test-results.sh b/scripts/merge-test-results.sh index 919bbae253..7088ef6996 100755 --- a/scripts/merge-test-results.sh +++ b/scripts/merge-test-results.sh @@ -35,7 +35,11 @@ case $type in subdir=${subdir:+$subdir/} for t in "$@"; do if [ -s "$objpfx$t.test-result" ]; then - head -n1 "$objpfx$t.test-result" + #head -n1 "$objpfx$t.test-result" + exec 6<"$objpfx$t.test-result" + read line <&6 + echo $line + exec 6<&- else echo "UNRESOLVED: $subdir$t" fi