Subject: kern/18387: New MI switch code has serious performance issues on i386
To: None <gnats-bugs@gnats.netbsd.org>
From: None <steve@mctavish.co.uk>
List: netbsd-bugs
Date: 09/23/2002 21:35:17
>Number: 18387
>Category: kern
>Synopsis: New MI switch code has serious performance issues on i386
>Confidential: no
>Severity: critical
>Priority: high
>Responsible: kern-bug-people
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Mon Sep 23 13:37:00 PDT 2002
>Closed-Date:
>Last-Modified:
>Originator: Steve Woodford
>Release: NetBSD 1.6H
>Organization:
>Environment:
System: NetBSD oor-wullie 1.6H NetBSD 1.6H (WULLIE) #1: Mon Sep 23 09:42:19 BST 2002 root@oor-wullie:/amd/horace/export/src/netbsd/cvs/current/src/sys/arch/i386/compile/WULLIE i386
Architecture: i386
Machine: i386
>Description:
An i386 kernel compiled from this morning's -current sources has
a serious performance problem.
Running top(1) on an otherwise idle Athlon 1800+ shows ~3% system time
being used. A somewhat slower laptop show a correspondingly larger figure.
As soon as the system is put to any use (e.g. make build of userland),
system time shoots up to near 100% and the application is observed to
run considerably slower than normal.
>How-To-Repeat:
Run -current on i386. Observe serious slow down.
>Fix:
Reverting i386/i386/locore.s to revision 1.258, and i386/include/types.h
to revision 1.35 makes the problem go away.
These revisions effectively disable the __HAVE_CHOOSEPROC functionality
added a few days ago.
>Release-Note:
>Audit-Trail:
>Unformatted: