CNMAT / CNMAT-odot

Multi-paradigm Dynamic Programming
Other
114 stars 11 forks source link

odot not working on Mac M1 chips #427

Closed jrmylee closed 2 years ago

jrmylee commented 2 years ago

Are there any plans to add support for M1 chips(ARM architecture)? Is there anything I could do to work on adding support?

wagne342 commented 2 years ago

@jrmylee I am aware that a stable build is currently in the works. Could be any day now. @maccallum We have a small but growing set of users with M1 hardware and I have recruited them as an odot Beta-testing working group at CNMAT.

puchifilou commented 2 years ago

+1 for this request. @wagne342 Me and my colleagues at TripinLab are working on a project (spatial audio interoperability) making an extensive use of the odot library. We're about to spend an all week crash testing our solutions and we'll be able to put our hands on some M1 macbook pros. We would like to be able to make some compatibility tests on those machines as well. If it's not too late, would it be possible to include us in the beta testing group? Best regards.

maccallum commented 2 years ago

I just put a prerelease build for M1 here: https://github.com/CNMAT/CNMAT-odot/releases/tag/untagged-b6a32387e96c9dc3c775

I don't have a machine to test on myself, so if others can check this, I'd appreciate it.

puchifilou commented 2 years ago

Hello @maccallum It seems the link is broken.I get a 404 error. If you could check the link, we are starting our testing sessions, so I could check all this right now and give you some results before the end of the day :)

maccallum commented 2 years ago

Ah, sorry about that--I hadn't made it public. Try this link: https://github.com/CNMAT/CNMAT-odot/releases/tag/1.3.1-rc.1. Thanks for testing @puchifilou !

puchifilou commented 2 years ago

My pleasure @maccallum :) I'll come back later today with our first feelings ...

puchifilou commented 2 years ago

@maccallum All we could do today was copying our patchs on the M1 machine and try to start them. We were unable to make them work as we got an error message saying that the o.atomize object was compiled with the wrong architecture. Could you check that this object was successfully compiled with the M1 target? Best regards,

jrmylee commented 2 years ago

Hey all,

I started using 1.3.0-5 on the M1 Max. Able to use my existing patches after some shallow testing, will continue to report findings. If anyone has any patches they want me to quickly test, please send them my way.

Jeremy Lee

On Tue, Nov 23, 2021 at 2:53 PM Philippe ROGER @.***> wrote:

@maccallum https://github.com/maccallum All we could do today was copying our patchs on the M1 machine and try to start them. We were unable to make them work as we got an error message saying that the o.atomize object was compiled with the wrong architecture. Could you check that this object was successfully compiled with the M1 target? Best regards,

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/CNMAT/CNMAT-odot/issues/427#issuecomment-977200462, or unsubscribe https://github.com/notifications/unsubscribe-auth/AEMUVVMFMM32VZIP2QLN5M3UNQEOLANCNFSM5H64JIDA .

wagne342 commented 2 years ago

@jrmylee Can you go to Max > Extras > odot > o.overview and open each of the help patches there and report any unstable behavior? It seems there are reports of o.atomize not being compiled for -arm64 architecture (see max window). Can you confirm?

maccallum commented 2 years ago

@jrmylee that's great! Please do what @wagne342 wrote and pop open the o.overview patch to make sure all the objects load properly.

There's something potentially confusing--I see that the release I posted prints 1.3.0-5 to the Max console. That's just a mistake--I uploaded another build to the same Github release page that's exactly the same, except it prints the correct version: 1.3.1-rc.1.

@puchifilou is there any chance you've got another version on that machine that Max is trying to load? Could you triple-check that you got the right one from Github? If you have the developer's tools installed, you can also check the architecture(s) by opening the Terminal and typing

lipo -info path/to/odot/externals/o.atomize.mxo/Contents/MacOS/o.atomize.

On my machine, I get this:

% lipo -info ../externals/o.atomize.mxo/Contents/MacOS/o.atomize
Architectures in the fat file: ../externals/o.atomize.mxo/Contents/MacOS/o.atomize are: x86_64 arm64
jrmylee commented 2 years ago

Hi John,

Here are the objects that don't load properly when I open o.overview.

Happy thanksgiving,

Jeremy

[image: Screen Shot 2021-11-25 at 2.10.05 PM.png]

On Wed, Nov 24, 2021 at 4:37 AM John MacCallum @.***> wrote:

@jrmylee https://github.com/jrmylee that's great! Please do what @wagne342 https://github.com/wagne342 wrote and pop open the o.overview patch to make sure all the objects load properly.

There's something potentially confusing--I see that the release I posted prints 1.3.0-5 to the Max console. That's just a mistake--I uploaded another build to the same Github release page that's exactly the same, except it prints the correct version: 1.3.1-rc.1.

@puchifilou https://github.com/puchifilou is there any chance you've got another version on that machine that Max is trying to load? Could you triple-check that you got the right one from Github? If you have the developer's tools installed, you can also check the architecture(s) by opening the Terminal and typing lipo -info path/to/odot/externals/o.atomize.mxo/Contents/MacOS/o.atomize. On my machine, I get this:

% lipo -info ../externals/o.atomize.mxo/Contents/MacOS/o.atomize Architectures in the fat file: ../externals/o.atomize.mxo/Contents/MacOS/o.atomize are: x86_64 arm64

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/CNMAT/CNMAT-odot/issues/427#issuecomment-977701164, or unsubscribe https://github.com/notifications/unsubscribe-auth/AEMUVVLFC2JHW3HOHHE37LLUNSW55ANCNFSM5H64JIDA .

puchifilou commented 2 years ago

Hello everyone,

@maccallum I had a closer look today the Macbook Air M1 and you were right, there was another copy of o.atomize on the drive. Everything is back in order now. We managed to launch our patches successfully. We haven't noticed any strange behavior for the moment and no more errors / warnings. We'll keep on testing for a few days and we'll keep you posted...

maccallum commented 2 years ago

@puchifilou that's great to hear! Glad it's working.

@jrmylee that image didn't come through. If there are any objects that aren't loading properly, can you try the image again or list them here?

Happy Thanksgiving!

jrmylee commented 2 years ago

Hey John,

Actually just realized those were the deprecated/dev objects. Everything that should be load is loading fine :)

Jeremy

On Fri, Nov 26, 2021 at 4:11 AM John MacCallum @.***> wrote:

@puchifilou https://github.com/puchifilou that's great to hear! Glad it's working.

@jrmylee https://github.com/jrmylee that image didn't come through. If there are any objects that aren't loading properly, can you try the image again or list them here?

Happy Thanksgiving!

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/CNMAT/CNMAT-odot/issues/427#issuecomment-979807390, or unsubscribe https://github.com/notifications/unsubscribe-auth/AEMUVVPNAHIKA3CLQNPNS53UN5FKXANCNFSM5H64JIDA .

maccallum commented 2 years ago

Thanks @jrmylee, @puchifilou, and @wagne342! I'll go ahead and close this, but reopen it or start a new issue if other problems on M1 show up.

I'll put a 1.3.1 release up as soon as #428 is resolved.