Home
JAQForum Ver 20.06
Log In or Join  
Active Topics
Local Time 05:18 26 Oct 2021 Privacy Policy
Jump to

Notice. New forum software under development. It's going to miss a few functions and look a bit ugly for a while, but I'm working on it full time now as the old forum was too unstable. Couple days, all good. If you notice any issues, please contact me.

Forum Index : Microcontroller and PC projects : BASIC Speed Benchmark Tests

     Page 4 of 4    
Author Message
lizby
Guru

Joined: 17/05/2016
Location: United States
Posts: 1730
Posted: 09:38pm 22 May 2021
Copy link to clipboard 
Print this post

  Mixtel90 said  Benchmarks have been quoted ever since computers started - and they still don't mean much.

For hardware which runs MMBasic, they do a pretty good job of showing the relative performance of the ports on different platforms. No one here is jazzing the benchmark to gain a better look. CG's code is unchanged since 2012. Peter has even used published benchmark timings to improve the firmware (timings which revealed firmware shortcomings relative to other MMBasic ports).

The CG benchmark doesn't show everything which might be important for some particular use, but as a comparison within the family, it seems pretty revealing.

~
Edited 2021-05-23 07:39 by lizby
 
twofingers
Guru

Joined: 02/06/2014
Location: Germany
Posts: 943
Posted: 12:03pm 23 May 2021
Copy link to clipboard 
Print this post

  Mixtel90 said  String handling: don't run into garbage collection on an old computer or the result is meaningless, even on that machine. Unless you are testing for the efficiency of garbage collection, of course. :)

FYI
On the old computers (eg C64), the garbage collection was a "party pooper".
MMBasic does not use/needs no garbage collection (AFAIK).

Michael
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 897
Posted: 12:48pm 23 May 2021
Copy link to clipboard 
Print this post

Benchmarks....

I remember from the earlier calculators that calculating 69! was a benchmark.
And the cheap casio's outperformed more expensive TI calculators. And then TI made a quick fix. There are only 69 possible integer numbers until 69, so they implemented a lookup table specific for the ! calculations. And the results where immediate. Not calculated, but taken from a table.

An ancient version of Dieselgate....

Volhout
Edited 2021-05-23 22:49 by Volhout
If nothing goes right ... turn left
 
lizby
Guru

Joined: 17/05/2016
Location: United States
Posts: 1730
Posted: 11:28pm 04 Sep 2021
Copy link to clipboard 
Print this post

Perhaps time for an update.
                 BM1     BM2    BM3      BM4     BM5     BM6     BM7     BM8
ABC 800 single   0.9     1.8    6.0      5.9     6.3    11.6    19.6     2.9
ABC 800 double   1.2     2.2    10.0    10.6    11.0    17.8    26.4    14.4
IBM PC           1.5     5.2    12.1    12.6    13.6    23.5    37.4     3.5
Apple III        1.7     7.2    13.5    14.5    16.0    27.0    42.5     7.5
VIC-20           1.4     8.3    15.5    17.1    18.3    27.2    42.7     9.9
ZX81 "fastmode"  4.5     6.9    16.4    15.8    18.6    49.7    68.5    22.9

Maximite         0.016   0.144   0.196   0.205   0.354   0.512   0.721   0.310

Maximite w. #s   0.016   0.131   0.193   0.194   0.245   0.393   0.582   0.241
Maximite w/o #s  0.016   0.111   0.173   0.173   0.192   0.336   0.525   0.220
MicroMite 40MHz  0.028   0.18    0.285   0.289   0.644   0.892   1.346   0.376
MicroMite 48MHz  0.023   0.15    0.237   0.24    0.536   0.744   1.121   0.313
MM+ MX470 120MHz 0.013   0.082   0.135   0.135   0.265   0.380   0.597   0.174
MMX 198MHz       0.006   0.045   0.07    0.08    0.141   0.201   0.287   0.126
Picromite ZeroW  0.014   0.058   0.093   0.102   0.184   0.298   0.354   0.127
Armmite H7       0.003   0.023   0.038   0.042   0.067   0.098   0.146   0.065
ArmMite F4       0.011   0.079   0.14    0.149   0.249   0.354   0.528   0.257
MMBASIC DOS      0.0002  0.0017  0.0028  0.0028  0.0073  0.0092  0.0117  0.0058
CMM2             0.00176 0.0118  0.01903 0.01728 0.03611 0.05062 0.07582 0.02851
PicoMite         0.0166  0.1096  0.1800  0.1840  0.3325  0.4715  0.6688  0.3193
Linux            0.0000  0.0020  0.0040  0.0040  0.0080  0.0130  0.0190  0.0070

C-Language
Arduino UNO      0.010   0.010   0.058   0.043   0.043   0.043   0.045   0.284
Arduino DUE      0.003   0.003   0.006   0.007   0.007   0.007   0.106   0.014
ESP32S           0.00007 0.00007 0.00030 0.00011 0.00016 0.00016 0.00016 0.02413


CMM2 has gained many speedups since first introduced. Numbers here from today (400mHz).
Linux version is an unreleased work in progress.
Speeds for Linux, DOS, and Picromite (no longer supported) obviously depend on the hardware.

