Behind the Scenes: I just ran Isadora natively on an Apple Silicon M1 ;-)


  • Dear All,

    So today, the universe gave me a nice New Year's Gift: I succeeded in compiling and running Isadora on a mini Mac with an Apple Silicon / M1 ARM chip. I started it up, played some movies, took in some live video, adjusted some things in IzzyMap and the Stage Setup window, and it all looked good.;-)

    Now, before you all go asking WHEN WILL IT COME OUT!!! please keep in mind that these crucial third party libraries -- over which we have no control -- do not have ARM versions:

    • NDI (Seemingly no roadmap announced yet)
    • None of the systems that we use to implement licensing (i.e., the online, USB key, and Sassafras versions)

    Without M1 versions for all of those, we obviously cannot release Isadora for ARM.

    That said, it was promising that I was able to recompile for ARM so easily. Please note that I literally got this working one hour ago, so I have nothing yet to say about performance.

    We will be contacting the creators of the drivers above to find out when they plan to get an Apple Silicon version out and start to make a plan for a release.

    Best Wishes,
    Mark


  • Yummy! Thanks for sharing your efforts -  John

  • Beta Platinum

    @mark

    Thanks for the bright note about Isadora running native on Apple Silicon M1. I would be interested to hear an assessment of performance and about ongoing compatibility, as we know one of the strengths of Isadora has been being able to extend and connect to many other platforms, softwares and devices.

    Best wishes,

    Russell 


  • @bonemap said:

    and about ongoing compatibility

    Not sure what you mean about ongoing compatibility. Can you elaborate?

    Best Wishes,
    Mark

  • Beta Platinum

    @mark

    I mean compatibility with things like OpenNi depth cameras, Artnet, DMX, Javascript, GLSL, serial devices and any other devices and systems that might be disrupted by lagging compatibility with Apple.

    Best Wishes 

    Russell


  • @bonemap said:

    I mean compatibility with things like OpenNi depth cameras, Artnet, DMX, Javascript, GLSL, serial devices and any other devices and systems that might be disrupted by lagging compatibility with Apple.

    Of these, only the skeleton tracking OpenNI system should be affected, because that subsystems of OpenNI cannot be recompiled for Apple Silicon. (Receiving aa depth map reception should, in theory, still work.) But really I want to find an AI empowered replacements for that technology anyway.

    Everything else you mention is either C++ code that can be recompiled for Apple Silicon, or subsystems that will work the same way under that the new chip (e.g., serial communications.)

    Best Wishes,
    Mark

  • Beta Platinum

    @mark

    Hi Mark,

    Thanks for the insight.

    Best wishes

    Russell 

  • Beta Gold

    @mark

    Wow.

    What about performances, MarK I don't want to take a lot of time from you but did you see some performance boosts as everyone says ?


  • @armando said:

    I don't want to take a lot of time from you but did you see some performance boosts as everyone says ?

    I just got Isadora to work on the M1 two days ago, so I cannot say yet. I'm still dealing with stuff like getting all the plugins to compile.

    That said, we're a quick and dirty comparison: playing 4 x Apple Pro Res 422 1920x1080. Here are the results from activity monitor. (Remember, you can have CPU usage higher than 100% for the individual component measurements below because of multiple cores.)

    Mac Book Pro i7:

    • Isadora CPU Usage: 42%
    • Background Movie Player CPU Usage: 20%
    • Apple Pro Res Decode Service CPU Usage: 300%
    • Overall System CPU Usage: 32% (User CPU Usage from Activity Monitor)
    • Isadora LOAD indicator: About 2.1%

    Apple miniMac M1:

    • Isadora CPU Usage: 13%
    • Background Movie Player CPU Usage: approx 30%
    • Apple Pro Res Decode Service CPU Usage: approx 200%
    • Overall System CPU Usage: 33% (User CPU Usage from Activity Monitor)
    • Isadora LOAD indicator: About 1.9%

    So while the Intel numbers are a bit higher for the individual components, the overall system usage is about the same. In the end, I don't really know how to evaluate this simple test. Of course, the minMac is 1/4 the price of my Mac Book Pro, so one could argue you're getting equivalent performance for a much lower price.

    For the moment I think it's critical to keep this one limitation in mind: the current M1 devices only support one display output in addition to their main display. I suppose this limitation could be overcome with a Quad Head 2 Go, DataPath FX 4, etc. But in terms of hooking things up directly, that would make it a no go for my own use in performances.

    Finally, I will mention that someone I am acquainted with did a DaVinci Resolve file using 8K raw files and several layers. Then he rendered this out both on an Intel based MacBook Pro and an Apple Silicon M1 based miniMac to compare the results. (DaVinci was running native M1 version on Apple Silicon.)

    Here's what he said: "Finally did a [DaVinci] Resolve speed test. 3840x3840px (ie ~5k) with 20 secondaries. M1 mini = 9:21. 16” MBP intel = 4:33. Over 2x slower! Big disappointment."

    This conflicts with other DaVinci Resolve tests I've seen posted on the web, but this guy is a video editor and I am giving this test some credence.

    I think there is a lot of hype around this chip. Once we can get M1 machines for the team, we can start evaluating performance. But right now I am cautious about the many claims made on the internet about how amazing these chips are.

    Best Wishes,
    Mark

  • Beta Gold

    @mark

    And I had a chance to test the 308 b41 on an M1 (through emulation) and it works too !!!! ;)

    Cheers


  • @armando said:

    And I had a chance to test the 308 b41 on an M1 (through emulation) and it works too !!!! ;)

     Good to hear. But it will be good to use the native version. ;-)

    Best Wishes,
    Mark

  • Beta Platinum

    Excited. Have my eyes on a new basic MacMini M1. Seems to smoke a lot of machines out there...


  • @crystalhorizon said:

    Seems to smoke a lot of machines out there...

    Maybe. Read what I posted above about a film editor's experience regarding performance.

    Best Wishes,
    Mark


  • [EDIT by Mark: Adapters of this kind probably will not work with Isadora, or any OpenGL/Metal enhanced application; see my comments below.]

    Hi everyone !

    I just found this video where an apple M1 owner succeeded to connect 6 displays on a new Mac Mini.

    But be careful, apple M1 devices don't seem to be compatible with eGPU for now, and there are other problems mentioned above.

    Best Wishes.  Clement

  • Beta Gold

    @mark Sure. But it is good news. 


  • @clement said:

    I just found this video where an apple M1 owner succeeded to connect 6 displays on a new Mac Mini.

    Unfortunately, this are USB to HDMI/Display Port adapters. These almost certainly do not support OpenGL, and thus are likely useless for Isadora or any other GPU backed app.

    As it says in this article from 2016 about USB adapters of this kind, "Being able to connect additional displays to a MacBook, MacBook Pro, or MacBook Air sounds fantastic, but it still is important to be aware of the limitations of the technology. The bandwidth provided by USB is insufficient to "fully support" OpenGL 3D hardware acceleration, and as a result, there is a lag time." (emphasis mine.)

    Best Wishes,
    Mark


  • @mark

    Thank you for making a clarification about USB Display adapters, we have to be careful about technology specifications in these times of USB4 release.

    Best whishes.


  • @mark

    Does USB4 change the bandwidth problem?

    Cheers,

    Hugh


  • @citizenjoe said:

    Does USB4 change the bandwidth problem?

    Unlikely. You would need a full GPU on the adapter.

    Best Wishes,
    Mark

  • Tech Staff

    @mark said:

    full GPU on the adapter

     Sounds like a nightmare moving textures back and forth. NO