Re: Tops20 TVT performance improvments


Mark Crispin (MRC%PANDA@SUMEX-AIM.ARPA)
Fri 21 Feb 86 06:12:11-PST


A release 5.4 equivalent of BillW's change is follows. It does make a
difference.

         SKIPA T4,T1 ; Yes. Get PZ to call SNDTVT
          JRST OPSCA7 ; No.
IFE PANDASW,< ;[5]
        MOVX T1,^D200 ; The function to queue for PZ if a lot
        XMOVEI T2,ENCPKT ; to send - wait a bit, maybe more
        CAIGE T4,^D8 ; Less that 8 is echoing so
          XMOVEI T2,FRCPKT ; Queue for PZ promptly
        CALL (T2) ; See Note above
>;IFE PANDASW
IFN PANDASW,< ;[5]
;;; FRCPKT is called if:
;;; . There are less than 8 bytes (probably echoing) in the packet and the
;;; retransmission queue is empty
;;; OR
;;; . The terminal output buffer is full
;;; Otherwise ENCPKT is called instead

        CALL TTSOBF ; Is output buffer full?
        IFSKP.
          CALL FRCPKT ; Yes, might as well send it now
        ELSE.
          CAIL T4,^D8 ; Looks like echoing?
          IFSKP.
            LOAD T1,QNEXT,<+TCBRXQ(TCB)> ; Yes, get RXQ
            CAIE T1,TCBRXQ(TCB) ; Is the retransmission queue empty?
          ANSKP.
            CALL FRCPKT ; Yes, queue for PZ promptly
          ELSE.
            MOVX T1,^D200 ; Output not full and not echoing, wait a bit
            CALL ENCPKT ; for more to output
          ENDIF.
        ENDIF.
>;IFN PANDASW
OPSCA7: MOVE T2,LINADR ; Restore address of terminal block
OPSCA8: CALL ULKTTY ; Decrease reference count, OKINT

I don't believe this problem was the cause of the TVT SMTP server problem,
nor will this fix repair it. The TVT SMTP server doesn't echo.
-------



This archive was generated by hypermail 2.0b3 on Thu Mar 09 2000 - 14:35:40 GMT