• Please review our updated Terms and Rules here

Benchmarking PMI vs Q Bus memory, what's faster

czunit

Veteran Member
Joined
Aug 7, 2015
Messages
530
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.
 
Last edited:
A real fun question is what would happen if I put the 256kw PMI memory at the bottom (where all the drivers and basic stuff goes) and let the general user apps run in the 1mw of Q bus memory above it. IO, Pool, and resident applications and libraries would rip, while I'd have a lot of memory for user processes to plod around in......
 
Yep, and the RQDX3 is a slug. I should try this test with my 11/73 with the MTI ESDI controller and 660mb drive. I think it is faster, and with a 2mw MSV11-QD memory it has plenty of cache.....
 
How does one specify how much to use for cache? I don't remember seeing that on my 11/84 (has the 11/83 cpu).
 
Disk cache, not memory cache. RSX11M+ can do this with the set /cache options. In fact this is one of the biggest reasons I want to get real M+ running on a Pro/380: With cache that miserably slow disk controller will be mostly remediated.

What PMI does that is "neat" though is it can transfer 2 words at a time into the 11/83's on board cache memory in one cycle. Thus if your program is chewing along lineally, it can run out of the cache more often. That might make an interesting difference as I believe the 11/83 can run code out of cache while DMA IO is going on the Q Bus.
 
Can that run on a Pro-380? I have a Pro-350. It has a disk. I wish it had a network card though.
 
Yep, and the RQDX3 is a slug. I should try this test with my 11/73 with the MTI ESDI controller and 660mb drive. I think it is faster, and with a 2mw MSV11-QD memory it has plenty of cache.....
If the RQDX3 is a slug, how would you describe the 2 or even the 1?

I've got an RQDX1 in an 11/73 that I haven't started playing around with yet... I'm guessing I'm in for some blisteringly fast performance?? (sarcasm)

-Chris
 
Last edited:
(SSHDD - slow speed SCSI HDD, HSHDD - high speed SCSI HDD, CF - compact flash)

Summary table for RT generation

Code:
                                                  SB         FB             XM        XB           ZM            ZB         SB-XB     SB-ZB
MS 1201.01 (VM1)          01:34:47  01:38:57  01:49:46  01:45:01  01:51:42  01:46:28  06:48:31  10:26:41
MS 1201.02 (VM2)          00:48:57  00:51:00  00:56:34  00:54:01  00:57:23  00:54:42  03:30:32  05:22:37
LSI-11/2                  01:27:05  01:31:46  01:42:12  01:36:51  01:44:19  01:38:14  06:17:54  09:40:27
1201.2018 (VM3 5 MHz)     00:38:36  00:40:16  00:44:38  00:42:44  00:45:21  00:43:16  02:46:14  04:14:47
1201.2018 (VM3 6.25 MHz)  00:31:30  00:32:50  00:36:25  00:34:52  00:37:00  00:35:19  02:15:37  03:27:56
KDF11-B (5.0688 MHz)      00:40:48  00:43:17  00:48:18  00:45:28  00:49:25  00:46:08  02:57:51  04:33:24
KDJ11-A (10 MHz)          49 minutes                                                                                           03:26:21
KDJ11-B (20 MHz, QBus1)   00:21:08  00:22:48  00:25:51  00:23:41  00:26:35  00:23:59  01:33:28  02:24:02
KDJ11-B (20 MHz, PMI1)    00:18:09  00:19:42  00:22:22  00:20:26  00:23:05  00:20:41  01:20:39  02:04:25
KDJ11-B (20 MHz, QBus2)   00:18:49  00:20:06  00:22:28  00:21:01  00:22:51  00:21:13  01:22:24  02:06:28
KDJ11-B (20 MHz, PMI2)    00:16:02  00:17:11  00:19:20  00:17:55  00:19:43  00:18:05  01:10:28  01:48:16
KDJ11-B (20 MHz, QBus3)   00:18:44  00:19:58  00:22:22  00:20:55  00:22:47  00:21:07  01:21:59  02:05:53
KDJ11-B (20 MHz, PMI3)    00:15:58  00:17:08  00:19:15  00:17:52  00:19:42  00:18:04  01:10:13  01:47:59
KDJ11-B (20 MHz, QBus4)   00:15:37  00:16:20  00:18:09  00:17:19  00:18:26  00:17:32  01:07:25  01:43:23
KDJ11-B (20 MHz, PMI4)    00:12:37  00:13:11  00:14:38  00:13:58  00:14:57  00:14:12  00:54:24  01:23:33
KDJ11-D (18 MHz)          00:24:51  00:26:48  00:30:01  00:27:56  00:30:52  00:28:19  01:49:36  02:48:47
PDP-11X/34 (DE10, 100MHz) 00:02:25  00:02:31  00:02:56  00:02:37  00:02:50  00:02:36  00:10:29  00:15:55
(1) SSHDD-SSHDD - between sections on the same spindle
(2) HSHDD-HSHDD - between sections on the same spindle
(3) HSHDD-SSHDD - between spindles
(4) CF-CF - since there are no moving physical parts - I think it doesn't matter - within the card or between cards
MS 1201.01, MS 1201.02, 1201.2018 - Soviet micrprocessors
 
Last edited:
Can that run on a Pro-380? I have a Pro-350. It has a disk. I wish it had a network card though.
That is, as they say, the question. POS is simply M+, the problem is they made one version for 350 and 380, thus they had to compile it without split I/D which meant a lot of cool features were left out.

