Number: 1165

Date: 21-May-84 15':51':02

Submitter: Sannella.PA

Source: masinter.pa

Subject: Want EQUAL in microcode': \SLOWIDIFFERENCE in \HANDLE.NS.ROUTING.INFO too slow

Lisp Version: 

Description: '
Date': 11 May 84 17':25 PDT'
From': masinter.pa'
Subject': \SLOWIDIFFERENCE in \HANDLE.NS.ROUTING.INFO, LRSH'
To': vanMelle, Charnley, LispSupport'
cc': masinter.pa'
'
I am convinced that the new \SLOWIDIFFERENCE which shows up when NS routing packets are recieved makes a big difference. Its showing up as  a substantial percentage of time.'
'
Do we need an IEQP opcode? '
'
Also, a bunch of LRSHs showed up that were new, under \CARET.FLASH?; I''m not sure where they came from. I think we need a LRSH opcode too, although this may be a problem of the compiler not expanding macros right.'
'
The result is that typing to a DLion feels suddenly quite sluggish -- unacceptably so. I''d like to see this fixed before we let this version of Interlisp-D out the door.'
'
-----'
'
Date': 12 May 84 13':02 PDT'
From': vanMelle.pa'
Subject': Re': \SLOWIDIFFERENCE in \HANDLE.NS.ROUTING.INFO, LRSH'
In-reply-to': masinter.pa''s message of 11 May 84 17':25 PDT'
To': masinter.pa'
cc': vanMelle.pa, Charnley.pa, LispSupport.pa'
'
An IEQP opcode sounds like a fine idea.  We''d want to make sure it got into at least the Dolphin, too, before we make the system depend on it (the Dolphin of course does not suffer the \SLOWIDIFFERENCE problem).'
'
-----'
'
From': MASINTER.pa'
Date': 12-May-84 13':16':29 PDT'
Subject': Re': \SLOWIDIFFERENCE in \HANDLE.NS.ROUTING.INFO, LRSH'
In-reply-to': vanMelle''s message of 12 May 84 13':02 PDT'
To': vanMelle'
cc': masinter, Charnley, LispSupport'
'
actually, it may be that EQUAL would have more impact.'
it works for smallps, fixps, litatoms, etc. and also a lot of other random programs. Shows up on some benchmarks, too.'
'
-----'
'
Date': 12 MAY 84 13':26 PDT'
From': MASINTER.PA'
Subject': Re': \SLOWIDIFFERENCE in \HANDLE.NS.ROUTING.INFO, LRSH'
To':   MASINTER, vanMelle'
cc':   Charnley, LispSupport'
'
 In response to the message sent 12 MAY 1984 1318-PDT by MASINTER.pa'
'
spec for EQUAL':'
'
if TosH=0 (litatom) or 16q (smallpos) or 17q (smallneg) then jump into EQ.'
Otherwise, call ufn.'
'
This is OK, except that it doesn''t work for number boxes that have small numbers in them. If THAT were required, then EQUAL would have to do another fetch and be a lot more complex (and less likely to get into 4K dlion ucode....)'
'
-----'
'
Date': 14 May 84 09':01 PDT'
From': JonL.pa'
Subject': IEQP for \SLOWIDIFFERENCE in \HANDLE.NS.ROUTING.INFO, LRSH'
In-reply-to': vanMelle.pa''s message of 12 May 84 13':02 PDT'
To': vanMelle.pa'
cc': masinter.pa, Charnley.pa, LispSupport.pa'
'
Don''t forget the Dorado too.'
'
-- JonL --'
'
-----'
'
Date': 21 May 84 12':11 PDT'
From': JonL.pa'
Subject': Re': \SLOWIDIFFERENCE in \HANDLE.NS.ROUTING.INFO, LRSH'
In-reply-to': masinter.pa''s message of 11 May 84 17':25 PDT'
To': masinter.pa'
cc': vanMelle.pa, Charnley.pa, LispSupport.pa'
'
How about an EQP opcode (rather than IEQP) -- this would implement the Common Lisp functionality of EQL, and forstall the obvious problem of someday discovering that we''d forgotten about an FEQP opcode.'
'
Ucode would handle the case of the args being EQ, or of both being type  \FIXP or \FLOATP and being bitwise equal; the \STACKP case could just be handled by UFN.'
'
-- JonL --'
'
-----'
'
Date': 21 May 84 12':23 PDT'
From': Masinter.pa'
Subject': Re': \SLOWIDIFFERENCE in \HANDLE.NS.ROUTING.INFO, LRSH'
In-reply-to': JonL.pa''s message of 21 May 84 12':11 PDT'
To': JonL.pa'
cc': masinter.pa, vanMelle.pa, Charnley.pa, LispSupport.pa'
'
I think EQUAL is even nicer than EQP -- more general, and the design is the same, namely':'
'
"Ucode would handle the case of the args being EQ, or of both being type  \FIXP or \FLOATP and being bitwise equal; the \STACKP case could just be handled by UFN."'
'


Workaround: 

Test Case: 

Edit-By: 

Edit-Date: 

Attn: Charn, vanM, Jonl

Assigned To: 

In/By: 

Disposition: 

System: Language Support

Subsystem: Microcode

Machine: 

Disk: 

Microcode Version: 

Memory Size: 

File Server: 

Server Software Version: 

Difficulty: Hard

Frequency: Everytime

Impact: Moderate

Priority: Perhaps

Status: Open

Problem Type: Performance

Source Files: