Hacker News new | ask | show | jobs
by KaiserPro 4332 days ago
What do you guys use the mac minis for?(I mean whats the compelling function, they must do something amazing to justify the cost and lack of features)

I also notice that you don't appear to have any physical isolation between the hot and cold aisles, is that just for the photos?

6 comments

Having OS X in our stack allows us to tackle a lot of use cases that come out of the prototypical design process. Format support, color profiles, color space conversion, typography, etc. are all mastered in OS X, but lacking in other operating systems. Apple has had the best imaging scientists in the world working for the last 30 years on getting these features right. We want to be able to leverage that expertise, whenever it makes sense, to produce the highest quality image. In this case, the consequence of that decision means racking Macs.
So, what does that all have that isn't covered by, say, ImageMagick, OpenCV, or whatever?
ImageMagick clearly grew up in environments with short lived processes - the command line, php, etc. Run it in a long lived process at your peril, and watch all your memory leak away. I also don't think it makes very good use of available GPUs at all.
So hazarding a guess here - you've written your own services on top of CoreImage, Core Text etc? https://developer.apple.com/library/mac/documentation/macosx...
Interesting. I work in VFX and we only use OSX when when we absolutely have to(read prores).

Interestingly I've found the color handling to be "odd". I'd recommend looking at nuke from the foundry.

It's designed to be fast, scriptable, and handle comically large images. One of the nice things is its multi-platform. you'll not need the GUI, but you'll love the color tools.

The math is well known, and many libraries exist. I bet you could replace the OS X and Mac hardware with more cost effective hardware and software with an engineering effort in the low man years, if not less. Which would presumably pay back pretty quickly.
If it's just OS X you need, and not the overpriced Apple hardware, why not just buy a bunch of OS X licenses and install it on your normal servers (a la Hackintosh)?

It would cost much much less and you would be able to have completely uniform server hardware with faster networking.

Because Apple still doesn't allow that?

That said, I'd love to see a Blade Hackintosh (has it been done?)

Just because it's against their ToS doesn't mean that their ToS is enforceable.

If you purchase a legitimate license to OS X and only use it on personally owned hardware that you keep in your possession (unlike that company that tried to sell Hackintoshes a couple years ago), it's very unlikely that Apple could ever have a legal case against you.

Your interpretation of the law is wrong. "Click-wrap" licenses have been held enforceable for over 15 years. See, e.g., ProCD v. Zeidenberg, 86 F.3d 1447 (7th Cir. 1996).
We're developing a cold aisle containment solution, but it wasn't ready to be photographed.

It's the one major component that I decided to wait on deploying, since there isn't an urgent need to contain a space that is (at first) mostly empty. We're aiming to have it fully contained by the time 1/4 of the cabinet positions are occupied.

From the article:

"OS X

Apple‘s operating system offers numerous advantages over other platforms when it comes to image processing, and it is also favored by many designers for the same reasons. imgix has written tools which allow us to leverage these strengths with our service, using OS X for image operations where it provides superior quality and performance.

Deploying this type of hardware in a datacenter environment is a bit of a challenge, and one that we worked on extensively with our systems integrator. Our custom cabinet design allows us to operate these servers the same as any other in our production environment, and ensures they are a reliable component of the imgix infrastructure."

You just copy-pased marketing spew. I think the author of original post wanted to know more about exact technologies/image processing at which OS X excels so much that it's worth deploying Mac Minis in such numbers.

I did enough work professionally with image/video/CV processing that I have a rough idea, but I'd still like to hear some non-marketing speak about why the company decided to invest in the huge hassle that is having rack-mounted Apple gear which misses all redundancy, connectivity and management equipment of standard rackmount servers.

We debated whether or not this Exposure article was the right place to dive into specifics about our infrastructure and the choices we made (including our decision to use OS X), but ultimately decided that it wasn't a good fit. Exposure is more about showing than telling, with some light descriptive text for context.

imgix's founder and CEO (zacman85) replied in another comment with a few more details about why we use OS X for some things, but there's a lot more detail we could go into. We're thinking about exploring these kind of topics in more depth in future articles, and I hope you'll check them out.

I would say that's a vague description at best. "Numerous advantages" and "favored by many designers".
They say “Apple‘s operating system offers numerous advantages over other platforms when it comes to image processing, and it is also favored by many designers for the same reasons.”

Although I have no idea what those advantages could be.... AppleScript+Photoshop? Who knows... On any platform you have essentially the same choice in performance and flexibility of imaging libraries, so it's anyone's guess for now what they think they need them for.

It's especially funny because of just how much they talk up fibre connectivity, and how the copper is just used as a fallback management fabric.... but these Mac Minis are obviously connected with copper.

If you use CoreImage you get a ton of GPU-optimized filters for free, plus you can compose them at very little cost. For example if you wanted to crop, scale, rotate, and guassian blur an image, you can do that with one pass through the GPU instead 4.
I think ImageMagick also supports GPU/OpenCL if you compile it in.
As kogir mentioned elsewhere in the thread, ImageMagick is not designed to be used as a long running process, it will destroy RAM and likely lead to stability issues.

I think with OSX they used the right tool for the right job, because, as always, there is never a perfect solution to any problem on the trilateral axis (good/fast/cheap).

I still don't understand this, why would you keep imageMgick running for more than one image?
Destroy RAM? What?
I know! I was being hyperbolic, but you get the idea :-) Memory leaks are almost the same thing, perhaps worse. You can always change a stick of RAM, but chasing down memory leaks, that's more than a 5 min job!
Sorry for any confusion with the fiber optic cabling; that connects to the uplinks on our production top of rack switches. The copper cabling is used to uplink our management switches and for serial consoles on the switches and CDUs.

The excess unlit fiber capacity lets us install more switches or bring up more uplink ports for a particular rack, as necessary.

One thing that we had to cut for length is how our cabinets are built: we work closely with our systems integrator on a few rack designs that we re-use often, and they build, test and cable (with cat6) every server in the rack according to that design. Once a rack rolls onto the datacenter floor, we bolt it down, connect ground and power leads, and run short patch cables from the switch uplinks to the patch panels suspended from the ladder rack above each cabinet position.

"Apple‘s operating system offers numerous advantages over other platforms when it comes to image processing, and it is also favored by many designers for the same reasons. imgix has written tools which allow us to leverage these strengths with our service, using OS X for image operations where it provides superior quality and performance. "

Looks like they use them for OS X.

My guess is that they have some custom Photoshop remote tools.