Apple x86 is dead - are there plans for Factorio ARM64?

Post all other topics which do not belong to any other category.
Post Reply
dee-
Filter Inserter
Filter Inserter
Posts: 414
Joined: Mon Jan 19, 2015 9:21 am
Contact:

Apple x86 is dead - are there plans for Factorio ARM64?

Post by dee- »

As probably already known to many people, Apple decided to kill x86 Intel Apple products, very probably including their Mac Pro line, and switch to homemade ARM64 chips.

This will kill *all* of their x86 programs in quite a very short timeframe and they will continue to strongly enforce their Apple Store.

Are there plans to create an ARM version of Factorio?


https://www.phoronix.com/scan.php?page= ... se-Silicon

http://www.phoronix.com/scan.php?page=n ... acOS-Start

Koub
Global Moderator
Global Moderator
Posts: 7175
Joined: Fri May 30, 2014 8:54 am
Contact:

Re: Apple x86 is dead - are there plans for Factorio ARM64?

Post by Koub »

This is already discussed here : viewtopic.php?p=499848#p499848 (within the "I want Factorio on my Ipad" thread).
Koub - Please consider English is not my native language.

dee-
Filter Inserter
Filter Inserter
Posts: 414
Joined: Mon Jan 19, 2015 9:21 am
Contact:

Re: Apple x86 is dead - are there plans for Factorio ARM64?

Post by dee- »

Koub wrote:
Mon Jun 29, 2020 3:43 pm
This is already discussed here : viewtopic.php?p=499848#p499848 (within the "I want Factorio on my Ipad" thread).
Oh, I missed that, thanks!

posila
Factorio Staff
Factorio Staff
Posts: 5201
Joined: Thu Jun 11, 2015 1:35 pm
Contact:

Re: Apple x86 is dead - are there plans for Factorio ARM64?

Post by posila »

I think ARM based Mac deserves seprarate thread.

It is not good time for us to evaluate supporting another arch at the moment, as we are preparing for 1.0 release. There is also a question of them going full Apple Silicon or still using AMD GPUs. So I would say don't buy new Mac just yet (or at least don't get rid of your old one) if you want to play Factorio on it.

Kyralessa
Filter Inserter
Filter Inserter
Posts: 442
Joined: Thu Sep 29, 2016 5:58 pm
Contact:

Re: Apple x86 is dead - are there plans for Factorio ARM64?

Post by Kyralessa »

dee- wrote:
Mon Jun 29, 2020 2:40 pm
This will kill *all* of their x86 programs in quite a very short timeframe...
Are you saying the Macs that exist out there today are all going to self-destruct? :shock:

(OK, it's Apple, I suppose I wouldn't put it past them...)

User avatar
5thHorseman
Smart Inserter
Smart Inserter
Posts: 1193
Joined: Fri Jun 10, 2016 11:21 pm
Contact:

Re: Apple x86 is dead - are there plans for Factorio ARM64?

Post by 5thHorseman »

Kyralessa wrote:
Tue Jun 30, 2020 6:43 am
dee- wrote:
Mon Jun 29, 2020 2:40 pm
This will kill *all* of their x86 programs in quite a very short timeframe...
Are you saying the Macs that exist out there today are all going to self-destruct? :shock:
No, but Apple Culture demands you upgrade when they tell you to. ;)

netmand
Filter Inserter
Filter Inserter
Posts: 302
Joined: Wed Feb 22, 2017 1:20 am
Contact:

Re: Apple x86 is dead - are there plans for Factorio ARM64?

Post by netmand »

As far as Macs transitioning to new silicon and MacOS is concerned:
- There will be a 2 year transition period between Intel-based Macs back to their own System-On-a-Chip (SOC). That's just the beginning.
- They still have Intel-based products in the pipeline that will be announced later this year or next year.
- This means they're going to be supporting Intel for at least several years beyond that.
- Which means Macs with the new processors will be encouraged to use Rosetta (2) to enable running of MacOS Intel-based games and applications.

ref: June 2020 WWDC Keynote

- So that means Factorio can continue to release Mac versions the same as they do today.

edit: Factorio was not mentioned in the Keynote.

hvenev
Manual Inserter
Manual Inserter
Posts: 2
Joined: Mon Dec 09, 2019 11:33 am
Contact:

Re: Apple x86 is dead - are there plans for Factorio ARM64?

Post by hvenev »

I'm not sure about Apple's ARM chip and Rosetta and macOS, but right now the headless server binary for x86-64 is able to run (30 UPS on a 60 SPM factory) on Linux on a Raspberry Pi 4 with qemu user mode emulation.

Edit: s/RPM/SPM/

dudeTheory
Burner Inserter
Burner Inserter
Posts: 6
Joined: Sun Apr 14, 2019 1:08 am
Contact:

Apple Silicon M1

Post by dudeTheory »

Hey guys! I recently got a new M1 mac, and I have to say it's pretty darn awesome. I didn't get it for playing "games", but I figured maaaaybe Factorio would work on it. and... well... it does! However, the graphics performance isn't keeping up.
Things I've tried that helps: Not running the game in full screen and disabling full color depth.

This has been my favorite game for many years now, and pretty much the only game I play if I have free time.
I'm almost sure if the devs can optimize for M1 mac and maybe the Metal graphics API, this thing will be a Factorio monster.

Thank you! Developers you are awesome and keep up the good work!

nicoouf
Manual Inserter
Manual Inserter
Posts: 1
Joined: Mon May 17, 2021 7:39 am
Contact:

Re: Apple x86 is dead - are there plans for Factorio ARM64?

Post by nicoouf »

Hi guys, do we have any update on this or an approximate timeframe for the M1 build? I’m guessing the DLC will be made compatible with Apple Silicon but it would be great to have an updated build before that :). Anyway, thanks for all the hard work, love the game. Cheers

User avatar
ptx0
Smart Inserter
Smart Inserter
Posts: 1507
Joined: Wed Jan 01, 2020 7:16 pm
Contact:

Re: Apple x86 is dead - are there plans for Factorio ARM64?

Post by ptx0 »

nicoouf wrote:
Mon May 17, 2021 7:43 am
Hi guys, do we have any update on this or an approximate timeframe for the M1 build? I’m guessing the DLC will be made compatible with Apple Silicon
I don't think that'll be the case. it's not a straightforward change. the architecture is quite different. posila said not to throw out your old intel mac if you want to play Factorio :cry:

Nidan
Fast Inserter
Fast Inserter
Posts: 225
Joined: Sat Nov 21, 2015 1:40 am
Contact:

Re: Apple x86 is dead - are there plans for Factorio ARM64?

Post by Nidan »

it's not a straightforward change. the architecture is quite different.
The main issue is not getting factorio to run on an arm, but to support it and to have interoperability between arm and x86 builds.


I have no clue about building for mac, but in a linux/gcc world, building for arm is as simple as installing a version of gcc that can cross compile into the appropriate arm dialect. Fixing any build failures should be relatively easy. And once the build succeeds singleplayer will most likely work.

But only singleplayer will work. For multiplayer all the little differences between arm and x86 suddenly become relevant. To list a few questions I can't answer from the top of my head:
  • How wide is a long? At least under linux, it changed size between x86 and amd64.
  • How is floating point rounding handled? You can find some dev posts about rounding issues from the early days of factorio multiplayer.
  • How strong is arm's cache coherency? x86's is very strong, to the point that you can omit some synchronization because of architecture guarantees.
And then there are all the things that are different, but nobody thought about them yet. It's very easy to assume something will always work in a certain way, when you haven't yet encountered a place where your assumption doesn't hold. And each issue will break things in subtle ways, ending a a random desync the devs need to analyze.
The only way to find these things is by extensive, time consuming testing and even then there's no guarantee you've found them all.


tl;dr: arm support might never happen.

User avatar
ptx0
Smart Inserter
Smart Inserter
Posts: 1507
Joined: Wed Jan 01, 2020 7:16 pm
Contact:

Re: Apple x86 is dead - are there plans for Factorio ARM64?

Post by ptx0 »

Nidan wrote:
Mon May 17, 2021 4:40 pm
I have no clue about building for mac, but in a linux/gcc world, building for arm is as simple as installing a version of gcc that can cross compile into the appropriate arm dialect. Fixing any build failures should be relatively easy. And once the build succeeds singleplayer will most likely work.

But only singleplayer will work. For multiplayer all the little differences between arm and x86 suddenly become relevant. To list a few questions I can't answer from the top of my head:
  • How wide is a long? At least under linux, it changed size between x86 and amd64.
  • How is floating point rounding handled? You can find some dev posts about rounding issues from the early days of factorio multiplayer.
  • How strong is arm's cache coherency? x86's is very strong, to the point that you can omit some synchronization because of architecture guarantees.
well, you said a lot of stuff, and it even appears that you know what you're talking about.

but upon investigation, it's a bunch of nonsense.
If the code only uses basic arithmetic operations such as +, -, *, / and sqrt and the compiler is in IEEE754 conformance mode, the output should be bit-identical regardless of the CPU used. This IEEE754 conformance mode is usually the default setting.
https://en.wikipedia.org/wiki/IEEE_754
The IEEE Standard for Floating-Point Arithmetic (IEEE 754) is a technical standard for floating-point arithmetic established in 1985 by the Institute of Electrical and Electronics Engineers (IEEE). The standard addressed many problems found in the diverse floating-point implementations that made them difficult to use reliably and portably. Many hardware floating-point units use the IEEE 754 standard.
1985 called, it wants its technical jargon back.

Premu
Fast Inserter
Fast Inserter
Posts: 100
Joined: Wed Nov 13, 2019 4:40 pm
Contact:

Re: Apple x86 is dead - are there plans for Factorio ARM64?

Post by Premu »

Ehm - compiler standards exist, but believe it or not - these standards do not define everything. Including the size of some standard data types. So there is quite some wiggle room for the implementation of compilers.

At work (we develop brake system controllers for cars) we only use explicit data types with a defined bit size for that reason, as we have to support different MCUs with different architectures, using different compilers.

Furthermore, many implementations use hardware constraints for optimization purposes, or just because it works until another architecture comes around and breaks it. We have discussions regularily that we now have to refactor large parts of our code due to new requirements, for example caused by a new hardware architecture.

User avatar
ssilk
Global Moderator
Global Moderator
Posts: 12888
Joined: Tue Apr 16, 2013 10:35 pm
Contact:

Re: Apple x86 is dead - are there plans for Factorio ARM64?

Post by ssilk »

Wube searches for Apple (and Linux) devs.
https://factorio.com/blog/post/fff-365

(Nothing on the Website) Perhaps not actively enough. :)

Because if Factorio would work on iPad/new MacBooks ... completely underestimated market.
Cool suggestion: Eatable MOUSE-pointers.
Have you used the Advanced Search today?
Need help, question? FAQ - Wiki - Forum help
I still like small signatures...

rinsuki
Manual Inserter
Manual Inserter
Posts: 1
Joined: Sat Mar 23, 2019 4:24 am
Contact:

Re: Apple x86 is dead - are there plans for Factorio ARM64?

Post by rinsuki »

Hi, now Factorio is ported to Nintendo Switch (with multiplayer compatibility!) which uses same AArch64 architecture, so I think devs can more easily to port to ARM Mac now, because AArch64-specific issues are (hopefully) fixed in work for Nintendo Switch port.

I can't wait to play Factorio without Rosetta on my M1 Mac <3

Koub
Global Moderator
Global Moderator
Posts: 7175
Joined: Fri May 30, 2014 8:54 am
Contact:

Re: Apple x86 is dead - are there plans for Factorio ARM64?

Post by Koub »

Twinsen wrote:
Fri Sep 23, 2022 12:55 pm
[...]
There's no plans for more releases on ARM as I don't think there's that much demand, but it's something that is now more likely to come in the future as it becomes more popular. Just because the game compiles on one ARM platform, it doesn't mean it will just work on all of them. Adding a new platform comes with a lot of work, such as creating a possibly complex build script, setting up a build server, setting up a test server, setting up distribution(website, steam, more?) and dealing with maintaining everything for the whole time(e.g. updating the build script when we change to a newer C++ standard, fixing any compilation issues that arise because of different compilers). On top of that, is we are talking about Mac, add the whole notarization, signing and whatever else they need and change all the time. There needs to be someone dedicated to making it happen and maintaining it.
Koub - Please consider English is not my native language.

asheiduk
Long Handed Inserter
Long Handed Inserter
Posts: 73
Joined: Sat Dec 05, 2020 9:46 am
Contact:

Re: Apple x86 is dead - are there plans for Factorio ARM64?

Post by asheiduk »

I don't understand that: Mac@@x64 is actually supported. That should include most of the notarization, build scripts, ... So the jump to Mac@arm doesn't seem so far when ARM is already supported too.

User avatar
ptx0
Smart Inserter
Smart Inserter
Posts: 1507
Joined: Wed Jan 01, 2020 7:16 pm
Contact:

Re: Apple x86 is dead - are there plans for Factorio ARM64?

Post by ptx0 »

asheiduk wrote:
Fri Sep 23, 2022 8:35 pm
I don't understand that: Mac@@x64 is actually supported. That should include most of the notarization, build scripts, ... So the jump to Mac@arm doesn't seem so far when ARM is already supported too.
that's a pretty good point. do anyone at Wube have an M1 system to dev on? need one donated?

Koub
Global Moderator
Global Moderator
Posts: 7175
Joined: Fri May 30, 2014 8:54 am
Contact:

Re: Apple x86 is dead - are there plans for Factorio ARM64?

Post by Koub »

ptx0 wrote:
Fri Sep 23, 2022 10:27 pm
asheiduk wrote:
Fri Sep 23, 2022 8:35 pm
I don't understand that: Mac@@x64 is actually supported. That should include most of the notarization, build scripts, ... So the jump to Mac@arm doesn't seem so far when ARM is already supported too.
that's a pretty good point. do anyone at Wube have an M1 system to dev on? need one donated?
I think buying a M1 system to dev on, including all the eventual licensing stuff shouldn't be an issue for a studio like Wube. Factorio has been successful enough so far. I think they are lacking the Mac specialist(s) to do more than the bare minimum. I remember reading several times in past FFFs that they were trying to hire such MacOS system specialists. That might have changed, it was 3-4 years ago maybe.
Koub - Please consider English is not my native language.

Post Reply

Return to “General discussion”