The rumour mill has been going over drive with the recent leak of products that’ll be getting launched through out this year – I would have thought that the whole COVID-19 situation would have slowed down or postponed the launch of some products but it appears that Apple is charging forward with their plan. It appears that the rumours of ARM based Mac’s are picking up steam (link) (link) which makes me wonder whether we’ll see a ARM based ultrabook with their own custom GPU as part of their A12Z SoC which has 8 cores so it wouldn’t surprise me the MacBook Pro ends up being some sort of A13UB (UB for UltraBook) where it comes with 12 GPU cores then maybe in the MacBook Pro it is upgraded to a 18 or 24 core GPU design with AMD discrete GPU for extra grunt with the CPU being 8 way and maybe SMT thrown in for good luck.

It’ll be interesting to see what happens when it comes to the software side – the closing off of the kernel to third party kernel extensions makes me believe that Apple have a big overhaul of the kernel planned and by kicking third party kernel extensions out they don’t need to worry about backwards compatibility. I couldn’t imagine Apple getting rid of OpenGL support given the number of applications that very much rely on it but I could imagine them getting rid of OpenCL given that it was never adopted on a large scale by developers. There are rumours that Apple might be looking at shipping a 12 core ARM based MacBook SoC (the CPU not GPU) but if that is the case then it’ll require Apple to make changes to macOS to really squeeze the performance out not to mention the fact that some workflows cannot be scaled up in a linear fashion.

I think the big benefit of such a move to their own ARM based SoC is that they can design their components to suite the products rather than relying on a third party who has multiple customers with each of them having their own peculiarities that need addressing. There is also the benefit of being able to have product refreshes based on their own schedule as well rather than tying to squeeze in between AMD when they do their GPU upgrade and then Intel releasing their CPU refreshes. I could imagine Apple long term that Apple will eventually want to become totally self-sufficient when it comes to their GPU design. Having their own GPU design allows them to develop their Metal Framework and GPU in tandem so that both are optimised to peak performance. 

I think the big factor will be getting developers to have a single unified backend that takes advantage of cross platform frameworks such as Metal, Performance Shaders etc. and then constructing front ends that are form factor specific through the use of SwiftUI which I’m sure will become a replacement for Cocoa. TouchUI etc. once it becomes more mature.