Hacker News new | ask | show | jobs
by pjmlp 2153 days ago
Except that they are not.

Proprietary Fortran compilers beat most of the open source alternatives, when some complain about Fortran performance usually 99% of the times they are using gfortran.

Thanks to its license, many of the cool optimizations used by LLVM aren't upstreamed actually, and are kept by the OEMs like Sony, Apple, TI, ARM for their own toolchains.

In HPC, many of those GNU/Linux clusters done in collaboration with IBM tend to make use of xlc.

No JIT compiler, or GC implementations, for the pure open source managed runtimes tend to be on the same ball park of the work going on Java, .NET and JavaScript, all sponsored by deep pockets corporations.

No CUDA based open source clone beats NVidia and PGI compilers targeting NVidia hardware.

What most open source compilers have is good enough performance so that a large part of the dev population, that isn't willing to pay for tooling, doesn't care anyway.

2 comments

Except that, for CUDA, they do. https://github.com/NervanaSystems/maxas exhibited significantly higher performance than Nvidia's own SGEMM kernel, and https://github.com/mangpo/swizzle-inventor beats all named competitors in the non-texture-memory-input-using implemention. Namely, NVIDIA Performance Primitives, ArrayFire, and Iandola et al ( https://doi.org/10.1109/ICIP.2013.6738436 ).

As for GC implementations: did you consider ZGC in that statement? It's GPL 2.

Yes I did "all sponsored by deep pockets corporations."

Take their money out of the equation and the quality would be as the "state of the art GC" that CPython and MRI Ruby enjoy.

I see. Your sentence structure is a bit confusing and was successful in causing me to parse it as if you were referring to Java, .Net, and JavaScript with pure open source managed runtimes.
At least they all use the same file formats and you can switch from proprietary to OSS with a different makefile.

OSS isn't automatically better, but it changes the strategy and tactics that are used. GNU/GCC enabled and unleashed a movement.

> At least they all use the same file formats and you can switch from proprietary to OSS with a different makefile.

Assuming you don't rely on compiler-specific features.

What file formats? Text?

That is meaningless if they don't support the same language features, which is why other than Google's inhouse Android Linux fork, the Linux kernel is hardly compilable with anything else other than GCC C dialect.

GNU/GCC might have enabled and unleashed a movement, but thanks to the mass adoption of non-copyleft licenses, its time has come to pass, and in a couple of generations we will be back to shareware and public domain software packages.