From owner-cvs-all@FreeBSD.ORG Sat Feb 11 09:33:08 2006 Return-Path: X-Original-To: cvs-all@FreeBSD.org Delivered-To: cvs-all@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id BE11216A420; Sat, 11 Feb 2006 09:33:08 +0000 (GMT) (envelope-from phk@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 60CA643D5C; Sat, 11 Feb 2006 09:33:08 +0000 (GMT) (envelope-from phk@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id k1B9X8RA013372; Sat, 11 Feb 2006 09:33:08 GMT (envelope-from phk@repoman.freebsd.org) Received: (from phk@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k1B9X8pO013371; Sat, 11 Feb 2006 09:33:08 GMT (envelope-from phk) Message-Id: <200602110933.k1B9X8pO013371@repoman.freebsd.org> From: Poul-Henning Kamp Date: Sat, 11 Feb 2006 09:33:07 +0000 (UTC) To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org X-FreeBSD-CVS-Branch: HEAD Cc: Subject: cvs commit: src/sys/amd64/amd64 tsc.c src/sys/i386/i386 geode.c tsc.c src/sys/kern kern_clock.c kern_exit.c kern_proc.c kern_resource.c kern_synch.c kern_tc.c src/sys/sparc64/sparc64 tick.c src/sys/sys proc.h systm.h X-BeenThere: cvs-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: CVS commit messages for the entire tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 11 Feb 2006 09:33:08 -0000 phk 2006-02-11 09:33:07 UTC FreeBSD src repository Modified files: sys/amd64/amd64 tsc.c sys/i386/i386 geode.c tsc.c sys/kern kern_clock.c kern_exit.c kern_proc.c kern_resource.c kern_synch.c kern_tc.c sys/sparc64/sparc64 tick.c sys/sys proc.h systm.h Log: CPU time accounting speedup (step 2) Keep accounting time (in per-cpu) cputicks and the statistics counts in the thread and summarize into struct proc when at context switch. Don't reach across CPUs in calcru(). Add code to calibrate the top speed of cpu_tickrate() for variable cpu_tick hardware (like TSC on power managed machines). Don't enforce monotonicity (at least for now) in calcru. While the calibrated cpu_tickrate ramps up it may not be true. Use 27MHz counter on i386/Geode. Use TSC on amd64 & i386 if present. Use tick counter on sparc64 Revision Changes Path 1.206 +1 -0 src/sys/amd64/amd64/tsc.c 1.7 +15 -0 src/sys/i386/i386/geode.c 1.205 +1 -0 src/sys/i386/i386/tsc.c 1.187 +3 -3 src/sys/kern/kern_clock.c 1.283 +3 -0 src/sys/kern/kern_exit.c 1.240 +1 -1 src/sys/kern/kern_proc.c 1.154 +45 -68 src/sys/kern/kern_resource.c 1.275 +6 -0 src/sys/kern/kern_synch.c 1.168 +133 -5 src/sys/kern/kern_tc.c 1.20 +1 -9 src/sys/sparc64/sparc64/tick.c 1.452 +3 -0 src/sys/sys/proc.h 1.240 +5 -2 src/sys/sys/systm.h