The following warnings occurred:
Warning [2] Undefined array key 56915 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 56921 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 56952 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 56955 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 56978 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 57076 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 57105 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined variable $thread - Line: 295 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 295 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Trying to access array offset on value of type null - Line: 295 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 295 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined variable $fid - Line: 295 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 295 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 56952 - Line: 331 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 331 errorHandler->error_callback
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 304 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 56978 - Line: 331 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 331 errorHandler->error_callback
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 304 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 57105 - Line: 331 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 331 errorHandler->error_callback
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 304 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined variable $theme - Line: 3 - File: inc/plugins/threaded_mode.php(305) : eval()'d code PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php(305) : eval()'d code 3 errorHandler->error_callback
/inc/plugins/threaded_mode.php 305 eval
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Trying to access array offset on value of type null - Line: 3 - File: inc/plugins/threaded_mode.php(305) : eval()'d code PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php(305) : eval()'d code 3 errorHandler->error_callback
/inc/plugins/threaded_mode.php 305 eval
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined variable $theme - Line: 3 - File: inc/plugins/threaded_mode.php(305) : eval()'d code PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php(305) : eval()'d code 3 errorHandler->error_callback
/inc/plugins/threaded_mode.php 305 eval
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Trying to access array offset on value of type null - Line: 3 - File: inc/plugins/threaded_mode.php(305) : eval()'d code PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php(305) : eval()'d code 3 errorHandler->error_callback
/inc/plugins/threaded_mode.php 305 eval
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined variable $lang - Line: 5 - File: inc/plugins/threaded_mode.php(305) : eval()'d code PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php(305) : eval()'d code 5 errorHandler->error_callback
/inc/plugins/threaded_mode.php 305 eval
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Attempt to read property "messages_in_thread" on null - Line: 5 - File: inc/plugins/threaded_mode.php(305) : eval()'d code PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php(305) : eval()'d code 5 errorHandler->error_callback
/inc/plugins/threaded_mode.php 305 eval
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks





Turtle/Hare benchmarks for the new HP-71X running on HP-49G+



#4

While testing my HP-71X emulator ported to HP-49G+, I have executed all Turtle/Hare benchmarks (published by Valentin Albillo on this forum some time ago) and here are the results:

(Test 1) Matrix operations:

-------------------------------------------------------------------
Dimensions MAT A=INV(A) MAT A=A*A MAT A=A+A
-------------------------------------------------------------------
10x10 1.46 (2.48) 1.26 (2.37) 0.07 (0.15)
20x20 10.34 (18.02) 9.61 (18.38) 0.25 (0.58)
30x30 33.16 (58.93) 31.98 (61.69) 0.55 (1.27)
40x40 76.68 (136.81) 74.93 (145.53) 0.98 (2.25)

(Test 2) Polynomial solver:

334.47 (597.76) seconds

(Test 3. Integrate & solve combined:

7.4 (12.81) seconds (with precision 1E-5)

(Test 4) Double integrals:

(I1) 2.68 (5.37) seconds (with precision 1E-3)
(I2) 5.51 (10.59) seconds (with precision 1E-3)

(Test 5) Triple integral:

193.75 (382.11) seconds (with precision 1E-3)

(Test 6) Complex-valued matrix operations:

MAT W = INV(Z) in 33.25 (58.85) seconds
MAT W = Z*Z in 18.36 (34.60) seconds
MAT W = Z+Z in 0.26 (0.60) seconds

(Test 7) Solving a definite integral of an implicit function:

71.44 (128.05) seconds (precision 1E-3)
127.19 (228.18) seconds (precision 1E-6)

(Test 8) Integrating a recursively defined function:

15.66 (28.55) seconds (precision 1E-3)
31.62 (57.67) seconds (precision 1E-6)

(Test 9) Polynomial solver for roots of high multiplicity:

4.33 (7.98) seconds

(Test 10) A probabilistic theoretical application:

3434.05 seconds / 57 min 14.05 s (6590.23 seconds / 1 h 49 min 50.23 s)

All tests were performed with 33.5K RAM version (only version possible on HP-49G+) with a special object containing Math, Finance and Circuit Analysis ROMs in port 5 (usually occupied by Forth or HP-41 Translator ROM). The numbers in parenthesis are times for HP-71X running on HP-48GX/49G. The numerical results of all calculations are the same as on the real HP-71B and HP-71X running on 48/49. This was a good test of Saturn/ARM emulation and a good way to prove that arithmetical instructions with decimal numbers in decimal mode are correctly emulated.

I expected a more linear increase in speed over HP-48GX/49G but, obviously, some Saturn instructions have been more efficiently emulated on ARM than the others because the HP-49G+ speed increase over HP-48GX/49G goes from about 1.8x to 2.2x with an average of 2x so the emulated Saturn/ARM is approx. twice as fast compared to the real Saturn. I am talking about pure Saturn emulation, not about RPL/SysRPL execution where many Saturn code have been patched and rewritten in pure ARM machine language. I haven't yet made any extensive benchmarking of HP-41X and HP-42X but I suspect the results would be very close to the HP-71X.

Hope this will be interesting to someone especially to the ones who hoped that HP-49G+ will be 6-7 times faster than HP-48/49 (as I read somewhere). The truth is: The speed increase isn't that significant when working with application written completly in machine language (like are all those emulators).

Best regards.


#5

I think its funny... An ARM emulating a Saturn emulating the HP-71.

All you need to do now is have an Apple running Virtual PC, running a 49G+ emulator.

Nice work!


#6

"I think its funny... An ARM emulating a Saturn emulating the HP-71.

All you need to do now is have an Apple running Virtual PC, running a 49G+ emulator."

You mean a PC running Amiga emulator, running mac emulator,
running Virtual PC, running 49G+ emulator (ARM)
running Saturn Emulator, Runnin 71B emulator with
41Emulator ROM attached, where the 41 emulates an older calc.

{VPN} AXL

#7

"All tests were performed with 33.5K RAM version 
(only version possible on HP-49G+)"

I recommend you to study the possibilities of using the main RAM for HP-71X RAM (or ROM), It is - after all - 256KB

{VPN} AXL


#8

I recommend you to study the possibilities of using the main RAM for HP-71X RAM (or ROM), It is - after all - 256KB

Did you read this: “... with a special object containing Math, Finance and Circuit Analysis ROMs in port 5 (usually occupied by Forth or HP-41 Translator ROM)”? If you read HP-71X description on my page, you will find that port 5 in HP-71X has been stored in Port0 of HP-48GX/49G/G+ so I am, obviously, using main RAM. This area is currently occupying 96K but can be increased to support more modules if I find a need to do so in the future. Main RAM is also used to store virtual “magnetic” cards which are saved from HP-71X or have to be loaded into HP-71X.

Anyway, thanks for the advice, but I have studied a possibility of using main RAM a long time ago. In the case of HP-71X, it is only suitable as a ROM storage. Unless you want to end in ‘Memory Clear’ every time you exit the emulator, main RAM in 49G/G+ cannot be properly CONFIGured and used as a RAM storage in HP-71X. I think we have already discussed this just a 2-3 weeks ago.

#9

"I am talking about pure Saturn emulation, not about RPL/SysRPL execution where many Saturn code have been patched and rewritten in pure ARM machine language."

Has anyone actually done this? Pure ARM based RPL/sysRPL is something I would be extremely interested in. If anyone is aware of any such development please send me an e-mail!!!

Best Regards,
Hugh Evans


#10

http://alpage.ath.cx/hptute/arm.htm

{VPN}


Possibly Related Threads…
Thread Author Replies Views Last Post
  Riemann's Zeta Function update (HP-28S, HP-48G/GX/G+, HP-49G/G+/50g) Gerson W. Barbosa 0 1,048 06-30-2013, 01:01 AM
Last Post: Gerson W. Barbosa
  hp 49g+ and 50g cases William L. Drylie 16 4,471 06-04-2013, 07:28 PM
Last Post: Iqbal
  Fun things found by running strings on the 39gII emulator bhtooefr 11 3,669 05-16-2013, 12:40 AM
Last Post: Mic
  HHC 2013 Website up and running Joe Horn 4 1,678 05-05-2013, 07:17 PM
Last Post: bhtooefr
  Running 33S and 35S emulators in Win 8 Ed Look 12 3,379 12-07-2012, 03:24 PM
Last Post: Ed Look
  HP 49G emulator for android Olivier De Smet 8 2,259 09-11-2012, 02:12 PM
Last Post: Brian K
  HP 49G print format - Solved Olivier De Smet 0 928 09-08-2012, 11:03 AM
Last Post: Olivier De Smet
  Difference between new HP-49G+ and HP-50G x34 7 2,615 04-25-2012, 08:58 AM
Last Post: Software49g
  [WP34S] Problem Running wp34s_lib.pl in Mac OS X Les Wright 17 4,499 03-21-2012, 06:05 PM
Last Post: Neil Hamilton (Ottawa)
  Successful running EmuXY under Wine 1.4 Christoph Giesselink 0 761 03-12-2012, 03:06 PM
Last Post: Christoph Giesselink

Forum Jump: