QPC2v5.01 release

Discussion and advice about emulating the QL on other machines.
Tinyfpga
Gold Card
Posts: 252
Joined: Thu Sep 27, 2018 1:59 am

Re: QPC2v5.01 release

Post by Tinyfpga »

Derek posted
Is it possible to have a version of qpC2 that is zipped up and does not need installed?
The QPC2 file I downloaded has an option (option 1) to create files in "portable" form to any storage device. You may have already done this.

I don't know if my zipped QPC2 v 5 is any use to you. You can unzip it to any destination including a USB stick.

Executing QPC2.exe will open the configuration file which defaults to my "SMS2" setup in max resolution, full screen and 8bit colour. I have configured SMSQE to display transparent real-time window moves. It boots from win1_ .
qpc.zip
(8.61 MiB) Downloaded 88 times
The "QUIT" button I use a lot. select it with a mouse click and then press any key. I do the equivalent with my pi400 by yanking out the power cable because it crashes frequently. (I know "I is" not suppose to do this)

qpc.zip contains three PDF manuals I found on Marcel's and Wolfgang's web sites.

win1_ contains a partially modified version of an SMS2 startup floppy I found in my loft. (I ought to complete it sometime)
win3_ and win4_ contain a load of very sad BASIC programs that I have written whilst learning to program.
win2_ contains Marcel's demo file.

This setup will not run Marcel's boot file but I imagine you will want to run your own setup.

As the stuff on the win1_ file easily fits onto a floppy, the system boots up quickly (under 2 secs). I wouldn't want it any other way. If only my idiot phone would be as fast.


Tinyfpga
Gold Card
Posts: 252
Joined: Thu Sep 27, 2018 1:59 am

Re: QPC2v5.01 release

Post by Tinyfpga »

Further to my post about QPC on a LattePanda.
QPC has always been "fast" on the various PCs I have used, so I never gave much thought to its performance. Recently I bought a LattePanda and ran QPC2 on it. It was unusably slow and so I asked why this could be. In my original post, I wrote that it was the latest version of QPC2 that ran slowly.

This is not the case. I had two versions of QPC2 on the Panda, QPC2.4 and the new QPC2.5. After Marcel suggested that a grahpics driver could be causing a problem, I checked my QPC2.5 settings only to find that I had run both QPC2.4 and 5. It was QPC2.4 and QPC2.5 set to Direct Draw that ran slowly not QPC2.5 set to Direct 3D.

My father was a keen user of SMS2 on an Atari mega STe user. He was originally a QL enthusiast. A long time ago he bought a copy of QPC2 and he ran it on an XP machine that I had assembled for him such that he could access the internet and still run his SMS2 stuff. This machine is still running today and I have just found out that it is, surprisingly, the fastest SMSQE-in-QPC machine amongst my motley pile of computers.

Curious as to the poor performance of SMSQE-on-Panda I wrote a program (in SBASIC) to test the speed of compiled SBASIC algorithms. There doesn't seem to be a timer instruction in SBASIC so I tried two methods to do this. The first method using the 20msec delay (Is it actually accurate?) inherent in the INKEY$ function was interesting but not very reliable. The second uses the DATE function.
This program should run on any machine including a QL. I don't have a QL, so I can't test it.
WIN3.zip
(469.53 KiB) Downloaded 84 times
I start timing on a transition, determine how long it takes to run the test program, run the algorithm I want to test in a loop, count the number of times the algorithm runs in 5 seconds and finally display the results after subtracting the test program run-time.

The win3.zip file contains three test programs that are independent of each other, but are designed to run one after each other if they are all stored as win3_xxxx. I have yet to find out how the HOME Thing works, so either one has to edit the instruction EX win3_xxxx, or delete it, or accept that each program will stop with the error "Not Found"

I have no idea if this is accurate but I can't think of another way testing the speed of QPC/SMSQE. As a method comparing the relative performance of compiled SBASIC algorithms I think it is probably useful.

The results seem to confirm that, as far as the speed of executing an SBASIC program in SMSQE is concerned, performance of low cost computers has not increased. Actually the opposite seems to be true. The low cost computers I have bought recently are slower than my father's "low cost" generic 2009 PC or my mothers Lenovo R60. (how is this possible?)

The oddest result is QPC2.4 on Panda.(see results below). I wonder, what those four cores are actually doing?
One other thing that is odd is the perceived performance of SMSQE on my various bits of hardware. For example "real-time" window moves and file menu display performance on the Q68 (the slowest machine) is quite a lot faster than either the Panda or the Pi400.

The programs tests the speed of a REP loop, followed by writing characters, blocks and ellipses to a window in micro seconds.
The Panda is odd and "feels the slowest", so I list its results last.

Listed as slowest first........:- Rp chr blck ellps
Q68.............................:- 168 583 1134 12597
Pi400............................:- 47 260 280 5200
Lenovo R60 QPC1..............:- 35 138 253 4931
Lenovo X220 QPC2.5 3D......:- 36 191 289 3485
Lenovo X220 QPC2.5 Direct :- 35 179 286 3436
Lenovo X220 QPC2.4 Direct?.:- 31 139 293 3326
Gigabyte Brix QPC2.5 3D.....:- 17 88 109 3415
Gigabyte Brix QPC2.5 Direct.:- 17 88 105 3384
Lenovo R60 QPC2.5 Direct? ..:- 17 94 90 2325
2009 generic QPC2.4 Direct?..:- 9 58 87 2168
2009 generic QPC2.3 Direct?..:- 9 45 81 2017
2009 generic QPC2.5 Direct?..:- 9 53 56 1811

Panda QPC2.4 Direct?...........:- 19 526 162140 4203 BLOCK drawing !!! 140 times slower than a Q68
Panda QPC2.5 Direct............:- 22 147 15284 4360
Panda QPC2.5 3D................:- 22 168 4736 4879
Slow drawing to a console probably explains why it "feels slow"

The Q68 is the slowest but it "feels" fast. How can the X220 be so much slower than the R60 or 2009 generic?


Derek_Stewart
Font of All Knowledge
Posts: 3929
Joined: Mon Dec 20, 2010 11:40 am
Location: Sunny Runcorn, Cheshire, UK

Re: QPC2v5.01 release

Post by Derek_Stewart »

Hi,

The Q68 is dingle core CPU running at 40Mhz, or 0.04 Ghz

How fast does is each computer?

I bet most of the computers on the list have multiple cores each running at least 1Ghz per, is this a fair comparison.

I have QPC2 5.01 running on a Core i7, 2.85Ghz per core, which runs the emulator very quickly.


Regards,

Derek
User avatar
NormanDunbar
Forum Moderator
Posts: 2251
Joined: Tue Dec 14, 2010 9:04 am
Location: Leeds, West Yorkshire, UK
Contact:

Re: QPC2v5.01 release

Post by NormanDunbar »

I think I'm remembering this correctly, but, things might have changed since....

When Windows runs/ran on mutiicore CPUs, core 0 did all the I/O. If core1 needed input, it had to get core 0 to stop what it was doing, do the input and then continue again. This might slow things down.

Moore's Law: the speed of computers doubles every 18 months.

Norm's Law: the size and efficiency of your programs halves every 18 months, thus nullifying Moore's Law! :D

Cheers,
Norm.


Why do they put lightning conductors on churches?
Author of Arduino Software Internals
Author of Arduino Interrupts

No longer on Twitter, find me on https://mastodon.scot/@NormanDunbar.
User avatar
mk79
QL Wafer Drive
Posts: 1349
Joined: Sun Feb 02, 2014 10:54 am
Location: Esslingen/Germany
Contact:

Re: QPC2v5.01 release

Post by mk79 »

Tinyfpga wrote:I have no idea if this is accurate but I can't think of another way testing the speed of QPC/SMSQE.
http://www.dilwyn.me.uk/benchmrk/index.html. I like Test909 a lot but most machines are now too fast to get accurate results these days (still use it to evaluate FPGA cores). You can try Dhrystone or Bogomips for raw CPU performance. Or viewtopic.php?f=3&t=1500 or...
The low cost computers I have bought recently are slower than my father's "low cost" generic 2009 PC or my mothers Lenovo R60. (how is this possible?)
Single thread CPU speed has not increased much over the years and in fact has sunk a few times as some optimizations turned out to be security problems and were disabled again... also the Panda for example has a CPU with a 2W power consumption, so it's optimized for energy efficiency and not for speed. For comparison, the latest Intel flagship uses up to 240Watt.
The Q68 is the slowest but it "feels" fast. How can the X220 be so much slower than the R60 or 2009 generic?
There are many X220 variants with different CPUs, from some 1.1GHz Celeron up to a 3.5GHz i7. Without knowing which CPU is in there the values are meaningless.


User avatar
mk79
QL Wafer Drive
Posts: 1349
Joined: Sun Feb 02, 2014 10:54 am
Location: Esslingen/Germany
Contact:

Re: QPC2v5.01 release

Post by mk79 »

NormanDunbar wrote:When Windows runs/ran on mutiicore CPUs, core 0 did all the I/O. If core1 needed input, it had to get core 0 to stop what it was doing, do the input and then continue again. This might slow things down.
That might have been true in the 90s ;)


User avatar
NormanDunbar
Forum Moderator
Posts: 2251
Joined: Tue Dec 14, 2010 9:04 am
Location: Leeds, West Yorkshire, UK
Contact:

Re: QPC2v5.01 release

Post by NormanDunbar »

I know it was a while back Marcel, but I wasn't aware it was that long ago!

Cheers,
Norm.


Why do they put lightning conductors on churches?
Author of Arduino Software Internals
Author of Arduino Interrupts

No longer on Twitter, find me on https://mastodon.scot/@NormanDunbar.
User avatar
XorA
Site Admin
Posts: 1358
Joined: Thu Jun 02, 2011 11:31 am
Location: Shotts, North Lanarkshire, Scotland, UK

Re: QPC2v5.01 release

Post by XorA »

mk79 wrote:
NormanDunbar wrote:When Windows runs/ran on mutiicore CPUs, core 0 did all the I/O. If core1 needed input, it had to get core 0 to stop what it was doing, do the input and then continue again. This might slow things down.
That might have been true in the 90s ;)
Yeah, with multi socket configurations there is no guarantee that the I/O device is even connected to Core 0.

Back to the Latte Panda, there are possible two issues.

1) Without cooling the GPU will be even more throttled than CPU, GPU gets throttled much earlier than the CPU.
2) Are you sure your using the Intel driver and not the Win10 VGA driver which will get installed by default?


Tinyfpga
Gold Card
Posts: 252
Joined: Thu Sep 27, 2018 1:59 am

Re: QPC2v5.01 release

Post by Tinyfpga »

From XorA:-
1) Without cooling the GPU will be even more throttled than CPU, GPU gets throttled much earlier than the CPU.
2) Are you sure your using the Intel driver and not the Win10 VGA driver which will get installed by default?
Thanks for no 1. I had no idea. My vague plan was to make a QPC-in-keyboard machine, like the Pi400. Cooling the Panda will not be easy because it needs a heat sink on both sides of the PCB and I don't want to use a fan.

I initially bought the cheapest Panda, (without Windows 10 preinstalled). This turned out to be a mistake, so I wasted more cash buying the official preinstalled version. Marcel suggested I check the graphics driver but I haven't done so yet. You may well be right about this and it would explain the very poor and erratic results of my tests.

I revisited the Latte site and found that my Panda is described as "Turbo charged". One would have thought that an official installation would have the best driver already installed. My Panda is back in its box at the moment.

Norm's law sounds so good, and better still, so plausible.

I am going to add the PC specs to my list later.

Would you, Derek be prepared to run my test program on a QL and your Core i7? I would like to see the results.
Just to let you know. My favourite SMSQE machine is the Q68. I don't really care about the speed. I Mainly use QPC2 because of the convenience of using SMSQE on a laptop. I also like the HD resolutions I can achieve with both QPC and Qmulator.

One last thing, and Marcel might know the answer to this question; can QPC2 run in Win PE?


Derek_Stewart
Font of All Knowledge
Posts: 3929
Joined: Mon Dec 20, 2010 11:40 am
Location: Sunny Runcorn, Cheshire, UK

Re: QPC2v5.01 release

Post by Derek_Stewart »

HI,

I do not use Windows, Linux with Wine runs QPC2 and Qemulator...


Regards,

Derek
Post Reply