@@ -2456,3 +2456,171 @@ those comparisons.
24562456---------------------------(end of broadcast)---------------------------
24572457TIP 5: don't forget to increase your free space map settings
24582458
2459+ From pgsql-hackers-owner+M81282@postgresql.org Tue Mar 21 14:09:22 2006
2460+ Return-path: <pgsql-hackers-owner+M81282@postgresql.org>
2461+ Received: from ams.hub.org (ams.hub.org [200.46.204.13])
2462+ by candle.pha.pa.us (8.11.6/8.11.6) with ESMTP id k2LK9KM11902
2463+ for <pgman@candle.pha.pa.us>; Tue, 21 Mar 2006 15:09:21 -0500 (EST)
2464+ Received: from postgresql.org (postgresql.org [200.46.204.71])
2465+ by ams.hub.org (Postfix) with ESMTP id 6B1CF67BBF6;
2466+ Tue, 21 Mar 2006 16:09:18 -0400 (AST)
2467+ X-Original-To: pgsql-hackers-postgresql.org@localhost.postgresql.org
2468+ Received: from localhost (av.hub.org [200.46.204.144])
2469+ by postgresql.org (Postfix) with ESMTP id 0B2E19DCA0F;
2470+ Tue, 21 Mar 2006 16:08:50 -0400 (AST)
2471+ Received: from postgresql.org ([200.46.204.71])
2472+ by localhost (av.hub.org [200.46.204.144]) (amavisd-new, port 10024)
2473+ with ESMTP id 54998-02; Tue, 21 Mar 2006 16:08:50 -0400 (AST)
2474+ X-Greylist: from auto-whitelisted by SQLgrey-
2475+ X-Greylist: from auto-whitelisted by SQLgrey-
2476+ Received: from sss.pgh.pa.us (sss.pgh.pa.us [66.207.139.130])
2477+ by postgresql.org (Postfix) with ESMTP id C39619DC9E6;
2478+ Tue, 21 Mar 2006 16:08:45 -0400 (AST)
2479+ Received: from sss2.sss.pgh.pa.us (tgl@localhost [127.0.0.1])
2480+ by sss.pgh.pa.us (8.13.1/8.13.1) with ESMTP id k2LK8flq019571;
2481+ Tue, 21 Mar 2006 15:08:41 -0500 (EST)
2482+ To: Gary Doades <gpd@gpdnet.co.uk>
2483+ cc: pgsql-performance@postgresql.org, pgsql-hackers@postgresql.org
2484+ Subject: Re: [HACKERS] qsort again (was Re: [PERFORM] Strange Create Index behaviour)
2485+ In-Reply-To: <20781.1140046109@sss.pgh.pa.us>
2486+ References: <43F38867.6010701@gpdnet.co.uk> <19510.1140036968@sss.pgh.pa.us> <19779.1140038874@sss.pgh.pa.us> <43F39E53.1020009@gpdnet.co.uk> <20781.1140046109@sss.pgh.pa.us>
2487+ Comments: In-reply-to Tom Lane <tgl@sss.pgh.pa.us>
2488+ message dated "Wed, 15 Feb 2006 18:28:29 -0500"
2489+ Date: Tue, 21 Mar 2006 15:08:40 -0500
2490+ Message-ID: <19570.1142971720@sss.pgh.pa.us>
2491+ From: Tom Lane <tgl@sss.pgh.pa.us>
2492+ X-Virus-Scanned: by amavisd-new at hub.org
2493+ X-Spam-Status: No, score=0.113 required=5 tests=[AWL=0.113]
2494+ X-Spam-Score: 0.113
2495+ X-Mailing-List: pgsql-hackers
2496+ List-Archive: <http://archives.postgresql.org/pgsql-hackers>
2497+ List-Help: <mailto:majordomo@postgresql.org?body=help>
2498+ List-Id: <pgsql-hackers.postgresql.org>
2499+ List-Owner: <mailto:pgsql-hackers-owner@postgresql.org>
2500+ List-Post: <mailto:pgsql-hackers@postgresql.org>
2501+ List-Subscribe: <mailto:majordomo@postgresql.org?body=sub%20pgsql-hackers>
2502+ List-Unsubscribe: <mailto:majordomo@postgresql.org?body=unsub%20pgsql-hackers>
2503+ Precedence: bulk
2504+ Sender: pgsql-hackers-owner@postgresql.org
2505+ Status: OR
2506+
2507+ Last month I wrote:
2508+ > It seems clear that our qsort.c is doing a pretty awful job of picking
2509+ > qsort pivots, while glibc is mostly managing not to make that mistake.
2510+
2511+ I re-ran Gary's test script using the just-committed improvements to
2512+ qsort.c, and got pretty nice numbers (attached --- compare to
2513+ http://archives.postgresql.org/pgsql-performance/2006-02/msg00227.php).
2514+ So it was wrong to blame his problems on the pivot selection --- the
2515+ culprit was that ill-considered switch to insertion sort.
2516+
2517+ regards, tom lane
2518+
2519+ 100 runtimes for latest port/qsort.c, sorted ascending:
2520+
2521+ Time: 335.481 ms
2522+ Time: 335.606 ms
2523+ Time: 335.932 ms
2524+ Time: 336.039 ms
2525+ Time: 336.182 ms
2526+ Time: 336.231 ms
2527+ Time: 336.711 ms
2528+ Time: 336.721 ms
2529+ Time: 336.971 ms
2530+ Time: 336.982 ms
2531+ Time: 337.036 ms
2532+ Time: 337.190 ms
2533+ Time: 337.223 ms
2534+ Time: 337.312 ms
2535+ Time: 337.350 ms
2536+ Time: 337.423 ms
2537+ Time: 337.523 ms
2538+ Time: 337.528 ms
2539+ Time: 337.565 ms
2540+ Time: 337.566 ms
2541+ Time: 337.732 ms
2542+ Time: 337.741 ms
2543+ Time: 337.744 ms
2544+ Time: 337.786 ms
2545+ Time: 337.790 ms
2546+ Time: 337.898 ms
2547+ Time: 337.905 ms
2548+ Time: 337.952 ms
2549+ Time: 337.976 ms
2550+ Time: 338.017 ms
2551+ Time: 338.123 ms
2552+ Time: 338.206 ms
2553+ Time: 338.306 ms
2554+ Time: 338.514 ms
2555+ Time: 338.594 ms
2556+ Time: 338.597 ms
2557+ Time: 338.683 ms
2558+ Time: 338.705 ms
2559+ Time: 338.729 ms
2560+ Time: 338.748 ms
2561+ Time: 338.816 ms
2562+ Time: 338.958 ms
2563+ Time: 338.963 ms
2564+ Time: 338.997 ms
2565+ Time: 339.074 ms
2566+ Time: 339.106 ms
2567+ Time: 339.134 ms
2568+ Time: 339.159 ms
2569+ Time: 339.226 ms
2570+ Time: 339.260 ms
2571+ Time: 339.289 ms
2572+ Time: 339.341 ms
2573+ Time: 339.500 ms
2574+ Time: 339.585 ms
2575+ Time: 339.595 ms
2576+ Time: 339.774 ms
2577+ Time: 339.897 ms
2578+ Time: 339.927 ms
2579+ Time: 340.064 ms
2580+ Time: 340.133 ms
2581+ Time: 340.172 ms
2582+ Time: 340.219 ms
2583+ Time: 340.261 ms
2584+ Time: 340.323 ms
2585+ Time: 340.708 ms
2586+ Time: 340.761 ms
2587+ Time: 340.785 ms
2588+ Time: 340.900 ms
2589+ Time: 340.986 ms
2590+ Time: 341.339 ms
2591+ Time: 341.564 ms
2592+ Time: 341.707 ms
2593+ Time: 342.155 ms
2594+ Time: 342.213 ms
2595+ Time: 342.452 ms
2596+ Time: 342.515 ms
2597+ Time: 342.540 ms
2598+ Time: 342.928 ms
2599+ Time: 343.548 ms
2600+ Time: 343.663 ms
2601+ Time: 344.192 ms
2602+ Time: 344.952 ms
2603+ Time: 345.152 ms
2604+ Time: 345.174 ms
2605+ Time: 345.444 ms
2606+ Time: 346.848 ms
2607+ Time: 348.144 ms
2608+ Time: 348.842 ms
2609+ Time: 354.550 ms
2610+ Time: 356.877 ms
2611+ Time: 357.475 ms
2612+ Time: 358.487 ms
2613+ Time: 364.178 ms
2614+ Time: 370.730 ms
2615+ Time: 493.098 ms
2616+ Time: 648.009 ms
2617+ Time: 849.345 ms
2618+ Time: 860.616 ms
2619+ Time: 936.800 ms
2620+ Time: 1727.085 ms
2621+
2622+ ---------------------------(end of broadcast)---------------------------
2623+ TIP 3: Have you checked our extensive FAQ?
2624+
2625+ http://www.postgresql.org/docs/faq
2626+