Future of Rhino - ARM you ready to Jump?


#1

hi there, this is your personal al-ARM CLOCK RINGING!!!

I dont want to make it too complicated, so please read up on the specifics, I will try to briefly sum up what its about, or at least what I believe to know about it and If I am obviously wrong of have twisted facts somewhere dont be shy and speak up, the following should function as a mere discussion opener, meaning be welcomed to share your thoughts and ideas.


Some of you may already have heard, read seen and experienced that companies like Intel or AMD are naturally not the only producer of processing power. While Intel and AMD still have the market lead, they in fact are already touching the physical limits of what is possible to achieve.

Now there is a very relevant competitor on the market which due to its uniquely designed low power consumption in deed is heading to take over the world. And no I am not talking about quantum processors but the RISC based architecture which has sneaked its way aside of all spot light towards the tip of the industry.

Apple has jumped that train quite a while ago and under the ARM license is using their own derivation of it, if I may call it so, which´s results you can see in the newer iphones, ipads and even found its way into the new Mac Mini as a T2 chip.

The performance of the ARM processors is, if fed with natively programmed applications, pretty on par with its bigger brothers, with the significant difference that these will not overheat as pointed out, use far less energy and have plenty of room to further expand their potential.

Because Intel`s processors are running so hot and Intel not actually doing anything serious about it other than throwing another bigger more energy wasting monster into the market, which has to be throttled on all ends not to burn out, Apple according to rumours will probably very likely toss the hot devil aboard very soon and is probably right now screwing around to equip the hopefully soon coming Mac Pro with it or at least the newer generation of their laptops.

Even though this all may sound pretty far fetched and speculative, Apple is definitely not the only one to call it quits with Intel. Also Microsoft is already heading towards ARM, which very soon may lead to a EOL of the world as we know it.

While as pointed out above these processors need to be fed with native code to peak their performance, it is of course possible to emulate the environment, which on the other side unfortunately will lead to serious impacts in performance. So in order for us to further and properly use applications like Rhino, the code obviously has to be completely adapted and I am not only talking about macOS but also about Microsoft Windows.

Now facing this verge and maybe even sudden abyss of change, my big question to the McNeel developers out here and not only to those, but basically do anybody developing software for the computer ->

  • ARM you ready to jump?

#2

I’m sure this would be a great boon to literally tens of Rhino users doing stuff completely removed from how the product is normally used.

Interactive content creation is inherently NOT parallelizable except for very specific tasks–correction: very specific steps in the task–like rendering for which GPUs have already basically taken over.


(Toshe Andonov) #3

I’ve been following the development of bringing Windows to ARM [Windows “fan-boy” - kill me], and I’d say that even tho it seems it’s already here, I think we have to wait a bit more to run Rhino [or any other similar software for that matter] on ARM in it’s full capacity.

I’d say that we will sooner start working on the cloud on emulated machines, streamed to an ARM based Windows machine, than have these heavy software packages run locally on ARM.


Oh yea, I forgot. Windows is already preparing X-Cloud for X-Box 2. Apparently we will see it sometime in 2019. Apparently what they are doing is streaming games from the cloud without latency.
If you can play Call of Duty at 60fps without any latency, I think you will be able to stream Rhino without any problems from the cloud.

The cloud is the future imo. We will rent processing power, do what we want to do and stream it to our devices locally.


(Marlin Prowell) #4

Switching CPU architectures is not a difficult process for a modern user application. Applications are written to an operating system ecosystem, like Windows or MacOS, not to a CPU architecture. Before a new CPU architecture can be introduced, the operating system has to be first converted to use the new architecture.

A great deal of work is first done by the OS vendors (Microsoft or Apple) to prepare for a new CPU. Once that work is done can end user software developers port their software to the new CPU platform. Windows has run on several CPU architectures - Intel X86, ARM, and Itanium. MacOS previously ran on PowerPC chips and now runs on Intel X86.

When Mac Rhino was first released as a WIP, it ran on PowerPC Apple computers. When Apple later made the transition to Intel X86 CPUs, Mac applications contained two versions of the application code - one that ran on PowerPC chips and the other that ran on Intel chips. When the application was started, the OS picked the application version appropriate for the host computer.

So the core Rhino code has already been through CPU architecture changes. All of Rhino’s code is written in high level languages that are translated into CPU specific instruction by operating system tools, so there is very little in Rhino that is dependent on the CPU. There was a little work necessary to adapt to the PowerPC architecture for the first Mac version, but this was very small compared to the effort that Microsoft or Apple must do to create a stable and robust OS platform.


(Nathan 'jesterKing' Letwory) #5

I don’t see a proper desktop PC with ARMs around. Yes, there are all the raspberry pis, Pine64As and a gazillion mobile devices, but those are still not comparable to PCs in power nor extensibility (RAM, GPUs, peripherals, etc)

I don’t see really an ARM-revolution coming to the desktop anytime soon. If you have good information on ARM desktop PCs please do share.


(Mark Leichliter) #6

My 2018 iPad Pro bests my 2017 MacBook Pro in both single- and multi-core performance. Those of us with physical issues exacerbated by traditional computing workflows would reward CAD and other professional software developers who embrace these new platforms with our dollars.


(Nathan 'jesterKing' Letwory) #7

Sure, but I don’t count the MacBook Pro nor tablets under desktop PC -type. I noted extensibility as one of the requirements.

I’m fine with anything on top that can help with non-traditional workflows.

My phone also is quite powerful with an 8-core ARM processor @ 2300 MHz, but with only 4GB of slow RAM and a rather underpowered GPU (Mali T-880 MP4) - and no way to change those features like a desktop PC - it leaves me desiring quite a bit.

I also have three Raspberry Pi -devices. But all of these great ARM devices I use to VNC into my Windows machine where the real power is. I wouldn’t want to burn the mobile ARM devices with just switching to Raytraced.

Whenever there is a proper ARM desktop alternative you can color me interested though.


#8

Prognosticators driven by new wave of ARM propaganda floating around internet lately. Who’s behind it…for what purpose???


#9

I think Rhino 5 32bit version may be run on Windows 10 for arm version at Qualcomm snapdragon 850


#10

ARM collusion?

// Rolf


#11

Thanks @marlin for qualifying the seriousness of this topic, you make it sound very much like nobody has to worry too much. But I still have to think about all the plugin developers which would have to jump the changes, is the same true for those? Would a transition be smooth for everybody without weeks, months of work and not to say the least would it be possible at all for everybody?

Also there are still differences in the mac and the windows version specifically in some plugins (also grasshopper) which do not work at all, could ARM maybe once again serve to better the situation for a more common basis if both Windows and macOS switched?

One important idea pointed out by @markleichliter is that the performance of current tablets is probably pretty underrated, meaning that they already would have power enough, but not everybody is taking that serious -> here my question would be, if all that ARM babbles become “true” or lets say more apparent for everybody, would it not be a good move to get Rhino intersequentially onto portable devices? We now have iRhino for iOS, but thats just plain for presenting or visually analysing models.

If or when desktop computers start switching more to ARM (note that @l1407 pointed out one possible solution already) then this could hopefully act as a pivot point for growing ALL devices closer together giving McNeel for the sake of Rhino, the opportunity to facilitate good and convenient, portable hardware.

I personally got interested in this topic because I am waiting to buy a new computer for a long time. My hardware is soon 10 years old and switching has an acute statues for a while, still I was always hesitant because nothing seemed to fit, always too pricy always too slow always too hot. I considered buying a MacPro and almost bought the new generation of MacMini, but all these have heat and therefor performance issues, so I am still waiting. I even considered jumping the system back to windows again, but that either is bound to the same hot hardware.

Right now I have a laptop at the side of my 32 in monitor which bravely is ticking its numbers, I would not mind replacing it entirely by a tablet which can do it all. There is not much difference for me what is pumping the software onto the screen. This is with one exception, I would like to keep my data with me not sending it into the clouds as @ANDhitecture pointed out. The idea seems interesting, but sending even though encrypted, delicate data up and down the stream ( or even keeping the data externally in the cloud) while additionally polluting the already stuffed environment with more waves and data trash? Hmm…

Thanks to everybody for contributing your knowledge, thoughts, doubts and considerations.


#12

Yes please :+1:

Philip


#13

???


(Jeremy) #14

Would many people prefer Rhino development effort to be diverted into porting to a new OS instead of getting through the backlog of Rhino 6 issues, bringing Rhino for Mac closer to Rhino 6 and developing Rhino 7?

Is there any significant market for portable devices (even more portable than laptops presumably) that would be big enough to cover McNeel’s costs?

Why do it if you can use a remote desktop app from your portable to run Rhino on your powerful workstation anyway?

Of course, if anyone really wants to run Rhino on a tablet they can already buy a Surface and see how well a tablet serves them…


#15

Well that just one more bad decision apple has make in the last few years…Personally I wouldn’t waste my time developing any 3d software for Mac their hardware is not even in the top 20 of laptops or desktops you should buy for those types of professions…And the market is reacting very badly for their policies… Also I don’t swallow that idea that portable is the future…For me AI is the future and that makes portable devices very unpractical, maybe by using the cloud…But I prefer to give up portability instead of paying for a service (“cloud software”) that use to be a product(“software”).


#16

Except that, historically speaking, in some ways and at some level, Apple leads and the rest follow.

Without owning a single Apple product, like it or not, you likely possess remnets of that historical trend, regardless of whether Apple created such, or borrowed/acquired ‘it’ from another entity.

Could this trend cease going forward? Certainly. They came close to death once before under the ‘Suits’ (no one there wears suits any more :wink: )

Could Steve Jobs head be frozen, in waiting for the right moment to thaw it out and connect it to some future AI beast which leads Apple through some ensuing ARM wave? Anything is possible. The future is bright!


(David Rutten) #17

I could run my Acorn RISCOS machine all day without the strongarm proc getting appreciably warm. Didn’t have an internal floating point unit back then, but I guess these days they do.

When it comes to .NET code (which is an ever growing portion of Rhino code) it gets compiled on the user machine, targeted at the user hardware. So as soon as the .NET framework supports ARM processors, all .NET code will just run on those, without even the need to update anything.


#18

Thank you David for the brief feedback. It really sounds like it is almost worth ignoring, but just for the sake of the codephobic out here and to those who are depending on plugins and also just to be sure -> will that simple not “doing anything” procedure make use of the advantages of the ARM? As pointed out ARM would probably swallow anything, but will that also perform?

If so that would be good news and I would really welcome a paradigm change in the processor industry and if nothing big if at all would stand across of this happening then hey why not and happy new year guys.


#19

A bit of context



(David Rutten) #20

Like @marlin said, unless you write code which specifically targets a processor (which almost nobody does) it really doesn’t matter. The people who have to pay attention to this stuff are compiler and system developers, not people writing application code.