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 6 of 8 | |||||
Author | Message | ||||
stanleyella Guru Joined: 25/06/2022 Location: United KingdomPosts: 2119 |
All my family spoke like that. From Salford, Preston , Chorley ,Hull. From my heart that is how I remember my family. My mother lived to 87 and 50 years in Cardiff did not change here accent and the way she spoke. I would give anything to hear her voice again. |
||||
JohnS Guru Joined: 18/11/2011 Location: United KingdomPosts: 3800 |
I'm with Tom - it's generally not true that they speak anything like that. John |
||||
thwill Guru Joined: 16/09/2019 Location: United KingdomPosts: 4036 |
I'm the younger generation, my parents are from Salford and Oldham and probably of your generation. The generation before that (my grandparents) probably did speak with all those cliches (though not to my now distant recollection). I suspect the BBC and more general education has and continues to erode the regional differences from anything other than the soap operas. Best wishes, Tom Edited 2022-09-06 03:50 by thwill Game*Mite, CMM2 Welcome Tape, Creaky old text adventures |
||||
Tinine Guru Joined: 30/03/2016 Location: United KingdomPosts: 1646 |
Wow, hang out in Leyland for five minutes, it's horrendous. There's no 'h' or 'g' in having. "am 'avin' me dinner" Male or female, it's rare to hear someone get through a sentence without at least one profanity. Parents address their offspring using the f-bomb or the c-bomb. "kecklec" for kettle "bockle" for bottle "ospickal" for hospital "ee learned me to drive" "ee borrowed me ten quid" Edited 2022-09-06 04:40 by Tinine |
||||
stanleyella Guru Joined: 25/06/2022 Location: United KingdomPosts: 2119 |
Best wishes, Tom I am 68 and maybe you are right like how "old speak" gets lost. In C-air-diff as it is spoken it is a strange mix of cockney and welsh english going back 100 years. Cardiff (/?k??rd?f/; Welsh: Caerdydd [kair?di?ð, ka??r?d??ð] You have to go only 20 miles to the next town to find a very different accent. Funny I can't follow other people's code and probably they can't follow mine. |
||||
ice2642 Regular Member Joined: 27/05/2023 Location: BrazilPosts: 82 |
Taking advantage of the fact that you are discussing forms of pronunciation, which is more correct, grey or gray? Many will choose one color or another, but may end up realizing that there are many other colors, unless your picoMite VGA has output 1-2-1 :) Edited 2023-07-08 08:07 by ice2642 MMBasic 5.0707 on PicoMite VGA |
||||
Volhout Guru Joined: 05/03/2018 Location: NetherlandsPosts: 4222 |
Since PicoMite has grown over the past yers, a small 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 PicoMite V50800  0.0132  0.0969  0.1636  0.1641  0.2866  0.4051  0.5821  0.2824  126MHz PicoMite V50800  0.0046  0.0338  0.0571  0.0574  0.0998  0.1410  0.2030  0.0974  378MHz 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 At 252MHz the PicoMite is very similar to an MMX at 200MHz, it only lacks 100 I/O pins. Also since last MMX update the PicoMite and MMX commands have very much aligned. Edited 2024-05-03 17:09 by Volhout PicomiteVGA PETSCII ROBOTS |
||||
lizby Guru Joined: 17/05/2016 Location: United StatesPosts: 3150 |
Thanks for the update. Picomite at 378MHz better than the ArmMite F4--that's impressive (but I wonder if the F4 numbers are recent--I think some systematic MMBasic speed improvements got backported). PicoMite, Armmite F4, SensorKits, MMBasic Hardware, Games, etc. on fruitoftheshed |
||||
stanleyella Guru Joined: 25/06/2022 Location: United KingdomPosts: 2119 |
the lgt328 is 32mhz, 2x uno 328. I got but dunno the test code ... for gcbasic |
||||
vegipete Guru Joined: 29/01/2013 Location: CanadaPosts: 1109 |
Could someone post the actual test suite used for benchmarking? Visit Vegipete's *Mite Library for cool programs. |
||||
PhenixRising Guru Joined: 07/11/2023 Location: United KingdomPosts: 857 |
Maybe we should replace GOTO and use INC instead of var = var + 1? Print "Maximite Benchmark tests" Print " " Print "Benchmark 1" Timer = 0 For j = 1 To 1000 Next j Print Timer / 1000 Print " " Print "Benchmark 2" Timer = 0 j =j0 BM2: j = j+1 If j < 1000 GoTo BM2 Print Timer / 1000 Print " " Print "Benchmark 3" Timer = 0 j = 0 BM3: j = j+1 a = j/j*j+j-j If j < 1000 GoTo BM3 Print Timer / 1000 Print " " Print "Benchmark 4" Timer = 0 j = 0 BM4: j = j+1 a = j/2*3+4-5 If j < 1000 GoTo BM4 Print Timer / 1000 Print " " Print "Benchmark 5" Timer = 0 j = 0 BM5: j = j+1 m = j/2*3+4-5 Gosub 4000 If j < 1000 GoTo BM5 Print Timer / 1000 Print " " Print "Benchmark 6" Timer = 0 j = 0 dim ray(5) BM6: j = j+1 m = j/2*3+4-5 Gosub 4000 For q = 1 TO 5 Next q If j < 1000 GoTo BM6 Print Timer / 1000 Print " " Print "Benchmark 7" Timer = 0 j = 0 dim ray2(5) BM7: j = j+1 m = j/2*3+4-5 Gosub 4000 For q = 1 TO 5 ray2(q) = m Next q If j < 1000 GoTo BM7 Print Timer / 1000 Print " " Print "Benchmark 8" Timer = 0 j = 0 BM8: j = j+1 m = j^2 blog = LOG(j) csin = SIN(j) If j < 1000 GoTo BM8 Print Timer / 1000 End 4000 RETURN |
||||
Volhout Guru Joined: 05/03/2018 Location: NetherlandsPosts: 4222 |
Hi Phenix, Do you know a ZX81 that can use INC ? Regards, Volhout PicomiteVGA PETSCII ROBOTS |
||||
stanleyella Guru Joined: 25/06/2022 Location: United KingdomPosts: 2119 |
in gcbasic var=var+1 could be var ++. it would be same speed but less typing. |
||||
toml_12953 Guru Joined: 13/02/2015 Location: United StatesPosts: 339 |
But then you can't compare it to all the BASICs that have been benchmarked before or those that can't use INC. The validity of benchmarks lies in the running of identical code (or as similar as possible) on different machines. Taking advantage of features or quirks of a particular machine such as defining variables as integers that are available on some but not others muddies the comparison. The same goes for people who complain that a benchmark is inefficient. That misses the point. The point isn't to optimize programs but to see how various machines run the same code (hardware benchmark) or how one machine runs an algorithm written in different languages or dialects of the same language (software benchmark) |
||||
phil99 Guru Joined: 11/02/2018 Location: AustraliaPosts: 2135 |
One issue with benchmarks is they don't always compare real world problems. If the intent is to find which platform can achieve a particular task fastest regardless of method, then each platform should be allowed to use all the tricks it has at it's disposal to achieve that task. Trying to compare the same code on each (or as close as possible) may hide the true potential of them. Eg. When doing a speed comparison of jet aircraft, only one of which has an afterburner, you wont get a valid result if it is not permitted to use the afterburner. . Edited 2024-05-04 09:17 by phil99 |
||||
PhenixRising Guru Joined: 07/11/2023 Location: United KingdomPosts: 857 |
I thought it was a general comparison of old vs new. Today we have 32bit CPUs and we have FPUs The guy on YouTube who compared PicoBasic with Python? He did the exact same thing with GOTO and var = var + 1. The last time that I checked, there was only one comment...my comment. Stating that he was misrepresenting MMBasic. |
||||
JohnS Guru Joined: 18/11/2011 Location: United KingdomPosts: 3800 |
Andy Tanenbaum said something like it's best to take benchmarks with a pinch - no, a sack - of salt. They can help you choose, though, such as whether a proposed system is likely to be fast enough (*) or if not then which one(s) ought to be. And they're interesting! Especially when you get a huge spread of speeds (as in the posted ones). (*) a lot of CPUs nowadays are plenty fast enough, of course, even with a higher level language soaking up CPU time (JVMs etc) - which is good because code can have array index checks, pointer checks (or ban pointers) and so on John |
||||
Mixtel90 Guru Joined: 05/10/2019 Location: United KingdomPosts: 6778 |
You can never compare different systems unless they are running identical code. Comparing languages, unless done on the same hardware platform, is pointless and is mere show-off. Try comparing BASIC with LISP for string handling, or either with a macro assembler. :) You can compare the hardware, any underlying firmware or the programming language - but only one at once. If you attempt to benchmark using real world tests then the systems might be optimised for particular tasks so you get an unfair bias. Benchmarks are fun though. :) . Edited 2024-05-04 18:14 by Mixtel90 Mick Zilog Inside! nascom.info for Nascom & Gemini Preliminary MMBasic docs & my PCB designs |
||||
phil99 Guru Joined: 11/02/2018 Location: AustraliaPosts: 2135 |
You want the one that solves your problem best, by whatever means. The other systems don't get upset by loosing the race. Self-aware AI chips with emotions aren't here yet. |
||||
Mixtel90 Guru Joined: 05/10/2019 Location: United KingdomPosts: 6778 |
Going back to your aircraft example though, the aircraft without the afterburner may be optimised for agility whereas the other may be faster in a straight line but steer like a cow, even with the afterburner switched off. The requirements have to be precisely defined before a device is chosen or designed. You can't reliably use computer benchmarks in most cases. They are interesting, and usually give a very general idea of differences in performance but that's all. When you get down to small differences in measured performance it's easy to fall into the trap of picking a "faster" one when you may be sacrificing a lot of things that the benchmark set doesn't measure. Mick Zilog Inside! nascom.info for Nascom & Gemini Preliminary MMBasic docs & my PCB designs |
||||
Page 6 of 8 |
Print this page |