From owner-freebsd-hackers@FreeBSD.ORG Mon Dec 29 21:58:30 2008 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 74656106568B for ; Mon, 29 Dec 2008 21:58:30 +0000 (UTC) (envelope-from mailnull@mips.inka.de) Received: from mail-in-11.arcor-online.net (mail-in-11.arcor-online.net [151.189.21.51]) by mx1.freebsd.org (Postfix) with ESMTP id F0CA68FC1A for ; Mon, 29 Dec 2008 21:58:29 +0000 (UTC) (envelope-from mailnull@mips.inka.de) Received: from mail-in-14-z2.arcor-online.net (mail-in-14-z2.arcor-online.net [151.189.8.31]) by mail-in-11.arcor-online.net (Postfix) with ESMTP id 8094F2091F7 for ; Mon, 29 Dec 2008 22:25:02 +0100 (CET) Received: from mail-in-16.arcor-online.net (mail-in-16.arcor-online.net [151.189.21.56]) by mail-in-14-z2.arcor-online.net (Postfix) with ESMTP id 4B06510107 for ; Mon, 29 Dec 2008 22:25:00 +0100 (CET) Received: from lorvorc.mips.inka.de (dslb-092-075-216-131.pools.arcor-ip.net [92.75.216.131]) by mail-in-16.arcor-online.net (Postfix) with ESMTP id 9661B236E46 for ; Mon, 29 Dec 2008 22:25:00 +0100 (CET) Received: from lorvorc.mips.inka.de (localhost [127.0.0.1]) by lorvorc.mips.inka.de (8.14.3/8.14.3) with ESMTP id mBTLP0pp017792 for ; Mon, 29 Dec 2008 22:25:00 +0100 (CET) (envelope-from mailnull@lorvorc.mips.inka.de) Received: (from mailnull@localhost) by lorvorc.mips.inka.de (8.14.3/8.14.3/Submit) id mBTLP0Kc017791 for freebsd-hackers@freebsd.org; Mon, 29 Dec 2008 22:25:00 +0100 (CET) (envelope-from mailnull) From: naddy@mips.inka.de (Christian Weisgerber) Date: Mon, 29 Dec 2008 21:25:00 +0000 (UTC) Message-ID: Originator: naddy@mips.inka.de (Christian Weisgerber) To: freebsd-hackers@freebsd.org X-Virus-Scanned: ClamAV 0.94.1/8810/Mon Dec 29 17:40:50 2008 on mail-in-16.arcor-online.net X-Virus-Status: Clean Subject: lzo2 shows insane speed gap X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 29 Dec 2008 21:58:30 -0000 The archivers/lzo2 port runs a series of regression tests after the actual build. These tests show extremely divergent behavior on different machines. There are two types of machines: Type #1: Running the tests takes roughly the same time as configure and compile did, whether it's 30 seconds on a fast machine or 10 minutes on an old slow one. Type #2: Running the tests takes much, much, MUCH longer. I've tried this across alpha, amd64, i386, and sparc64, partially on FreeBSD, partially on OpenBSD. The operating system doesn't matter and there is no pattern related to endianness or 32/64 bits. You can find machines that are the same architecture (e.g. amd64) and are of similar overall speed (e.g. an Intel Xeon Xeon E5405 and an AMD Phenom 9350e) and one of these machines will be type #1 and the other will be #2 and take _a hundred_ times longer to run the tests. A hundred times. I have never seen anything like this before. On the "slow" machines, the tests also consume a lot of system time. I've seen figures from 20 to 50%. However, ktrace shows nothing out of the ordinary. My best guess at this time is that lzo2 somehow manages to induce crazy cache thrashing on some CPU models. Ideas and explanations welcome. -- Christian "naddy" Weisgerber naddy@mips.inka.de