M1 Mac Mini vs M1 MacBook Pro Max and Wappler

So I had a Mac Mini M1 for just over a year, it has however been driving me crazy with speed issues, constant video lagging and spinning beach balls. I figure the main cause of the speed issues is that it was only the 8gb RAM version, as in South Africa to be honest it was all the iStore even offered after days of searching for the 16gb version.
Activity monitor was showing that it was using Swap memory all the time as it was running out of RAM, and when doing a deploy in Wappler to my remote DO docker container, it would take about 5 minutes, and beach ball multiple times during the deploy.

Anyway, the other day a massive bunch of power surges over a 10 minute period blew the power supply, so I decided to upgrade to the best I could get, the M1 Max MacBook Pro, with the 10 core CPU, 32 core GPU, but again, no option to get the 64gb RAM version, only the 32gb version is available in South Africa.
I have been running it about 4 days so far, and found that it way way better, however I expected absolutely no lagging with all this power, yet I have still been experiencing lags, quitting docker completely makes everything perfect, however I can not deploy with it quit.

My question is, why do i need docker local open at all if I am deploying directly to the DO server and not using localhost, I understand it needs to be open for local docker machines, but once i move over to the remote server, then is it not possible to allow deploying to the remote without docker local having to be open/running. For now I have reduced docker desktop to 2gb memory from its default 8gb, but even with all this extra RAM I am running at 26gb usage of the 32gb.
Docker takes about 3.1gb itself, and Wappler another 1.59gb, so 4.69gb total.

I am happy to say that after a fresh restart Wappler deploys are about 10 seconds now, with no beachballs, but after I open Mail, Skype, Slack, Google Chrome with a few windows and tabs, Navicat, Forklift, iOsSimulator etc. then working in Wappler starts lagging when opening binding windows, formatters etc. Quitting docker makes it run smooth as can be, the Wappler Helper (Renderer) processes which seems to be one per open document in Wappler also stop saying Not Responding at all, so it really seems like the Docker alternatives Wappler is working on is needed, but I do still wonder why i need docker local open to perform remote deploys, if I didn’t, my lagging issues would be over.

@George, I know you also have the Mac Mini M1 8gb and I think you also upgraded to the M1 Max chip, did you experience similar?

1 Like

Hi @psweb, i have a MacBook Pro M1 with 16gb ram and i work perfectly fine with Docker, Wappler, Navicat Premium, Visual code Studio, Notion, chrome, etc. What you have to do is not only limit the ram usage but also limit the amount of cores it uses.

Here u can find the docker documentation about that.

Btw the latest versions of Navicat I have found that if you keep it open for a long time it starts to get heavier and slows down the machine a bit.

1 Like

I noticed the same with Navicat, gets up to 1gb after about 3 hours on my side, I will reduce the cores from default of 5 and see how it goes.
The only other thing that could be possible is the amount of monitors and size of monitors attached to my setup.
On the Mac Mini I only ran 2 external displays, but large ones, 55" and 43", while on the M1 Max I am using 4 external displays as well as its own built in display to give me 5 in total. 24", 43", 55", 27" and built in 16".

After watching a few youtube videos on screen size vs scaled and non scaled, it seems this can be a performance issue, where unless you hit the native 110ppi or retina 220ppi with a PPI Calcutator here https://www.sven.de/dpi/ you can run into trouble. Here is an article about it, but it was written for a @JonL type character, not a “me” https://bjango.com/articles/macexternaldisplays2/ so this may also be part of why I am hurting such powerful machine.

2 Likes

The external display thing is actually a performance killer.
@nshkrsh has a M1 Air, and it works much better without any external display compared to when using just 1 43" display.
I am also assuming neither of those monitors are actally running on thunderbolt, but using dongles… so that could have an effect too.

As for Docker, I have seen some old posts about Docker Desktop being shit on Mac, but not sure if it still holds true.
As an alternate, you could use Rancher Desktop. I have found it to be much lighter than Docker Desktop.

And you are correct that Docker Desktop does not need to be active for deployment. This is how my actual workflow is.
I have a local NodeJS target which I test on, 1 dev docker target (for some cases when local dev does not suffice), 1 staging docker target and 1 production docker target.
Staging is marked as “staging” and prod is marked as “prod” in target settings. So, when I switch to those targets, Docker does not open up automatically, and I can easily deploy.
But this is Windows, so not sure if same applies to Mac.

1 Like

Thanks for that @sid, and yes you right, the monitors are 3 x HDMI, 1 running natively from the HDMI port, and 1 is Display Port, so in essence 3 of them are using dongles to convert thunderbolt 4 to either HDMI or Display Port.

I am glad you confirmed the Docker part with it not having to be open/running for deploy to a remote machine, I am going to test that more, as I was getting an error yesterday when i tried quitting docker, however I just tried it again and it worked without Docker open, so now I am confused about it. Will have to do some testing and see if I can replicate the error again.

For now though after your confirmation, I can happily say its running great again without docker open. Strange, but I will not look a gift horse in the mouth.

@George, you can happily ignore my question regarding Wappler not deploying remotely if Docker is not open, because now it works. :slight_smile:

Also, in my experience. After using mac air m1 with ext display for about 4+ hrs will slow down the mac as well. And heats it up like crazy as well. Maybe better processors and direct usb c displays will. Do better. But anyways. Am done with mac. It’s productivity killer for my use case. It’s a good machine for light use once in a while but not a primary machine for me.

1 Like

I have been a mac guy for so many years, I still am a believer, but to be honest, i have never tried the MacBook Airs, as I always saw the MacBook Air, Mac Minis and the iMacs as not enough for my needs, but then I changed my mind about the Mac Mini when I saw a company talking about running massive server farms of just Mac Minis, so I tried one, and was pleasantly surprised, considering the iMac and MacBook Air were both more expensive than the Mac Mini.

I used my Mac Mini 2014 for 6 years pretty decently, then got the M1 version and had some issues, but again pushing displays to their limit, and now doing the same with the M1 Max, pushing the displays.
Also, all my displays are the cheepest i could find, as colour was not a huge concern for me, as long as it was monitor clarity, and not TV (used like a monitor), then I got it, just for as much real estate as possible, end enough resolution to fit 2 1920px wide browser windows side by side.

I have to admit though, this M1 Max just really does not seem to like docker, docker has been off about 30 minutes now, and the machine is now flying, and the fans have stopped running, and heat is hardly even registering, no beachballs, no lag, so there must be something more than just RAM that causes such strain.

One day when I am rich I will have to go invest in some thunderbolt monitors I think.

Nice NASA setup man! As a father I know that what makes everything meaningful is that cup in the center that says “I love u daddy” :muscle:.
Regarding the Mac slows down when connecting more monitors I also noticed it, a solution can be to buy an active HDMI hub or Display ports like this https://plugable.com/products/ud-3900pdz, they are not cheap but these devices work very well, at home I was allowed to connect 3 monitors to my MacBook Pro using only one thunderbolt port.

1 Like

Lol, I did not think about the coffee cup, or that it would be legible, haha, yeah kiddies are great… sometimes, when they 20 and over and moved out and just come for visits.

1 Like

Here is the error I got which led me to believe that docker needed to be open. If I restart Wappler 4.9.1 the error continues, however if I open Docker Desktop, the error goes away. @George at least I found the error again.
2022-07-12_22-47-33

1 Like

I’m running Wappler on Mac Intel with Docker Desktop. I have come across the same error. This error comes up when a project is opened that has been deployed to local Docker and, Docker isn’t already running in the background. Wappler is unable to restart the Docker instance automatically and, the Docker app has to be re-started manually for the project to launch correctly.

There’s no need to keep the Docker Desktop Dashboard open, just keep the docker instance running in the background. I’m not sure whether that will make any difference to the CPU usage.

In my case, I can exit the Docker Desktop application completely. Which is the only way to stop it from hogging on resources. The docker process runs automatically when Windows/Wappler starts I think, so haven’t seen the above issue in Windows.

@psweb You can try to open Docker Desktop and then QUIT the app once Wappler is functioning.

The Docker used to restart automatically with Wappler, if not already running. But Docker app stopped restarting automatically after an update of either Wappler or Docker, not sure.

Quitting the Docker app also stops the access on localhost. But if this is not required, then quitting the app will definitely stop the CPU usage.

That is the idea here actually. Run the app via NodeJS localhost:3000 target… then switch to Docker target and hit deploy.
So no need for Docker Desktop to run at all.

I see, didn’t know a local Docker app could be run that way. I will try it out as well :slight_smile:

For me I was working on the project, which is a remote docker project, not local, deploying a few times to DO servers, with Docker quit the entire time, and I mean Docker the desktop app as well as its process called “qemu-system-aarch64” which is the one that takes most of the memory.

I took a little break for about an hour, came back made a small change, tried to remote deploy and the error came up. I restart Wappler, and the error continues, I launch Docker desktop app, which also launches its service, deploy remotely again and it works. If I quit the app and process again the error starts again.

So it seems a bit strange that sometimes it works without docker and its process and other times it does not, secondly, if only working remotely, i wonder if there is a way that Wappler can make it not rely on Docker desktop app and process at all so if only working remotely it can always remain closed. I can currently work remotely with only the process running and the app quit and that works, however the process still seems to cause the speed drop.

Why don’t you try using Rancher Desktop? (sid’s suggestion) It’s drop-in compatible

Not usable for regular dev purposes due to the lack of filesystem events (i.e.: no NodeJS auto-restart upon file changes) on MacOS, but sounds usable for your specific situation since your regular development doesn’t happen on Docker

install_rancher_desktop

1 Like

I am having huge performance issues with the beta.
I’m on intel though.

1 Like

@psweb try with a hail mary. Restart your system in “safe mode”, let it load everything check if the behaviour is the same, then restart normally and see if it’s better.

It’s worked for me in the past. Sometimes macs tend to throttle CPU when there is no need. Restarting in safe mode cleans up a bit the system and might reset some kernel extensions.

When I wrote the post yesterday I noticed that even at 57Âş celsius Wappler was making macOS throttle my cores down to 800 MHz when they are 2,6GHz. I restarted in safe mode and restarted again normal and eveything is back to normal.

1 Like

…nothing to do with the post… but cool monitor setup… wrapped around you… literally drowning in your work…

Ma se gat!!! look at all the boxes of smokes… :slight_smile: :slight_smile: :slight_smile: … well mine is chocolate wrappers and now i look like humpty dumpty ( — we all have our little pleasures to keep us sane! )

oohhh and dont forget your anniversary… i see its marked on your calendar … :slight_smile:

1 Like