Hi all,
I tested exactly the same program (checking for a prime number) on my DM15L and DM41L and found an impressive speed difference !
@48MHz (checking for 90709 prime) :
- DM15L took 8s
- DM41L took 38s

That makes the DM15L nearly 5x faster than the DM41L?

I understand that they use exactly the same hardware and NUT processor emulator, so it must be the DM15L "code interpreter" that is faster. But 5x faster that's huge!

@grsbanks
My guess was that the HP-1xC series use a "finite" set of labels (max 25), registers (less than 100) and instructions/functions (mapped three max to one with keyboard), whereas the HP-41C(V/X) deal with "infinite" set of labels (alphanumerical labels), registers and instructions (alphanumerical instructions/functions and new functions in ROMs).

So the HP-1xC interpreter can map the labels/instructions/functions to a vector or a matrix (and make direct accesses), whereas the HP-41C(V/X) interpreter must deal with lists with alphanumerical entries (and make indirect accesses).

I'm not sure that in 1979 lists where programmed (optimized) with hashing etc...

So the HP-1xC interpreter can map the labels/instructions/functions to a vector or a matrix (and make direct accesses), whereas the HP-41C(V/X) interpreter must deal with lists with alphanumerical entries (and make indirect accesses).

Once a GTO (or XEQ) instruction has been executed once in the HP-41/42, the offset to the label is cached inside the actual GTO/XEQ instruction, so the machine only needs to search for the label once. Second and subsequent jumps can happen almost immediately.

Once a GTO (or XEQ) instruction has been executed once in the HP-41/42, the offset to the label is cached inside the actual GTO/XEQ instruction, so the machine only needs to search for the label once. Second and subsequent jumps can happen almost immediately.

Yes you are right for the offset...

But every single time you have to interpret an alphanumerical label or XEQ in the HP-41C(V/X) you still have to lookup in a list with alphanumerical entries for this offset. And this operation takes time in a HP-41C(V/X) vs a straight forward vector lookup table for the HP-1xc and it's numerical labels/XEQ. No?