As Geoff implies early in this thread, it's an astonishing ride we early "home computer" enthusiasts have been on for the last 40+ years. And quite a ride for MMBasic, too.

~
Edited 2021-09-05 10:25 by lizby
 
toml_12953
Senior Member

Joined: 13/02/2015
Location: United States
Posts: 217
Posted: 02:28am 05 Sep 2021
Copy link to clipboard 
Print this post

  halldave said  Has anyone got a working Dick Smith System 80 or Tandy TRS-80 Model I Level II they could run these Benchmarks on?



Check the original article

Rugg-Feldman Benchmarks

to see comparisons of various systems. There was a follow-up article

BASIC Timings Revisited

which had timings for more systems. Neither the DS nor TRS-80 were on there, though.
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 897
Posted: 07:08pm 07 Sep 2021
Copy link to clipboard 
Print this post

I am not sure whommaintains this list, but you may want to add the score for BBC basic V on the Raspberry Pi zero, running RiscOS pico on bare metal.

Bm1: 0.0001
Bm2: 0.0007
Bm3: 0.0016
Bm4: 0.0014
Bm5: 0.0015
Bm6: 0.0030
Bm7: 0.0030
Bm8: 0.0036

Rather fast...

Since BBC basic V uses a single core, it will not be much faster on multicores like the Pi 3 or 4. Since it only depends on clock speed.
If nothing goes right ... turn left
 
Tinine
Guru

Joined: 30/03/2016
Location: United Kingdom
Posts: 676
Posted: 07:33pm 07 Sep 2021
Copy link to clipboard 
Print this post

Well mine has been quoted several times but is totally blown off:

-MX170
-40MHz
-Possible to have a live prompt during code execution
-Up to 20 tasks
-Close to 120k flash for programs

Bypic is no longer developed but it already works!

If you need serious performance but from a simple MX170.....


 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 897
Posted: 06:48am 08 Sep 2021
Copy link to clipboard 
Print this post

It is done...


                 BM1     BM2    BM3      BM4     BM5     BM6     BM7     BM8
80's computers
ABC 800 single   0.9     1.8    6.0      5.9     6.3    11.6    19.6     2.9
ABC 800 double   1.2     2.2    10.0    10.6    11.0    17.8    26.4    14.4
IBM PC           1.5     5.2    12.1    12.6    13.6    23.5    37.4     3.5
Apple III        1.7     7.2    13.5    14.5    16.0    27.0    42.5     7.5
VIC-20           1.4     8.3    15.5    17.1    18.3    27.2    42.7     9.9
ZX81 "fastmode"  4.5     6.9    16.4    15.8    18.6    49.7    68.5    22.9

MMBasic
Maximite         0.016   0.144   0.196   0.205   0.354   0.512   0.721   0.310
Maximite w. #s   0.016   0.131   0.193   0.194   0.245   0.393   0.582   0.241
Maximite w/o #s  0.016   0.111   0.173   0.173   0.192   0.336   0.525   0.220
MicroMite 40MHz  0.028   0.18    0.285   0.289   0.644   0.892   1.346   0.376
MicroMite 48MHz  0.023   0.15    0.237   0.24    0.536   0.744   1.121   0.313
MM+ MX470 120MHz 0.013   0.082   0.135   0.135   0.265   0.380   0.597   0.174
MMX 198MHz       0.006   0.045   0.07    0.08    0.141   0.201   0.287   0.126
Picromite ZeroW  0.014   0.058   0.093   0.102   0.184   0.298   0.354   0.127
Armmite H7       0.003   0.023   0.038   0.042   0.067   0.098   0.146   0.065
ArmMite F4       0.011   0.079   0.14    0.149   0.249   0.354   0.528   0.257
MMBASIC DOS      0.0002  0.0017  0.0028  0.0028  0.0073  0.0092  0.0117  0.0058
CMM2             0.00176 0.0118  0.01903 0.01728 0.03611 0.05062 0.07582 0.02851
PicoMite         0.0166  0.1096  0.1800  0.1840  0.3325  0.4715  0.6688  0.3193
Linux            0.0000  0.0020  0.0040  0.0040  0.0080  0.0130  0.0190  0.0070

Other Recent Basics
ByPic MX170 40M  0.001   0.010   0.023   0.020   0.027   0.041   0.080   0.043
BBC_V Pi Zero    0.0001  0.0007  0.0016  0.0014  0.0015  0.0030  0.0030  0.0036

C-Language
Arduino UNO      0.010   0.010   0.058   0.043   0.043   0.043   0.045   0.284
Arduino DUE      0.003   0.003   0.006   0.007   0.007   0.007   0.106   0.014
ESP32S           0.00007 0.00007 0.00030 0.00011 0.00016 0.00016 0.00016 0.02413


And...too bad... the SD card image for RISCOS PICO (BBC basic without the graphics RiscOS desktop) is taken offline, and is no longer supported, similar to ByPic and PicroMite. The full suite RiscOS is still actively maintained.
Edited 2021-09-08 17:09 by Volhout
If nothing goes right ... turn left
 
     Page 4 of 4    
Print this page


To reply to this topic, you need to log in.

© JAQ Software 2021