From owner-cvs-src@FreeBSD.ORG Sun Apr 6 10:05:27 2003 Return-Path: Delivered-To: cvs-src@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 984FF37B401; Sun, 6 Apr 2003 10:05:27 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 43C1C43FBD; Sun, 6 Apr 2003 10:05:27 -0700 (PDT) (envelope-from jake@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h36H5R0U051160; Sun, 6 Apr 2003 10:05:27 -0700 (PDT) (envelope-from jake@repoman.freebsd.org) Received: (from jake@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h36H5QEf051159; Sun, 6 Apr 2003 10:05:26 -0700 (PDT) Message-Id: <200304061705.h36H5QEf051159@repoman.freebsd.org> From: Jake Burkholder Date: Sun, 6 Apr 2003 10:05:26 -0700 (PDT) To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org X-FreeBSD-CVS-Branch: HEAD Subject: cvs commit: src/sys/sparc64/include cpufunc.h md_var.h src/sys/sparc64/sparc64 machdep.c pmap.c X-BeenThere: cvs-src@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 06 Apr 2003 17:05:28 -0000 jake 2003/04/06 10:05:26 PDT FreeBSD src repository Modified files: sys/sparc64/include cpufunc.h md_var.h sys/sparc64/sparc64 machdep.c pmap.c Log: Use the vis block copy/zero functions for pmap_copy_page and pmap_zero_page. These are called through function pointers so that different implementations can be provided for cheetah, where the block load instructions may or may not be a win, and so they can be disabled with the machdep.use_vis tunable. In terms of raw bandwidth the integer versions are faster, but not allocating lines in the L2 cache for useless data gives a measurable improvement in user time for the benchmarks I tested (mostly buildworld with -j8). As far as I can tell the instructions used are implemented on everything back to UltraSPARC I, so there should not be a problem with different cpu types. Revision Changes Path 1.16 +0 -3 src/sys/sparc64/include/cpufunc.h 1.13 +9 -4 src/sys/sparc64/include/md_var.h 1.86 +14 -0 src/sys/sparc64/sparc64/machdep.c 1.106 +6 -6 src/sys/sparc64/sparc64/pmap.c