[Beowulf] C++ compilers and assembly

Prentice Bisbal pbisbal at pppl.gov
Thu Oct 18 14:16:31 PDT 2018


I know I'm a bit late to this conversation. Been too busy to lurk here 
lately. But I wanted to respond to this comment:

> Lastly Jason mentioned IncludeOS http://www.includeos.org/
> these gusy are implementing something I have tossed about on this list
> in the past - running applications in a lightweight OS without all the
> overhead of a multitasking system.
> I dont know that much about it - is anyone from that company on the list?
Lightweight operating systems for HPC is definitely a thing the IBM Blue 
Gene systems used a lightweight kernel called CNK (Compute Node Kernel). 
While not based on Linux, it used a subset of the Linux system call API 
for its own system calls portability reasons. It was single-tasking, 
since for an HPC job on a system like the Blue Gene (no node sharing 
between jobs), there was no need to manage multiple tasks.

https://en.wikipedia.org/wiki/CNK_operating_system

I don't know much about Compute Node Linux (CNL), which is used on Cray 
systems. I believe it is a stripped down version of Linux, but not sure 
how stripped down it is.

https://en.wikipedia.org/wiki/Compute_Node_Linux

Here's some links to more information/other lightweight kernels, like 
Puma and Catamount, in no particular order.

https://www.cresta-project.eu/images/WhitePapers/cresta_whitepaper_2_2014.pdf

https://ieeexplore.ieee.org/document/323279

https://www.researchgate.net/publication/228816883_Software_architecture_of_the_light_weight_kernel_Catamount

https://en.wikipedia.org/wiki/Lightweight_Kernel_Operating_System

Prentice

On 09/09/2018 11:50 PM, John Hearns via Beowulf wrote:
> Chris Samuels recent post reminds me.
> I went to a fascinating and well delivered talk by Jason Hearne McGuiness
>
> https://www.meetup.com/ACCULondon/events/253570550/
> https://accu.org/index.php/accu_branches/accu_london
> Slides are here:
> https://github.com/acculondon/2018-September
>
> I would encourage everyone to give this presentation at least a browse.
> Jason has done a lot of work in comparing the assembler code emitted
> by C++ compilers for simple statement blocks. Even within the g++
> series there are wildly different assembler sequences emitted. And of
> course differences between Intel and Clang.
> I would have naively assumed that within g+++ at least as improvements
> are made then there would be some commonality - ie an evolution. But I
> would be wrong.
>
> Jason work in HFT so the default path loaded in IF statements (for
> instance) is  important for low latency.
> Jason also did a lot of work in comparing performance before and after
> the Spectre/Meltdown fixes.  There is a huge amount of work gone into
> that.
>
> One other takeaway - the choice of Linux OS is critical. Really.
> Common wisdom is that OS choice accounts for approx. 4% of performance
> difference.
> Not so.
> There isa big difference between CentOS 6 and 7 (7 being better) and
> Ubuntu does not shine at all well on his FIX benchmarks. Gentoo does
> well - Jason being a fan of Gentoo.
> As I remember on these benchmarks OS choice can affect results by 20% !!!!
>
> Lastly Jason mentioned IncludeOS http://www.includeos.org/
> these gusy are implementing something I have tossed about on this list
> in the past - running applications in a lightweight OS without all the
> overhead of a multitasking system.
> I dont know that much about it - is anyone from that company on the list?
>
> John Hearns
> _______________________________________________
> Beowulf mailing list, Beowulf at beowulf.org sponsored by Penguin Computing
> To change your subscription (digest mode or unsubscribe) visit http://www.beowulf.org/mailman/listinfo/beowulf



More information about the Beowulf mailing list