From owner-freebsd-current Sun Feb 7 00:39:34 1999 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id AAA23723 for freebsd-current-outgoing; Sun, 7 Feb 1999 00:39:34 -0800 (PST) (envelope-from owner-freebsd-current@FreeBSD.ORG) Received: from apollo.backplane.com (apollo.backplane.com [209.157.86.2]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id AAA23718 for ; Sun, 7 Feb 1999 00:39:32 -0800 (PST) (envelope-from dillon@apollo.backplane.com) Received: (from dillon@localhost) by apollo.backplane.com (8.9.2/8.9.1) id AAA20087; Sun, 7 Feb 1999 00:39:28 -0800 (PST) (envelope-from dillon) Date: Sun, 7 Feb 1999 00:39:28 -0800 (PST) From: Matthew Dillon Message-Id: <199902070839.AAA20087@apollo.backplane.com> To: "John S. Dyson" Cc: current@FreeBSD.ORG Subject: Re: Significant page coloring improvement References: <199902070615.BAA00269@y.dyson.net> Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG Ah, interesting. I understand the second bit. The first bit seems somewhat odd, though - the automatic page coloring adjustment made by _vm_object_allocate() doesn't work well enough for kmem_object? -Matt Matthew Dillon :When reviewing the VM code regarding another issue (another significant :VM contributor had found an interesting anomoly), I noticed that the :coloring wasn't as complete as it should be. : :Attached is a patch that appears to make a reasonable improvement in :performance, when using both my slightly more advanced VM kernel, and :also the stuff in -current. I seem to see a fork() only performance :improvement of about 10% on a 2 processor SMP PPro, using lmbench. On :vfork (which isn't completely implemented on a PPro, but is still faster :than fork), the improvement appears to be about 5%. : :Of course, any page coloring improvement is dependent on alot of factors, :but the missing object coloring handling is a problem... : :-- :John | Never try to teach a pig to sing, :dyson@iquest.net | it makes one look stupid :jdyson@nc.com | and it irritates the pig. : :... :Index: vm/vm_object.c :=================================================================== :RCS file: /local/home/ncvs/src/sys/vm/vm_object.c,v :retrieving revision 1.144 :diff -r1.144 vm_object.c :215a216 :> kmem_object->pg_color = (kernel_object->pg_color + PQ_L2_SIZE/4) & PQ_L2_MASK; :945a947 :> result->pg_color = (source->pg_color + OFF_TO_IDX(*offset)) & PQ_L2_MASK; : :--ELM918368107-256-0_-- : :To Unsubscribe: send mail to majordomo@FreeBSD.org :with "unsubscribe freebsd-current" in the body of the message : To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message