Xojo on Intel i9 vs. M3 Max

In case you are planning on upgrading from an Intel-based Mac to an Apple Silicon-based Mac, I present some Xojo-related timings for your amusement.

TLDR: Moving from an Intel i9 to an M3 Max processor roughly doubles the compile and debug performance. In the case of Aggressive optimization building, it’s more like 3X (probably because of multi-core optimization)

Comparative Xojo timings for:

Computer A: 2019 16" MacBook Pro, Intel i9 processor
Computer B: 2023 16" MacBook Pro, M3 Max processor

Both computers with 64GB RAM, running latest Mac OS Sonoma (14.1.1). Xojo 2023r3.1, a selection of Einhugur and MBS plugins managed with Plugins Pro. Large desktop project (908 items in text format).

Starting condition for both computers: Xojo caches cleared, Xojo not running.

Times in mm:ss.


TASK                  COMPUTER A       COMPUTER B        SPEEDUP FACTOR
====                  ============     ============      ================

Launch Xojo            00:39            00:24             1.6

Load project           01:43            00:52             2.0

Debug run [1]          04:25            02:03             2.2

Debug run [2]          00:40            00:23             1.7

Build [3]              39:27            13:40             2.9

TOTAL                  46:54            17:22             2.7

Notes:
[1] Default optimization. Includes preparing plugins for native desktop platform.
[2] No changes to project. Just a re-run.
[3] Aggressive optimization. Universal build. Includes preparing plugins for non-native desktop platform.

11 Likes

I think you mean halves, not doubles. Your figures say that the M3 Max is faster :slight_smile: Doubling the time suggests that it takes twice as long to perform the task.

5 Likes

When I read “amusement” and then “roughly doubles” I expected Computer A to be faster than Computer B. Good to see that was not the case.

Oops. Corrected.

1 Like

I went from a 2011 i7 macbook pro to a 2023 M2Max and did not measure but got around 5x to 10x speed bump…

Now imagine what it will be like when you change your code to something like below and app can gracefully soak up ever single available core in your M3 Max processor. It uses queuing so you can load up 150 tasks, but it will only execute 16 tasks at once (number of cores in a M3 Max CPU).

    static func runUserInitiatedTask(seconds: UInt32) {
        Task(priority: .userInitiated) {
            print("🥸 userInitiated: \(Date())")
            sleep(seconds)
        }
    }

for _ in 1...150 {
    HeavyWork.runUserInitiatedTask(seconds: 3)
}

Yeh, I do iOS development on Xcode too, but this was just for my large legacy Xojo project (which is cross-platform).

Maybe it is not an apples to apples comparative. Xojo makes some weird changes release to release, It will be interesting to to the exact same test with older releases. A few days ago I discover that 2023r3.1 doubles the debug time of 2019r2.1 on windows

I was blown away t’other day watching some lady working on her Mac app, clicked a couple of buttons and she ran it on iOS… it looked, smelt and operated just like an iOS app, it’s actually got me pretty excited, as it can be used to make Android apps also. I could build a native Mac app and have it run natively on iOS and Android…

Funny coincidence, you have both the machine I use now, and the one that will arrive shortly.

I’m pretty sure a lot of folk are in the same boat as us. Couldn’t resist the upgrade, even though the i9 MBP worked just fine. Now the missus is enjoying it (replacing her hand-me-down 2013 MBP).

1 Like

The other massive difference is just how quiet the machines are. It takes a lot to got the fans to be noisy.

2 Likes

I have a MacBook Pro (Retina, 15 pouces, late 2013 with 2,3 GHz Intel Core i7 quad-core) and I would like to buy a new M3 (ou a M2 or only M1 because of the price). I don’t know the difference between i7 and i9 but I suppose it would be a huge gain for me.
I’m afraid I won’t be able to keep my Xojo applications uptodate with a too old Mac.

Seems like this is the geekbench score for your machine

M1 will be at least twice as fast in single-core, 2.5x in multi-core.

The speeds for the differing M1, M2 and M3 machines are documented here. As Jeremie pointed out your machine is 1069 single core and 3280 multicore.
https://browser.geekbench.com/mac-benchmarks

A top of the range MBP 16" M3 Max comes out at 3280 single core (3.06x faster) and 19151 multicore (5.84x faster).

I’m using the MacBook Air with M2. Faster than any other CPU incl. I9 … and NO FAN :grinning:

1 Like

Another solution is to use a mac in the cloud like macweb.com
From XcodeBenchmarks, the difference is bigger with Xcode because the app is more native.
Also, 64 GB on Apple silicon is like 128 GB because the memory management is different and integrated inside the core. 8 GB is like 16 GB of intel. Etc. The unique parts: the memory bandwidth with up to 800 GB on M2 Ultra, the neural engine absent on Intel.

Not really.
I wouldn’t advise anyone to buy a 8GB Mac.

The video from this article shows a major difference between the 8GB and 16GB M3 Mac

4 Likes

Apple has been slammed for that statement its utter nonsense that does not hold in any way.

If anything Apple Silicon needs more memory Because the RAM for the display card also has to come of the main RAM.

Only thing that gives users perception of not needing as much RAM is fast SSD (Which Others also have now). But fast swapping on SSD is not all good it will just wear down the SSD and slow you down also.

At end of the day integer takes same amount in RAM, Picture takes same amount in RAM, etc.

5 Likes

Also ARM processors are RISC based. I.e. it takes a lot more instructions to do the same tasks that a CISC processor would do. More RAM needed for the code, in other words.