The Pro disk controllers do not use MCSP, more the traditional RL02 like track/sector/head addressing. So it might be possible to re-write the drivers. Couple that with the ability to jumper the printer port for ODT serial to get things up and one might be able to gen a version that works, then figure out how to bootstrap it onto a current version and load.

The real question is how did they get a version of M+ to run on a non I/D processor? I forget if Micro/RSX runs on an 11/23+, and if it does from the boot floppies then how would it run on that and also on an 11/73+ as there was no SYSGEN.

I do have a DECNA here for the 380, and so far it seems to pass diagnostics and might work. Odd card, has an additional 128k of memory, does not appear to be a DEQNA clone, and has to be installed in the last CTI slot. Another big reason to get M+ running is that I could then see if we could get BQTCP going on it....
 
Code:
KDF11B-BH ROM V1.0
 
 4088KB MEMORY
9 STEP MEMORY TEST
  STEP 1 2
173132
@10000/177777 12706
010002/177777 10000
.....
010126/007417 4715
010130/177777 5007
@10000G
HX 2.2  RT-11 Cold boot..
 
HX DSK/TTY multiplexer   v3.3  2016
 
RT-11SB (S) V05.07
 
.R MSCPCK
 
.BOO/FOR C40:
 
 
 
RSX-11M-PLUS V4.6  BL87   2044.KW  System:"KXX002"
>RED ZC1:=SY:
>RED ZC1:=LB:
>RED ZC1:=SP:
>MOU ZC1:"RSX11MPBL87"
>@ZC1:[1,2]STARTUP
>;                      PLEASE NOTE
>;
>;      If you have not yet read the system release notes, please do so
>;      now before attempting to perform a SYSGEN or to utilize the new
>;      features of this system.
>;
>;
>; Please ignore any random characters that may have printed on your
>; terminal just now.  They came from a SET /INQUIRE=TI: command.
>; Evidently your terminal does not recognize escape sequences.
>; This will not affect the running of this command file.
>;
>* Please enter time and date (HH:MM DD-MMM-YYYY) [S]: 14:42 17-DEC-2022
>TIME 14:42 17-DEC-2022
>ACS SY:/BLKS=1024.
>CON ONLINE ALL
......
>INS LB1:[4,54]SRDRES
>ACD UNLINK TI:
>ACD REMOVE NUMBER 20
That ACD is not installed
>ACD INSTALL LB1:[ACD2]MIMACD.TSK AS NUMBER 20 ASSIGN ACD$MIM
>ACD LINK TI: TO NUMBER 20
>@ <EOF>
>BAD DK7:/LI
BAD -- DK7: Privilege violation
>MOU DK7:/FOR
>BAD DK7:/LI
BAD -- DK7: Total bad blocks= 0.
>CON DISPL ATTR FOR SYS
SYS
                PDP-11/23, EIS,UNIBUS_Map,QBUS,CIS,FPP,
                Clock=KW11-L, $TKPS=50., $TTPRM=000002
>
 
If you're open to ESDI or even SMD interface, look out for the Webster or Sigma SRQD11-SC/EC controllers - they have on board setup utilities for partitioning etc. and 1MB or 4MB (later version, very rare) cache on board...

I installed them in systems back in the 80s and we had 30+ users happily running on an 11/73 or 11/83 point of sale and accounts use - pretty heavy disk activity and they usually averaged 90%+ hit rate on reads. They made a massive improvement over fast non-DEC SMD drives, predictably.
 
There was a question - how did they make the RSX-11M-Plus bootable without I-D space separation. I have shown that this is not necessarily for RSX-11M-Plus. Well, loading RSX-11M-Plus on the Pro will require further development, since it requires obtaining information from the settings tables and the console driver will require further work - in fact, the Pro does not have a console terminal.
 
The pro DOES have a console terminal. If you jumper pins 8-9 (I think) on the printer port RS232 cable the system will come up with an ODT prompt there and a serial port at 177560 or whatever it is. The only odd thing is the interrupt is 200/224 instead of 60/64, but that should be fixable in a decent sysgen on a real pdp11.

Harder part is getting the files over. I do have the DECNA, and one of my first projects is to see if LAT and file transfer/access works with a Pro/Decnet and a 11/83 running M+ and Decnet. Will see, then will start thinking this out.

Also the "video terminal" part can (and I think is) accessed as a 176500 type device with a normal vector as a VT125 type terminal. So all that programming is kind of done for you and as long as you stay in REGIS type graphics you don't need to figure out the whole bitmapped mode to do the display.

Wonder if anyone has done this.
 
The pro DOES have a console terminal. If you jumper pins 8-9 (I think) on the printer port RS232 cable the system will come up with an ODT prompt there and a serial port at 177560 or whatever it is. The only odd thing is the interrupt is 200/224 instead of 60/64, but that should be fixable in a decent sysgen on a real pdp11.
I know about it, but it will not be enough just to short these two pins and connect the terminal - you still need to enable interrupts by reprogramming the interrupt controller (bit 6 does not work), but as a plus - switching to standard addresses 60-64 is also possible. And how many more such subtleties can come up when someone actually does the adaptation ... In general, I have an idea to transfer RSX-11M-Plus to Pro, but when I get to that - I don't know ...
 
Back
Top