Live data from Hacker News

Linus Torvalds on Why ARM Won't Win the Server Space

realworldtech.com

161–170 of 545 posts

Re: Linus Torvalds on Why ARM Won't Win the Server Space

#161
post #33

It's of course impossible not to respect Linus' opinion and first hand experience in this space, but doesn't this whole post completely ignore the 100 ton blue whale in the room? Namely smartphones . That's an entire enormous segment of the industry and it's nearly 100% (or entirely 100%?) literally develop-on-x86-deploy-on-ARM. Smartphones also fit > "This isn't rocket science. This isn't some made up story. This is…

He did address the so-called 100-ton blue whale at the end: > End result: cross-development is mainly done for platforms that are so weak as to make it pointless to develop on them. Nobody does native development in the embedded space. But whenever the target is powerful enough to support native development, there's a huge pressure to do it that way, because the cross-development model is so relatively painful.

except that developing for ARM SBC's natively is normal these days. Even the lowly Raspberry Pi encourages you to plug-in an HDMI monitor, a USB mouse and keyboard, and boot into Raspbian, where things like Wiring-Pi further extend your cross-development reach (LOL), while you develop the code for your peripheral directly on the computer that's going to run it. It's a bit of a Matryushka doll in that I have both Propeller chip and FPGA "Hat's" for my Pi and use both propeller IDE and the Icestorm toolchain to natively cross-develop for ACTUALLY embedded devices, as the ARM device is the main computer already and not the embedded device anymore lol

Re: Linus Torvalds on Why ARM Won't Win the Server Space

#162

Except that doesn't quite explain why soo many developers use macbooks (OS/X), yet deploy on Linux. Personally I think ARM could be leapfrogged by RISC-V, though it will take longer than people predict.

Except...

1. OS/X is Unix[tm] and linux is a "Unix clone" so the operating system works the same and (for purposes of this debate) both run on the X86 ISA.

2. The first thing all the macbook developers do is install Homebrew or equivalent and install all the same packages that are installed in their linux deployment environment.

At that point, their OS/X development environment is effectively indistinguishable from their linux deployment environment.

Re: Linus Torvalds on Why ARM Won't Win the Server Space

#164
I am in the mindset that arm servers are the future. I have already some sites on arm. The issues with IME give a bad image of Intel. Monopolys are never good... But when Linus says: "And the only way that changes is if you end up saying "look, you can deploy more cheaply on an ARM box, and here's the development box you can do your work on"."

It matches my mindset. I am also looking for the good arm laptop. I do not need anything fancy: 4GB of ram (or better), 64GB SSD, wifi, bluetooth, usb (3 if possible), audio jack, good screen, usable keyboard, good touchpad.

Re: Linus Torvalds on Why ARM Won't Win the Server Space

#165

It's extremely hard to agree with Linus on that. One problem in his argument is that he believes that everybody has a kernel hacker mindset: most today's developers don't care about environment reproducibility at architecture level. The second problem is that he believes that every kind of development is as platform sensitive as kernel hacking, and he even makes the example of Perl scripts. The reality is that one ye…

What hardware do you use for development and for testing? Can you elaborate on your setup, ARM-wise?

Re: Linus Torvalds on Why ARM Won't Win the Server Space

#167
post #18

Earlier quoted context omitted.

And he's wrong. In the enterprise, the vast majority of devs are on Windows, for Java for example. That doesn't mean that their deployment target is Windows, most of the time it's Linux. And the development differences, chance of bugs, performance profiles are way different between OSes than they are between CPU architectures.

> That doesn't mean that their deployment target is Windows, most of the time it's Linux. I don't feel like that's true. I don't have data to say otherwise, but my impression for the majority of non-tech businesses I encounter is that they are very much still Windows shops, and still on-prem.

I've worked for a few, consulted for others, have friends working for yet others. It's a mix. Java shops go Win/Lin, .NET generally is Win/Win, for now.

Re: Linus Torvalds on Why ARM Won't Win the Server Space

#168
post #141
post #14

Earlier quoted context omitted.

I do buy Linus' argument, you need to be able to do native development. My ARM64 development machine is a Pinebook, ARM32 a Cubietruck. Both have only 2GB of RAM and could really do with more. At least the Cubietruck has SATA so mine has a SSD.

With rich language runtimes, as app developer I don't care if my application instance runs on top of an OS, hypervisor or just plain bare metal. The only devs that need to care about the native part are the ones writing the glue between runtime and hardware.

Somebody has to maintain the runtimes, they are not typically set up to be cross-compilable, I'm doing JVM development on my ARM systems right now.

Re: Linus Torvalds on Why ARM Won't Win the Server Space

#169
post #56
post #33

It's of course impossible not to respect Linus' opinion and first hand experience in this space, but doesn't this whole post completely ignore the 100 ton blue whale in the room? Namely smartphones . That's an entire enormous segment of the industry and it's nearly 100% (or entirely 100%?) literally develop-on-x86-deploy-on-ARM. Smartphones also fit > "This isn't rocket science. This isn't some made up story. This is…

Linus is mostly wrong except for HPC. Very few dev pipelines for folks result in native executables. The vast majority of code is delivered as either source (python, ruby, etc) or bytcode, JVM, Scalia, etc. And the Xeon class machines folks deploy to in data center envs is a world apart from their MacBooks. These truths are true for Linus, but not for the majority of devs. Even those creating native binaries, this is…

Even in a bytecode language, there is no guarantee that an application is write-once run-everywhere. I converted a small app that was running on Windows with Oracle JDK to run on Linux with OpenJDK and it was not plug-and-play. It was close, but there were a few errors particularly surrounding path resolution (and yes, the Windows application was already using Unix-style paths, this was actually a difference in how paths were resolved). Similarly, there are small differences between Tomcat and Jetty and so on.

This wasn't showstopping by any means, but it did take a couple of hours to tweak it until it ran properly, and this was just a small webapp not really doing anything exceptional.

Our main line-of-business app (on Java) runs on SPARC/Solaris in production, so we have on-premises test servers so we can test this... and yes, there have been quite a few instances where we identified significant performance anomalies between developer machines running x86/Windows and our Sparc/Solaris test environment, and had to go rewrite some troublesome functions.

Re: Linus Torvalds on Why ARM Won't Win the Server Space

#170
post #125
post #117

Earlier quoted context omitted.

> Mobiles are mostly communication Communication is also work, especially as you go up the management value chain. I think maybe people should refer to the thing that PCs do and mobiles don't as "typing".

It’s definitely a different kind of work. In general, smartphone software is built to discourage creative work and focus on either reading or communicating.

I would expand “reading” to “consumption” because mobile devices are frequently used for audio and video in addition to reading (which is probably more “browsing” than long-form reading).
Post reply on HN