123
-=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- (c) WidthPadding Industries 1987 0|460|0 -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=-
Socoder -> Language Tests -> JSE - Optimisationalism 5

Tue, 15 Apr 2025, 07:34
Jayenkai

JSE - Optimisationalism 5


Optimisationalism 5
You can Run this here.

It's been over a year and half since I made Optimisationalism 4. Can you believe that?! Good grief.
I've even moved house during that time!
Time for a new Optimisationalism.

I've been itching to do this for a couple of days, now, and finally got around to it, this morning.
I've built this around my recent MacMini M4 purchase, so that it "just about" pokes it into slight stress levels. That means that anything slower will (hopefully!) be showing decent levels of stress, and I can work on getting the engine up to speed based on your scores.
Although there's the usual Text test, image test, shape test and maths test stuff, I've actually "NOT" optimised the main loop, so that there's a ton of If's and a bunch of maths being done every single loop.
Hopefully this will help me test the actual speed of the language, more than testing drawing calls and such.


What to Do
1. Click here to open the script in GotoJSE.
2. Hit the [fps] box and check that the version is at least v.3gig or above. If not, Refresh the page.
3. Run the script.

Then sit and watch random things happen for about 2 minutes or so. (your mileage will indeed vary!)

Once it's done, the typical table of scores should appear. You can either hit ; or ' to save the screenshot to your download folder, using JSE, or if you're on a mobile/tablet, you'll have to use whatever methodology you use on that to take a screenshot.

Be sure to let us know what your device is, and I'll try to keep tabs on everything.

-=-=-
''Load, Next List!''
Tue, 15 Apr 2025, 07:40
Jayenkai
Laptop : MacBook Air M2 - 8Gb - 70.61
> Reveal 🔎

Desktop : MacMini M4 - 16Gb - 49.63
> Reveal 🔎

Tablet : iPad Pro M4 - 8Gb (I think!) - 55.33
> Reveal 🔎

Phone : iPhone 16 - 8Gb - 54.27
> Reveal 🔎

Gamey : ASUS ROGAlly - Original model - 96.66
> Reveal 🔎

VR : Quest 3 - Original model - 364.43
> Reveal 🔎

Mini : GPD Win - Quite old - 1712.09
> Reveal 🔎

Bag'o'Shite : Samsung Galaxy Tab A 10" 2018 model - DNF

-=-=-
''Load, Next List!''
Tue, 15 Apr 2025, 13:57
Dan
Windows 10 Laptop - 32gb ram:
Tue, 15 Apr 2025, 14:10
spinal
What's good, big number or small number?



Windows 11 PC, i9 64GB Ram

-=-=-
Check out my excellent homepage!
Tue, 15 Apr 2025, 14:58
Jayenkai
Sorry.. It's time taken, so smaller = better.

-=-=-
''Load, Next List!''
Tue, 15 Apr 2025, 17:12
Jayenkai
: Download | Suno Link

-=-=-
''Load, Next List!''
Tue, 15 Apr 2025, 18:43
Dan
Regarding the audio: ....
  --v

Tue, 15 Apr 2025, 18:58
Jayenkai
Aye, I was actually fixing that a few hours ago
It has been repaired, just not uploading it because.. .. regarding the audio.. a LOT of other things broke, today, and I did a big-ol' "Hold Ctrl-Z and hope for the best!"

But that particular fix is (as far as I've tested it) a fix that is hopefully fixed once I upload it...

> Reveal 🔎

-=-=-
''Load, Next List!''
Thu, 17 Apr 2025, 00:29
Jayenkai
Day 1's tweaking, and the biggest improvement is that "Bag'o'Shite : Samsung Galaxy Tab A 10" 2018 model - DNF" is now managing to finish.
.. It takes pissing ages to get there, but it finishes!!

Bag'o'Shite : Samsung Galaxy Tab A 10" 2018 model - 2019.72!
> Reveal 🔎

There's been a fair amount of optimising, with a bunch of bits getting faster, though others are actually slower. Fixes for those will be incoming.

The disparity between First run and Second+ seems to be getting worse, so I'll probably focus on figuring that out.
..If you open code, run it, let it run a bit, close it, then run it again, it's MUCH faster the second time and beyond, because the browser's done a bunch of JIT Compiling behind the scenes.

It's not an issue when you're coding, but if the player's using Player Mode, then it's only going to run the once, and they'll be seeing First Run speed, rather than Second+

-=-=-
''Load, Next List!''
Thu, 17 Apr 2025, 14:59
Jayenkai
Had to do a LOT of fixing, today, as I actually buggered up a TON of commands, yesterday.
I mean, when the Flip command doesn't even work, you know you've done something pretty nasty!

Anyway, things "appear" to be better, now.
If you spot any glaring issues, be sure to let me know.

-=-=-
''Load, Next List!''
Thu, 17 Apr 2025, 15:17
Dan
Yes, i'm getting following errors:


JSE_3gij.js:5084 Uncaught ReferenceError: cb is not defined
at JSE_DoI_Drawing (JSE_3gij.js:5084:5)
at JSE_DoI (JSE_3gij.js:3392:12)
at RunJSEScript (JSE_3gij.js:2977:12)
at redraw (JSE/:5625:5)
at heartbeat (JSE/:5771:5)


clicking on one of them points to the if (cb>0) line:

if (Alpha>0) {
DrawImg(iSymbol[ c ],JA0,JA1,s);
if (cb>0) {wa=Alpha;Alpha=cb;DrawImg(iSymbol[Math.floor((c+1)%8)],JA0,JA1,s);Alpha=wa;}
}

Thu, 17 Apr 2025, 15:41
Jayenkai
Dang, must a browser quirk. OK, I'll shuffle some code around. Gimme .. .. Maybe an hour!

-=-=-
''Load, Next List!''
Thu, 17 Apr 2025, 15:51
Jayenkai
OK, fixed it. (I hope. Let me know!)
Thu, 17 Apr 2025, 17:17
Dan
Ok, now it works !
Fri, 18 Apr 2025, 01:14
spinal


pixel 6 pro

-=-=-
Check out my excellent homepage!
Fri, 18 Apr 2025, 14:53
steve_ancell
My PC: Shyte.




My Phone: Doogie S110: Shyte, Shyte, Poop and Shyte.


Fri, 18 Apr 2025, 15:22
Jayenkai
Those are some nice sets of stats, and it's great that I can see what's causing the majority of slowdown..
Mostly the font rendering, again, as per usual.
I like how the rest of the stats are mostly static. Something I'd love to do is make a tiny little benchmark when the script is being parsed, which might be able to do a quick drawing test, enough to guesstimate what oughta be limits or such.
.. Though, how that works in a game-dev environment I'm not sure.
Maybe I should just make limits into variables, and let the developer decide whether to work around them or not..?

It makes me wonder if it'd even be worth trying to get WebGL involved. On the one hand, mostly everything else would be super-speedy, but IIRC font rendering is even worse in WebGL, so the stats would be crazy skewed in the wrong direction.
Hmmm..

But, yeah, I like those numbers.
Thanks, Steve.

Meanwhile, I've nipped a tucked a couple more bits and pieces, today, fixed up another "can get stuck in a loop" issue, and started to dig into how I work with Arrays.
... And then didn't manage to fix the up in the slightest, because it was too hard and my convoluted code kept breaking

\o/yeay\o/

-=-=-
''Load, Next List!''
Fri, 18 Apr 2025, 17:59
steve_ancell
You're welcome mate.