Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: utzoo!utgpu!water!watmath!clyde!rutgers!columbia!garfield.columbia.edu!ji
From: ji@garfield.columbia.edu.UUCP
Newsgroups: comp.unix.wizards
Subject: Re: Kernel Timings with MicrovaxII
Message-ID: <5173@columbia.edu>
Date: Thu, 3-Dec-87 17:32:35 EST
Article-I.D.: columbia.5173
Posted: Thu Dec  3 17:32:35 1987
Date-Received: Sun, 6-Dec-87 17:47:34 EST
References: <10646@brl-adm.ARPA>
Sender: nobody@columbia.edu
Reply-To: ji@garfield.columbia.edu.UUCP (John Ioannidis)
Organization: Columbia University CS Department
Lines: 39

Last year I had to do system call timing on a Multibus Sun-2. I got fairly 
repeatable results using a logic analyzer and a kernel hack. I suppose 
there should be something similar that you can do for the Microvax.

The idea was to use a variant of syscall 0 (the indirect system call) 
to put something recognizable on the bus, trigger a logic analyzer with it,
execute the system call, then put something else on the bus to signal the
end and use the l.a. to measure the elapsed time. 

After some hunting in the kernel sources I found how to turn on and off
the eight LEDs on the edge of the Multibus Sun-2 CPU. The LEDs were being
driven by a 74LS373 octal latch; I used a 20-pin clip on probe to get
the signals to my logic analyzer. I added a system call to the kernel
that turned all the LEDs on and off before and after executing the 
specified system call, set my logic analyzer to trigger on 0xFF and 
the rest is history. (If anyone is interested, I can post the kernel mods).

There are some more horror stories associated with the incident, like
rearranging the NMI routine by breaking to the PROM monitor, changing the
memory and continuing, but that's another story.

The results I got this way, though, were pretty similar with the ones
I got with just calling the system calls 1000 times and dividing by 1000, or
something to that effect. 

Good luck with the Microvax,

/ji


#include 

VOICE: 	+1 212 280 5510			INET: ji@garfield.columbia.EDU
USnail:	John Ioannidis			  
	450 Computer Science		USENET: columbia!ji
	Columbia University,		
	New York, NY 10027			

			... It's all Greek to me!