Good morning!
I’m looking to purchase a M1 Pro or Max MacBook Pro. Reviews are all about video editing or everyday use, which helps me to a point. Has anyone given the machines much thought or put one to work on intensive compute?
I’m currently looking at a Pro chip, 32GB, 1TB and hope to use it for intensive computation (generating large primes, taking the sums of large arrays) to create images/videos similar to the lovely Mandelbrot (only doing much more math per pixel).
I’m willing to pay more for more, but I suspect these will do me little good. Any thoughts come to mind?
Thanks!
Bump… I would also love to hear people’s thought about this.
In particular,
- What is the feeling for a timeline for Tier 1 native Julia support for M1 Pro chips?
- What is the feeling for a timeline for Julia Metal library and/or other support for M1 GPUs?
Are you just wanting advice on whether to get the M1 Pro or M1 Max? Are there other products you’d consider?
If you’re just comparing the M1 Pro to the M1 Max, I doubt the Max is worth the upgrade. It’s really only for if the GPU performance is very important to you, or if you really really really need 64 GB of ram and are willing to pay big bucks for it.
They are laptops, very good laptops, but still only laptops. You should buy one if you are sure your use case is satisfied by one, or you have a lot of money.
For intensive computation I would suggest buying CPU/GPU time from a cloud provider.
Btw, I believe I feel your pain with the old MBP. I used a mid-2012 13" MBP until I bought a new 13" at the beginning of 2020. (I was waiting for the awful keyboards to go away, which they did.) This one is slightly old already, but I don’t really care, it works fine.
I guess I just want to update from my 2017 MBP as it’s a bit old.
I use a lot of Julia and run small simulations on my laptop (anything less than 1h) and have also access to cluster for bigger jobs.
I have three vague/general questions:
-
My expectation is that new MBP M1 Pro/Max vs 2017 Intel MBP will have comparable performance in Julia per processor and will be significantly faster for multithreaded jobs since it has many more processors. Does this sound right?
-
I am aware of Rosetta and that it is seems to work fine but I wonder if it is clear if there’s a penalty for using Rosetta vs native Julia which seems to not have Tier 1 support yet (I realize that this is perhaps same as questions 1))?
-
As a bonus, I wonder if it’ll be possible to use all those GPUs in M1 Pro/Max for calculations in Julia anytime soon? I realize that for serious GPU work I can/should use a cluster and I will but those GPUs are there so I’m just itchy to use them somehow:)
Yes, I’m deciding between the Pro and Max. I’m not really looking at other products. The one thing that makes me think Max is it’s got twice the memory bandwidth, and as my code calls for building giant arrays, that might be a pretty nice to have. The GPUs… I wish I’d be able to program them for compute, but I suspect the likelihood of that is small. The ram would be a nice to have.
I’m currently using a Linux 16-core (AMD 5950x) for my heavy lifting compute. It runs pretty much 24/7 with 15 cores (I’d love to make that cloud compute, but it turns out to be pretty expensive - or at least used to be.)
Until this summer, my MacBook was the newest computer - the 16-core machine displaced a small fleet of old Mac Pro towers.
- Sounds right to me, 2. no idea, 3. the very thing that makes me worry I’ll buy to little.
Your suggestion for cloud compute has been sitting with me. I don’t do the heavy lift computing on the laptop, but on my Linux machine and to replace that would be too expensive. However, the laptop work will be far more sporadic… I’ll explore JuliaHub etc. Thanks.
As far as I know, the benefits of M1 Max are that it’s a LOT faster in ProRes video encoding/decoding, and you can get 64 GB RAM on it. And a few more cores. Do you need any of these?
I think that the M1 Max bandwidth is doubled (200->400GB/s)
I think bandwidth would be the major reason to go Max. My code makes huge arrays for processing over and over again. I suspect the bandwidth would make a big difference.
I don’t use ProRes, 64 GB would be a nice to have. I wonder if it’s the bandwidth that accelerates ProRes?
And as far as those cores… I only want them if I could program them, but I think that would be a lot of effort.
From what I’ve heard, the extra bandwidth isn’t really available to the CPU, but can only be fully utilized by the GPU. Again, this is basically for video workflows. I had a brief moment of buyer’s remorse after ordering the M1 Pro immediately after the keynote without realizing the bandwidth difference, but that quickly dissipated after finding out that for my CPU-centric workflows, the Max wouldn’t have really given me any significant benefit. Having the device now for a couple of weeks I can report that I’m perfectly happy with it except for some small rough edges that will be fixed in the next Julia release.
Edit: One source is Huge Memory Bandwidth, but not for every Block - Apple's M1 Pro, M1 Max SoCs Investigated: New Performance and Efficiency Heights
Now THAT is interesting. Do you think it could it be an early release BIOS/Firmware/whatever issue that will be resolved in a month or two?
I think it has to do with how the memory access bus is wired on the chip. There’s just not enough direct lanes going to the CPU. So I wouldn’t think that this will change with any updates
Sure seems like the Pro is the best way for me. Out of curiosity, how much RAM and SSD did you opt for?
I got 32GB RAM and 1TB SSD
Is the high refresh rate display useful?