Hacker News new | past | comments | ask | show | jobs | submit login

Does it feel like it took surprisingly long to port it?



I expect Photoshop to contain many highly optimized function routines for photo processing. These routines are optimized by hand and usually use architecture-specific features such as SSE/AVX which is not portable.

Unoptimized (more portable) versions of theses routines exists, but I suspect they will perform well even with M1.


Indeed. It's why Photoshop for Mac won't run an Ryzen systems - it's optimised to the point where it relies on specific Intel CPU instructions.


Kinda a cool benefit of having a Mac. Serious optimisations by developers.


The windows one likely have them, except they have the codepaths for all processors.


Yeah, restricting the hardware your software can run on is super cool!


This happens in Linux apps as well. Vendors like Discrete will have restrictions on what kernel version, which distro, what hardware that is really no different. With a Mac, you just don't have a choice on the hardware to install. On Linux, you have a choice, but only from the 2 options listed and you have to build it yourself.


>I expect Photoshop to contain many highly optimized function routines

Ah, I see you have never had the pleasure of using it.

Sarcasm aside, the whole Adobe suite makes atrocious use of your machines actual power, most is still single core. My machine can simulate the entire virtualized interactions of simulated light photons on glass on multiple GPUs in the time it takes photoshop to encode a GIF.

and you think "well maybe encoding the gif is more work?" yet try any GIF encoder written in pure Javascript and they still outperform Photoshop and also the 3D render.


> architecture-specific features such as SSE/AVX which is not portable.

I don’t have hands-on experience, but somewhere on HN I saw this: https://github.com/simd-everywhere/simde If starting a new cross-platform project today, I would try that library first, before doing the usual intrinsics.


This is probably true. But afaik photoshop allready ran on ios. So I would have expected it to take a couple of weeks at most.


A QA cycle probably takes 2 weeks.


I'd imagine that they would have been cautious with highly cpu tuned instruction flow after the PPC->intel migration.


I'd expect them to have moved on from hand assembly to things like halide-lang.org/ by now.


Not at all. I'm surprised they got it done so fast. They're previous big product updates in response to Apple hardware releases have taken way longer.


I’d have to imagine some of the work they’ve done to make iOS apps, and the work they started to make a Windows on ARM version of Photoshop helped a bit.


Nope, they've been kicking and screaming a verrry long time for the PPC -> intel migration, with a lot of people legitimating it due to hand optimized PPC code


Not really. I would expect a lot of number-crunching stuff, that's not easily portable.

For example, SciPy/NumPy/R is not ported to M1 for similar reason.

Well, just similar, they depend on FORTRAN of all things, and that does not have M1 compiler. Maybe Photoshop stuff does too?


Scipy, Numpy, and R all work on an M1 Mac if compiled to do so.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: