Добавил в первое сообщение время компиляции ядра RSX-11M-Plus 4.6
Добавил в первое сообщение время компиляции ядра RSX-11M-Plus 4.6
Добавил в первое сообщение инфу по LSI-11/2 и пропущенную инфу (ZM, ZB, время генерации 6-ти мониторов) на KDJ11-B (20 МГц и HSHDD) - не помню, почему пропустил :)
- - - Добавлено - - -
А так же попробовал сделать сводную таблицу :)
Поскольку комментариев не поступило и поскольку она занимает меньше места - оставил только сводную таблицу в первом сообщении
В первое сообщение добавил таблицу сравнения быстродействий - ВМ3 (5 МГц, 1201.2018, нулевое время задержки памяти), F-11 (KDF11-B, старая память) и J-11 (18 МГц, KDJ11-B, память на плате).
Из интересного. Если J-11 работает без кэша, цикл чтения с шины, цикл записи на шину - минимум 8 клоков. 18 000 000/8 = 2 250 000 оп/с. Показанная производительность на операция регистр-регистр - 2 142 538 - то есть весьма близко (минус 4.77 процента) к теоретическому пределу. Нуу... память быстрая - не тормозит проц :)
Во первых - в первом сообщении ошибочно указал, что плата KDJ11-B. На самом деле тестировалась KDJ11-D
Во вторых - добавил результаты по действительно KDJ11-B.
Если посмотреть на результаты, то можно заметить, как сильно сказывается старая память - результат регистр-регистр с попаданием в кэш в 10 с копейками раз быстрее результата без (особого) попадания в кэш.
Ну и наконец мы увидели, что действительно, J11 в идеальных условиях (при чтении в кэш попали) выдаёт скорость - частота клока, делённая на 4. Тактовая частота на KDJ11-B - 20 МГц (редакция микросхемы процессора - -07) - и результат только на 0.18 процента хуже идеального - 5-ти миллионов операций в секунду :)
И результаты генерации RT-11 (думаю - процентов на 70-80 - нагрузка на проц) только подтверждают - проц J11 - очень хороший проц :)
Но вот если бы удалось разогнать ВМ3 до 20 МГц - возможно он бы выдал (на регистр-регистр) результат и получше - 6 666 667 операций в секунду. Но учитывая, какое получается число, наши, похоже, решили не рисковать :D
В первое сообщение добавил скорострельность генерации RT-11 на ВМ3, работающем на 6.25 МГц
- - - Добавлено - - -
Добавил забытое суммарное время :)
Другой вариант программы SPEED - для KDJ11-D (ака PDP-11/53) и KDJ11-B (ака PDP-11/83)
KDJ11-D
KDJ11-BКод:.RUN HX7:SPEED
File name: P1153.TXT
You computer/processor? PDP-11/53
; Computer speed measure program [V5]
; written by Osipenko A., MPTI
EMPTY LOOP 4.90 mks, 203.9 op/ms 6 mem, 0.82 mks/mem
SEC 0.96 mks, 1042.5 op/ms 1 mem, 0.96 mks/mem
NOP 0.96 mks, 1042.5 op/ms 1 mem, 0.96 mks/mem
MOV R0,R0 0.59 mks, 1688.1 op/ms 1 mem, 0.59 mks/mem
MOV #0,R1 0.96 mks, 1042.5 op/ms 2 mem, 0.48 mks/mem
MOV (R0)+,R1 1.15 mks, 871.7 op/ms 2 mem, 0.57 mks/mem
TST (R0)+ 1.15 mks, 871.7 op/ms 2 mem, 0.57 mks/mem
MOV -(R0),R1 1.47 mks, 682.3 op/ms 2 mem, 0.73 mks/mem
TST -(R0) 1.47 mks, 682.3 op/ms 2 mem, 0.73 mks/mem
MOV R5,-(SP) 1.31 mks, 763.2 op/ms 2 mem, 0.66 mks/mem
MOV @R0,R1 1.20 mks, 830.9 op/ms 2 mem, 0.60 mks/mem
MOV 0(R0),R1 1.86 mks, 537.3 op/ms 3 mem, 0.62 mks/mem
MOV @0(R0),R1 2.46 mks, 406.9 op/ms 4 mem, 0.61 mks/mem
MOV @0(R0),@0(R0) 4.52 mks, 221.3 op/ms 7 mem, 0.65 mks/mem
MOV (R0)+,-(R0) 2.08 mks, 481.7 op/ms 3 mem, 0.69 mks/mem
MOV @(R0)+,@-(R0) 3.47 mks, 288.0 op/ms 5 mem, 0.69 mks/mem
MOV 0,R1 1.86 mks, 537.3 op/ms 3 mem, 0.62 mks/mem
MOV @#0,R1 1.61 mks, 620.8 op/ms 3 mem, 0.54 mks/mem
MOV #0,#0 2.77 mks, 360.5 op/ms 3 mem, 0.92 mks/mem
MOVB R0,R0 0.59 mks, 1688.1 op/ms 1 mem, 0.59 mks/mem
MOVB @R0,R1 1.20 mks, 830.9 op/ms 2 mem, 0.60 mks/mem
MOVB 0(R0),R1 1.86 mks, 537.3 op/ms 3 mem, 0.62 mks/mem
MOVB (R0)+,-(R0) 2.08 mks, 481.7 op/ms 3 mem, 0.69 mks/mem
MOVB @(R0)+,@-(R0) 3.47 mks, 288.0 op/ms 5 mem, 0.69 mks/mem
DEC R0 0.59 mks, 1688.1 op/ms 1 mem, 0.59 mks/mem
DEC @R0 1.61 mks, 620.8 op/ms 2 mem, 0.81 mks/mem
DEC @0(R0) 3.05 mks, 328.3 op/ms 4 mem, 0.76 mks/mem
ADD R0,R0 0.59 mks, 1688.1 op/ms 1 mem, 0.59 mks/mem
ADD #2,R0 0.96 mks, 1042.6 op/ms 2 mem, 0.48 mks/mem
SUB R0,R0 0.59 mks, 1688.1 op/ms 1 mem, 0.59 mks/mem
CLR R0 0.59 mks, 1688.1 op/ms 1 mem, 0.59 mks/mem
CLR @R0 1.20 mks, 831.0 op/ms 2 mem, 0.60 mks/mem
CLR 0(R0) 1.86 mks, 537.3 op/ms 3 mem, 0.62 mks/mem
CLR @0(R0) 2.46 mks, 406.9 op/ms 4 mem, 0.61 mks/mem
TST R0 0.59 mks, 1688.1 op/ms 1 mem, 0.59 mks/mem
COM R0 0.59 mks, 1688.1 op/ms 1 mem, 0.59 mks/mem
NEG R0 0.59 mks, 1688.1 op/ms 1 mem, 0.59 mks/mem
BIS R0,R0 0.59 mks, 1688.1 op/ms 1 mem, 0.59 mks/mem
BIT R0,R0 0.59 mks, 1688.1 op/ms 1 mem, 0.59 mks/mem
XOR R0,R0 0.59 mks, 1688.1 op/ms 1 mem, 0.59 mks/mem
ROL R0 0.59 mks, 1688.1 op/ms 1 mem, 0.59 mks/mem
ROR R0 0.59 mks, 1688.1 op/ms 1 mem, 0.59 mks/mem
ASL R0 0.59 mks, 1688.1 op/ms 1 mem, 0.59 mks/mem
ASR R0 0.59 mks, 1688.1 op/ms 1 mem, 0.59 mks/mem
TRAP 0 ;+ RTI 9.06 mks, 110.4 op/ms 8 mem, 1.13 mks/mem
IOT ;+ RTI 9.06 mks, 110.4 op/ms 8 mem, 1.13 mks/mem
CALL @#$RET ;+RTS 4.58 mks, 218.3 op/ms 5 mem, 0.92 mks/mem
RTS PC 1.93 mks, 518.4 op/ms 2 mem, 0.96 mks/mem
CALL @#$RET 2.65 mks, 377.1 op/ms 2 mem, 1.33 mks/mem
BCC X ; C=1 0.65 mks, 1534.7 op/ms 1 mem, 0.65 mks/mem
BCC X ; C=0 1.47 mks, 682.3 op/ms 1 mem, 1.47 mks/mem
SOB R0,. 0.98 mks, 1023.4 op/ms 1 mem, 0.98 mks/mem
MTPS #0 2.45 mks, 408.7 op/ms 2 mem, 1.22 mks/mem
JMP @R5 1.38 mks, 725.6 op/ms 1 mem, 1.38 mks/mem
JMP 0(R5) 2.08 mks, 481.7 op/ms 2 mem, 1.04 mks/mem
JMP 10$ 1.86 mks, 537.3 op/ms 2 mem, 0.93 mks/mem
JMP 11$ 1.86 mks, 537.3 op/ms 2 mem, 0.93 mks/mem
MUL R2,R0 5.17 mks, 193.3 op/ms 1 mem, 5.17 mks/mem
DIV R2,R0 8.29 mks, 120.6 op/ms 1 mem, 8.29 mks/mem
ASH R2,R0 ; R2=7 2.77 mks, 360.5 op/ms 1 mem, 2.77 mks/mem
ASHC R2,R0 ; R2=7 3.24 mks, 308.7 op/ms 1 mem, 3.24 mks/mem
FSUB R0 ****** - unsupported instruction
FADD R0 ****** - unsupported instruction
FMUL R0 ****** - unsupported instruction
FDIV R0 ****** - unsupported instruction
.RUN HX7:SPEED3
Тест быстродействия
R1+R0 classic 2 142 539 оп./сек
R1(23456.)+R0(12345.) empty 542 691 оп./сек
R1(23456.)+R0(12345.) 434 532 оп./сек -> 2 180 277 оп./сек
R1+@R0 classic 879 453 оп./сек
R1(23456.)+@R0(M-12345.) empty 542 691 оп./сек
R1(23456.)+@R0(M-12345.) 339 644 оп./сек -> 907 778 оп./сек
R0*R0 classic 194 376 оп./сек
empty 11.*12. 542 691 оп./сек
11.*12. 142 924 оп./сек -> 194 021 оп./сек
R2/R0 classic 743 447 оп./сек
R2-R3(34567.)/R1(321.) empty 434 532 оп./сек
R2-R3(34567.)/R1(321.) 99 057 оп./сек -> 128 305 оп./сек
34567.89022+32109.754321 empty 82 100 оп./сек
34567.89022+32109.754321 42 064 оп./сек -> 86 258 оп./сек
34567.89022*32109.754321 empty 82 100 оп./сек
34567.89022*32109.754321 20 025 оп./сек -> 26 484 оп./сек
34567.89022/32109.754321 empty 82 099 оп./сек
34567.89022/32109.754321 20 274 оп./сек -> 26 922 оп./сек
CIS MULPI 1 - команда не реализована
CIS MULP 1 empty - команда не реализована
CIS MULP 1 - команда не реализована
CIS MULPI 2 - команда не реализована
CIS MULP 2 empty - команда не реализована
CIS MULP 2 - команда не реализована
CIS ADDNI 1 - команда не реализована
CIS ADDN 1 empty - команда не реализована
CIS ADDN 1 - команда не реализована
CIS ADDNI 2 - команда не реализована
CIS ADDN 2 empty - команда не реализована
CIS ADDN 2 - команда не реализована
MOV 8 word 1 empty 362 777 оп./сек
MOV 8 word 1 34 049 оп./сек -> 37 575 оп./сек
MOV 8 word 2 empty 362 324 оп./сек
MOV 8 word 2 43 168 оп./сек -> 49 006 оп./сек
CIS MOVCI 8 word 1 - команда не реализована
CIS MOVC 8 word 2 empty - команда не реализована
CIS MOVC 8 word 2 - команда не реализована
.
Код:.RUN HX7:SPEED
File name: P1183.TXT
You computer/processor? PDP-11/83
; Computer speed measure program [V5]
; written by Osipenko A., MPTI
EMPTY LOOP 3.00 mks, 333.1 op/ms 6 mem, 0.50 mks/mem
SEC 0.60 mks, 1665.3 op/ms 1 mem, 0.60 mks/mem
NOP 0.60 mks, 1665.2 op/ms 1 mem, 0.60 mks/mem
MOV R0,R0 0.20 mks, 4995.2 op/ms 1 mem, 0.20 mks/mem
MOV #0,R1 0.40 mks, 2497.8 op/ms 2 mem, 0.20 mks/mem
MOV (R0)+,R1 0.60 mks, 1665.3 op/ms 2 mem, 0.30 mks/mem
TST (R0)+ 0.60 mks, 1665.3 op/ms 2 mem, 0.30 mks/mem
MOV -(R0),R1 0.80 mks, 1249.0 op/ms 2 mem, 0.40 mks/mem
TST -(R0) 0.80 mks, 1249.0 op/ms 2 mem, 0.40 mks/mem
MOV R5,-(SP) 1.84 mks, 544.7 op/ms 2 mem, 0.92 mks/mem
MOV @R0,R1 0.60 mks, 1665.2 op/ms 2 mem, 0.30 mks/mem
MOV 0(R0),R1 1.00 mks, 999.2 op/ms 3 mem, 0.33 mks/mem
MOV @0(R0),R1 1.40 mks, 713.7 op/ms 4 mem, 0.35 mks/mem
MOV @0(R0),@0(R0) 3.65 mks, 274.3 op/ms 7 mem, 0.52 mks/mem
MOV (R0)+,-(R0) 2.22 mks, 450.0 op/ms 3 mem, 0.74 mks/mem
MOV @(R0)+,@-(R0) 3.01 mks, 332.5 op/ms 5 mem, 0.60 mks/mem
MOV 0,R1 1.00 mks, 999.2 op/ms 3 mem, 0.33 mks/mem
MOV @#0,R1 0.80 mks, 1249.0 op/ms 3 mem, 0.27 mks/mem
MOV #0,#0 2.61 mks, 383.5 op/ms 3 mem, 0.87 mks/mem
MOVB R0,R0 0.20 mks, 4995.2 op/ms 1 mem, 0.20 mks/mem
MOVB @R0,R1 0.60 mks, 1665.2 op/ms 2 mem, 0.30 mks/mem
MOVB 0(R0),R1 1.00 mks, 999.1 op/ms 3 mem, 0.33 mks/mem
MOVB (R0)+,-(R0) 2.22 mks, 450.3 op/ms 3 mem, 0.74 mks/mem
MOVB @(R0)+,@-(R0) 3.01 mks, 332.5 op/ms 5 mem, 0.60 mks/mem
DEC R0 0.20 mks, 4995.1 op/ms 1 mem, 0.20 mks/mem
DEC @R0 1.98 mks, 504.2 op/ms 2 mem, 0.99 mks/mem
DEC @0(R0) 2.61 mks, 383.4 op/ms 4 mem, 0.65 mks/mem
ADD R0,R0 0.20 mks, 4995.2 op/ms 1 mem, 0.20 mks/mem
ADD #2,R0 0.40 mks, 2497.8 op/ms 2 mem, 0.20 mks/mem
SUB R0,R0 0.20 mks, 4994.9 op/ms 1 mem, 0.20 mks/mem
CLR R0 0.20 mks, 4995.0 op/ms 1 mem, 0.20 mks/mem
CLR @R0 1.60 mks, 624.0 op/ms 2 mem, 0.80 mks/mem
CLR 0(R0) 2.00 mks, 499.0 op/ms 3 mem, 0.67 mks/mem
CLR @0(R0) 2.44 mks, 410.1 op/ms 4 mem, 0.61 mks/mem
TST R0 0.20 mks, 4995.2 op/ms 1 mem, 0.20 mks/mem
COM R0 0.20 mks, 4995.1 op/ms 1 mem, 0.20 mks/mem
NEG R0 0.20 mks, 4995.1 op/ms 1 mem, 0.20 mks/mem
BIS R0,R0 0.20 mks, 4995.1 op/ms 1 mem, 0.20 mks/mem
BIT R0,R0 0.20 mks, 4995.2 op/ms 1 mem, 0.20 mks/mem
XOR R0,R0 0.20 mks, 4995.1 op/ms 1 mem, 0.20 mks/mem
ROL R0 0.20 mks, 4995.1 op/ms 1 mem, 0.20 mks/mem
ROR R0 0.20 mks, 4995.1 op/ms 1 mem, 0.20 mks/mem
ASL R0 0.20 mks, 4995.1 op/ms 1 mem, 0.20 mks/mem
ASR R0 0.20 mks, 4994.9 op/ms 1 mem, 0.20 mks/mem
TRAP 0 ;+ RTI 8.02 mks, 124.6 op/ms 8 mem, 1.00 mks/mem
IOT ;+ RTI 8.02 mks, 124.6 op/ms 8 mem, 1.00 mks/mem
CALL @#$RET ;+RTS 3.65 mks, 274.1 op/ms 5 mem, 0.73 mks/mem
RTS PC 0.98 mks, 1018.8 op/ms 2 mem, 0.49 mks/mem
CALL @#$RET 2.67 mks, 374.9 op/ms 2 mem, 1.33 mks/mem
BCC X ; C=1 0.40 mks, 2497.9 op/ms 1 mem, 0.40 mks/mem
BCC X ; C=0 0.80 mks, 1249.0 op/ms 1 mem, 0.80 mks/mem
SOB R0,. 0.60 mks, 1665.3 op/ms 1 mem, 0.60 mks/mem
MTPS #0 1.80 mks, 555.1 op/ms 2 mem, 0.90 mks/mem
JMP @R5 0.80 mks, 1249.0 op/ms 1 mem, 0.80 mks/mem
JMP 0(R5) 1.20 mks, 832.6 op/ms 2 mem, 0.60 mks/mem
JMP 10$ 1.00 mks, 999.2 op/ms 2 mem, 0.50 mks/mem
JMP 11$ 1.00 mks, 999.2 op/ms 2 mem, 0.50 mks/mem
MUL R2,R0 4.40 mks, 227.1 op/ms 1 mem, 4.40 mks/mem
DIV R2,R0 7.21 mks, 138.8 op/ms 1 mem, 7.21 mks/mem
ASH R2,R0 ; R2=7 2.20 mks, 454.2 op/ms 1 mem, 2.20 mks/mem
ASHC R2,R0 ; R2=7 2.60 mks, 384.3 op/ms 1 mem, 2.60 mks/mem
FSUB R0 ****** - unsupported instruction
FADD R0 ****** - unsupported instruction
FMUL R0 ****** - unsupported instruction
FDIV R0 ****** - unsupported instruction
.RUN HX7:SPEED3
Тест быстродействия
R1+R0 classic 734 082 оп./сек
R1(23456.)+R0(12345.) empty 1 212 050 оп./сек
R1(23456.)+R0(12345.) 345 483 оп./сек -> 483 220 оп./сек
R1+@R0 classic 1 645 133 оп./сек
R1(23456.)+@R0(M-12345.) empty 1 212 009 оп./сек
R1(23456.)+@R0(M-12345.) 307 680 оп./сек -> 412 362 оп./сек
R0*R0 classic 226 475 оп./сек
empty 11.*12. 1 211 987 оп./сек
11.*12. 140 678 оп./сек -> 159 151 оп./сек
R2/R0 classic 991 411 оп./сек
R2-R3(34567.)/R1(321.) empty 345 194 оп./сек
R2-R3(34567.)/R1(321.) 85 679 оп./сек -> 113 965 оп./сек
34567.89022+32109.754321 empty 118 152 оп./сек
34567.89022+32109.754321 48 723 оп./сек -> 82 915 оп./сек
34567.89022*32109.754321 empty 118 152 оп./сек
34567.89022*32109.754321 22 739 оп./сек -> 28 158 оп./сек
34567.89022/32109.754321 empty 118 152 оп./сек
34567.89022/32109.754321 22 938 оп./сек -> 28 463 оп./сек
CIS MULPI 1 - команда не реализована
CIS MULP 1 empty - команда не реализована
CIS MULP 1 - команда не реализована
CIS MULPI 2 - команда не реализована
CIS MULP 2 empty - команда не реализована
CIS MULP 2 - команда не реализована
CIS ADDNI 1 - команда не реализована
CIS ADDN 1 empty - команда не реализована
CIS ADDN 1 - команда не реализована
CIS ADDNI 2 - команда не реализована
CIS ADDN 2 empty - команда не реализована
CIS ADDN 2 - команда не реализована
MOV 8 word 1 empty 193 966 оп./сек
MOV 8 word 1 30 224 оп./сек -> 35 802 оп./сек
MOV 8 word 2 empty 193 731 оп./сек
MOV 8 word 2 33 068 оп./сек -> 39 874 оп./сек
CIS MOVCI 8 word 1 - команда не реализована
CIS MOVC 8 word 2 empty - команда не реализована
CIS MOVC 8 word 2 - команда не реализована
.
Для сравнения Союз-Неон. Позже добавлю текстовую таблицу. Если кому-то интересно в данной теме.