The Museum of HP Calculators

HP Forum Archive 20

[ Return to Index | Top of Index ]

Execution Speed of Early HP Programmables
Message #1 Posted by Nigel Fraser Ker on 27 Nov 2011, 10:13 a.m.

I tried writing a program on my HP67 which simply counts from 1 upwards. I timed this process and it runs at almost exactly half the speed I can quite easily achieve doing the equivalent thing with my Curta mechanical calculator. I timed my HP41CX and it runs at approximately the same speed as the Curta.

This is by no means meant to be a criticism but it does seem remarkably slow and I'd like to know what limits the speed. Is it because 1970s memory runs very slowly? I am using 2011 electrons ;-)

      
Re: Execution Speed of Early HP Programmables
Message #2 Posted by Dieter on 27 Nov 2011, 10:35 a.m.,
in response to message #1 by Nigel Fraser Ker

I don't think it's memory or "the 70s". Here are some results from various benchmarks: the first one here on hpmuseum.org and another one with much more data in the articles section.

Look at the figures and draw your own conclusions. ;-)

Dieter

Edited: 27 Nov 2011, 10:36 a.m.

      
Re: Execution Speed of Early HP Programmables
Message #3 Posted by Katie Wasserman on 27 Nov 2011, 11:20 a.m.,
in response to message #1 by Nigel Fraser Ker

The early calculator chips were mostly PMOS (or NMOS) not CMOS, they used a lot of current and switched slowly. To minimize the current draw and extend battery life they kept to clock rate low.

            
Re: Execution Speed of Early HP Programmables
Message #4 Posted by Nigel Fraser Ker on 27 Nov 2011, 11:45 a.m.,
in response to message #3 by Katie Wasserman

Ah, I see...many thanks!

            
Re: Execution Speed of Early HP Programmables
Message #5 Posted by Jim Horn on 27 Nov 2011, 12:55 p.m.,
in response to message #3 by Katie Wasserman

Early calculators used a bit serial architecture - i.e. the addresses and data were shuffled around only one bit at a time. That's how the '41's RAM and ROM could fit into 8 pin DIPs. So, combine a sub-megahertz clock with having to shuffle 56 bits per register around and then use a lot of internal programming opcodes to do a simple add, combined with having to do GOTOs by searching entirely through memory on the '67, and the slow speed is no surprise.

Of course, a simple counting loop is easy on the Curta. Transcedental math is another thing!

Still, the fastest factoring program on the HP-67 found 10^10-33 prime in about 3 hours 45 minutes, as I recall. The HP-41 was blazingly 3 times faster. Glacial by current standards, but that was over 30 years ago (i.e. the answers arrived 30 years before today's machines can deliver them). And far faster than the personal calculators of 30 years before that...

(An old saying - you can tell the pioneers as they're the ones with the arrows sticking out of their backs).

                  
Re: Execution Speed of Early HP Programmables
Message #6 Posted by Nigel Fraser Ker on 27 Nov 2011, 2:26 p.m.,
in response to message #5 by Jim Horn

Thanks, that's very interesting and certainly explains a lot.

(I don't want to sound like I'm knocking these lovely old machines - my 67 is currently my favourite calculator and I have several to choose from!)

                  
Re: Execution Speed of Early HP Programmables
Message #7 Posted by db (martinez, ca.) on 27 Nov 2011, 3:07 p.m.,
in response to message #5 by Jim Horn

Jim; 4 things.

Yes. True. The Curta was slowed way down when you had to look up a number in your peters tables to throw into it.

So as you said; the hp 67 was faster in reality - but it couldn't grind coffee.

If there are arrows in the backs of Pioneers, what's sticking out of Voyagers?

I'll use that line of yours "the answers arrived 30 years before today's (faster) machines can deliver them" someday, but i'll take credit.

                        
Re: Execution Speed of Early HP Programmables
Message #8 Posted by Jim Horn on 27 Nov 2011, 5:26 p.m.,
in response to message #7 by db (martinez, ca.)

I didn't consider anything here as a knock on the older machines - and certainly appreciate the tremendous changes since then!

The '67 will always have a fond place in my memories. I used mine so much I could program it by feel, and did one night in the wee hours while driving my VW Scirocco back to the SF Bay Area from LA to try out some math ideas I had. Of course, the LEDs were easy to see in the dark when I occasionally glanced at their results.

Martinez, CA? I moved up to the Columbia River Gorge from Santa Rosa - and my '67 is still in Rohnert Park with a great friend...

                              
Re: Execution Speed of Early HP Programmables
Message #9 Posted by Hal Bitton in Boise on 27 Nov 2011, 10:42 p.m.,
in response to message #8 by Jim Horn

The LED light show while a program is running on a 67 is priceless. Next best is the flying goose on the 41's, followed by the flashing "running" on the 15c. All of the above give unambiguous indication that your program is running.
The little hourglass annunciator on current machines is very non-discript and boring by comparison...so, it's a good thing programs run faster! :)

                                    
Re: Execution Speed of Early HP Programmables
Message #10 Posted by Olivier De Smet on 29 Nov 2011, 8:30 a.m.,
in response to message #9 by Hal Bitton in Boise

Just to give some hints, classic were built with a base clock from 185 up to 235 KHz.

Which gives around 3000 instructions per second (56 cycles for an instruction)

(btw the flickering on an HP67 is around 220 Hz)

Edited: 29 Nov 2011, 8:30 a.m.


[ Return to Index | Top of Index ]

Go back to the main exhibit hall