So I have a second pdp11 running, this one has an 11/83 CPU with FPU, RQDX3 plus RD54 drive, RSX11M+ 4.6, a DEQNA, and a couple of other things that don't matter much. I've been working on configuring it for DECNET and TCP/IP and wondered what memory configuration would provide the fastest boot.
I have a 512kw (half populated) MSV11-JD (I think, it's the Q Bus safe one) and a number of 1mw Q bus memories (Dec and Datamation). So the key question: Would the system be faster with more memory for cache, or less memory and fast PMI?
Test parameters were simple: As soon as I entered the date and time on boot I started my stopwatch. First checkpoint was when NCP SET SYS started to execute, second was NCP SET SYS completing execution (network up) and end of loading IPINS.CMD for TCP/IP. I figured I would try 1mw slow memory no cache, then slow memory with 100 blocks cache, then fast memory 100 blocks cache, then slow memory 600 blocks of cache (big cache)
Speeds were... interesting. With no cache, slow memory the system was a dog:
(I didn't time to the start of NCP SET SYS)
207 seconds to NCP SET SYS completed
265 seconds to end of boot. Slow as dirt.
Slow memory plus 100 blocks of cache
60s to start of net set sys
125s to ncp on (65s to complete a memory heavy app)
170s done
This is quite a bit faster. Even a small cache cuts boot time by 36% or 95 seconds of wait time.
100k cache, fast memory?
55s to net set sys
108s to ncp on (53s to complete)
145s done
Ok, we're up to 45% faster than no cache, a 10% boost over slow memory. Shaved an additional 25 seconds on the overall boot, nice I suppose.
Checking the cache stats I saw:
70% hit rate
Reads, 84%, load 16%, write 35%
Total IO 823
Detailed Cache for Directory: 1236,32,14,0,52,1,21,76%,0,1257
Ok, let's boost the cache a LOT. Go to 600 blocks (and now we can only do the 1mw memory)
61s to ncp set sys
125 to ncp on
165s done
5 seconds taken off 38% faster than no cache. A 2% performance improvement.
And in looking at the cache stats after boot, the results were almost exactly the same as the smaller 100 block cache
73% hit
detailed
86% hit, 14% load, write 45% hit
Directory 1197,34,12,53,1,21,80%,0,1247
So what have we learned?
Adding a small amount of cache has a serious impact on the boot time. Makes some sense, the disk really thrashes during NCP SET SYS without cache and is quiet as a mouse with cache. So anything in this regard is a lot better than nothing. However adding more cache doesn't really increase the system speed so there is a limit to how useful it is on a single user system.
PMI memory does make the system faster, about 10% quicker. This is nice, but nowhere near double the performance because the board can clock memory twice as fast as Q Bus memory transfers. Maybe a sysgen would be quicker, in any event 10% quicker is nice, but not as Earth shattering as a small amount of in-memory cache.
I have a 512kw (half populated) MSV11-JD (I think, it's the Q Bus safe one) and a number of 1mw Q bus memories (Dec and Datamation). So the key question: Would the system be faster with more memory for cache, or less memory and fast PMI?
Test parameters were simple: As soon as I entered the date and time on boot I started my stopwatch. First checkpoint was when NCP SET SYS started to execute, second was NCP SET SYS completing execution (network up) and end of loading IPINS.CMD for TCP/IP. I figured I would try 1mw slow memory no cache, then slow memory with 100 blocks cache, then fast memory 100 blocks cache, then slow memory 600 blocks of cache (big cache)
Speeds were... interesting. With no cache, slow memory the system was a dog:
(I didn't time to the start of NCP SET SYS)
207 seconds to NCP SET SYS completed
265 seconds to end of boot. Slow as dirt.
Slow memory plus 100 blocks of cache
60s to start of net set sys
125s to ncp on (65s to complete a memory heavy app)
170s done
This is quite a bit faster. Even a small cache cuts boot time by 36% or 95 seconds of wait time.
100k cache, fast memory?
55s to net set sys
108s to ncp on (53s to complete)
145s done
Ok, we're up to 45% faster than no cache, a 10% boost over slow memory. Shaved an additional 25 seconds on the overall boot, nice I suppose.
Checking the cache stats I saw:
70% hit rate
Reads, 84%, load 16%, write 35%
Total IO 823
Detailed Cache for Directory: 1236,32,14,0,52,1,21,76%,0,1257
Ok, let's boost the cache a LOT. Go to 600 blocks (and now we can only do the 1mw memory)
61s to ncp set sys
125 to ncp on
165s done
5 seconds taken off 38% faster than no cache. A 2% performance improvement.
And in looking at the cache stats after boot, the results were almost exactly the same as the smaller 100 block cache
73% hit
detailed
86% hit, 14% load, write 45% hit
Directory 1197,34,12,53,1,21,80%,0,1247
So what have we learned?
Adding a small amount of cache has a serious impact on the boot time. Makes some sense, the disk really thrashes during NCP SET SYS without cache and is quiet as a mouse with cache. So anything in this regard is a lot better than nothing. However adding more cache doesn't really increase the system speed so there is a limit to how useful it is on a single user system.
PMI memory does make the system faster, about 10% quicker. This is nice, but nowhere near double the performance because the board can clock memory twice as fast as Q Bus memory transfers. Maybe a sysgen would be quicker, in any event 10% quicker is nice, but not as Earth shattering as a small amount of in-memory cache.
Last edited: