Live data from Hacker News

Ask HN: Running production server on M1 mini?

news.ycombinator.com

41–50 of 65 posts

Re: Ask HN: Running production server on M1 mini?

#43
post #3

don’t ask me how _You_ should be asking you how - there are lots of reasons why this could be happening and knowing which one is important if you're changing stuff. Based on a "highly parallelizable" application performing better on 8 cores than 32, I'd guess you're running out of something else: memory or disk bandwidth.

If his application is running better on 8 instead of 32, that reeks to me of a dependency on single-core performance somewhere. An example of this would be Minecraft, which performs worse on heavily-multi core systems compared to a few fast cores (like M1).

Also Dwarf Fortress, which runs tons of simulations but is a single-threaded 32bit application, which makes multithreaded performance and RAM beyond ~2GB meaningless.

Re: Ask HN: Running production server on M1 mini?

#44
post #33

Earlier quoted context omitted.

> No currently offered M1 Mini has redundant fail-over power or storage. It's kind of funny, but an M1 MacBook does. In fact it comes with a solid >12 hour UPS built-in.

I assume you are just talking about the battery, which I suppose is sorta a built-in UPS though I've never heard it referred to as such!

I’ve explicitly considered laptop batteries as UPS’s before in designing certain systems.

Re: Ask HN: Running production server on M1 mini?

#45

Feels like your provisioned disk or IOPS could be the missing factor instead of core counts.

We do not do any disk operations at all

Ohkk, just see how the network stats on both setups are. How are you testing the remote env? Is the traffic from local env or same cloud env?

Re: Ask HN: Running production server on M1 mini?

#46
post #6

If you do not understand why your performance profile is as it is, how do you know next week's patch won't make it perform better on AMD machines suddenly? You should understand your problem before you solve it.

I don’t think any amount of historical or present-state analysis will shed light on next week’s patch. That being said, it would prepare one to better analyze next week’s patch,

If you know how your application performs and why, you are well equipped for estimating potential impact of patches and hardware. Obviously you still need to profile. In any case complete ignorance should not be the accepted approach.

Re: Ask HN: Running production server on M1 mini?

#47
No personal experience other than a slightly different experience running production services (involving money!) on another box without ECC DRAM (to save money!) and experiencing random permission flags flips and actual balance/amount flips. Only a small handful over many years, but it does happen, and when it matters, it REALLY matters.

My advice is to always use ECC DRAM in production unless you're serving cat photos, porn, social media posts, or other societally useless applications. For anything that actually matters, please use ECC.

Re: Ask HN: Running production server on M1 mini?

#48
post #3

don’t ask me how _You_ should be asking you how - there are lots of reasons why this could be happening and knowing which one is important if you're changing stuff. Based on a "highly parallelizable" application performing better on 8 cores than 32, I'd guess you're running out of something else: memory or disk bandwidth.

It does not consume much memory but do lots of allocations/deallocations. No disc operations whatsoever.

As others have noted this sounds like a contention issue that you should fix by not allocating in your hot path if at all possible. The easiest fix would probably be to try to switch out your global allocator for something like https://github.com/gnzlbg/jemallocator and see if that doesn't give you a nice performance boost.

Re: Ask HN: Running production server on M1 mini?

#49
post #48

Earlier quoted context omitted.

It does not consume much memory but do lots of allocations/deallocations. No disc operations whatsoever.

As others have noted this sounds like a contention issue that you should fix by not allocating in your hot path if at all possible. The easiest fix would probably be to try to switch out your global allocator for something like https://github.com/gnzlbg/jemallocator and see if that doesn't give you a nice performance boost.

Hmm, yes we are already using jemallocator actually

Re: Ask HN: Running production server on M1 mini?

#50
post #47

No personal experience other than a slightly different experience running production services (involving money!) on another box without ECC DRAM (to save money!) and experiencing random permission flags flips and actual balance/amount flips. Only a small handful over many years, but it does happen, and when it matters, it REALLY matters. My advice is to always use ECC DRAM in production unless you're serving cat phot…

Yes this is one concern. Are you sure it was a result of using non ECC mem and how did you find out it was because of that?
Post reply on HN