HP Forums

Full Version: Double speed 15C?
You're currently viewing a stripped down version of our content. View the full version with proper formatting.

Was there a double-speed 15C?

Tony (Anton), a German collector, claims one of his 15C's ran his performance index at twice the speed compared to another unit.

I've just run his test on my Voyagers and have obtained the following results:

11C's: Performance Index

2711B***** : 21.9 s 1.6
2521B***** : 22.4 s 1.5
2540B***** : 23.5 s 1.5

15C's:

2547B***** : 24.3 s 1.4
2343B***** : 25.6 s 1.3

Tony's 15C, 2605A***** : 12.5 s , performance index = 2.7 !

(I have noticed the tests take up to 10% longer when using old battery sets. I used new battery sets when testing)

His performance index method may be found at:

http://www.thimet.de/CalcCollection/CalcPerformance.html

Here is the version for the 15C of his program, just in case someone want to check it out:

f LBL A
10
STO 0
f LBL B
1
+
4.567
EEX
CHS
4
-
70
+
69
-
7
*
11
/
RCL 0
1
-
STO 0
g TEST 0 (x<>0)
GTO B
Rv
g LOG
SIN
SQRT
SQRT
g RTN

Edited: 29 Aug 2005, 12:25 p.m. after one or more responses were posted

Quote:
Tony's 15C, 605A*****

There is an issue with this S/N : all 15C should in theory have S/N that start with 22 to 29. Unless the S/N of this peculiar 15C is 26 and not 6 ?

Since it was not listed, I did a quick test on my 33s
Resulting times ranged between 1.15 to 1.22 seconds (using a stop watch)

Sorry, I had skipped a number:

It's serial number begins with 2605A.

Regards,

Gerson.

Edited: 29 Aug 2005, 1:06 p.m.

That gives a performance index of 29 (34/1.19), only 16% greater than the 32SII index. I suspect the 33S actual index should be greater than this. Once a noticed the 33S is 40% faster than the 32SII, but the program I tested did not use transcedental functions.

Tony's complete benchmark program includes the following routine, to add more loops. This may reduce measurement errors when testing faster calculator:

LBL C
GSB A
RCL 3
1
-
STO 3
x<>0?
GTO C
RTN

The number of loops should be entered in register 3 before executing C. The performance index is calculated as

P=34/(T/n),

where T = execution time
n = number of loops

It is interesting to notice the indeces for the HP-55 and HP-49G+: 1.0 and 258. Only 25700 % (not so great as it should be expected).

Regards,

Gerson.


Edited: 29 Aug 2005, 2:19 p.m.

Does he know the provenance of the calculator? Possibly some installed a speedup modification?

He doesn't say much in his site. He just says he acquired it in 2002. Most likely this is a modified unit. I just thought later Voyagers might be a little faster.

My newer 15C has the 1LM2 processor, so in theory it could run as fast as the 12C Platinum, or half the 42S speed. But I don't see any reason to speeding it up. Besides, it computes trigs in less than one second! :-)

Quote:

It is interesting to notice the indeces for the HP-55 and HP-49G+: 1.0 and 258. Only 25700 % (not so great as it should be expected).


The test is not being fair. For pure speed, a proper compiled language should be used - not an emulated, threaded language. The HP49 also uses BCD for floating point. BCD is a very, very poor choice for benchmarks.

I recompiled the provded C++ code for the calculator. It does 100,000 loops in ~26 seconds. This gives a rating of 130,770.

/*This program takes ~26 seconds to run 100000 loops*/

#include <hpgcc49.h>

static void test() {
const int loops=100000;
double x, r0;
int i;
for (i=0; i<loops; i++) {
r0=10;
do {
x=r0;
x+=1;
x-=4.567E-4;
x+=70;
x-=69;
x*=7;
x/=11;
r0-=1;
} while (r0>0);
x=log(x);
x=sin(x);
x=sqrt(x);
x=sqrt(x);
}
printf("%f\n",x);
}

int main(){

clear_screen();
printf("Press ON to test");
while(!keyb_isON());
sys_slowOff();
test();
printf("\nDone, press Left Shift");
sys_slowOn();
while(!keyb_isLS());
return 0;
}

Quote:
The test is not being fair. For pure speed, a proper compiled language should be used - not an emulated, threaded language. The HP49 also uses BCD for floating point. BCD is a very, very poor choice for benchmarks.

You're not wrong, although C++ is not a language most 49G+ users are familiar with. But the index should be computed with the programming language primarily available to the user. This index could be much better if the 49G+ firmware had only native ARM code, though not so good as the index you achieved with the compiled C++ program.
I think the 49G+ emulating the Saturn processor on the ARM is one of its weakness. By what I've been told, the batteries don't last long enough, perhaps because of this. That's why, among other reasons, I have preferred the 49G as a replacement for the 48GX, I don't like replacing batteries too often. (Sorry if I am wrong, this is just a conjecture).

Regards


Edited: 29 Aug 2005, 6:51 p.m.

Running time on the 33S:

10.5 s, 10 loops.

Index: 32, 35% faster than the 32SII (14.2 s, 10 loops)

BTW, the program returns 0.264577498

Hello,

My 15C (SN: USA 2809A.....) produced 25.52s/25.42s/25.41s, so it's average time is 25.5s

If you want step-by-step builded Benchmark programs, see my post at My benchmarks - Message#25

Csaba

Hello,

Thanks for the interesting link. Your results match mine, which are a mean of three measurements too. For a while I thought there might have been a faster 15C but Tony's turbo 15C appears to be just a modified calculator. The only calculator I'd like to occasionally run at double speed is the 42S (ROM version B). However, as far as I know, with that ROM version this can be done only manually, by means of a somewhat cumbersome procedure.

Regards,

Gerson.