From ae42325979c93101bd096cbc4edb95fdea10a175 Mon Sep 17 00:00:00 2001 From: Jason Andrews Date: Fri, 11 Oct 2024 01:57:09 +0000 Subject: [PATCH] review glibc with LSE Learning Path --- .../glibc-with-lse/build_glibc_with_lse.md | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/content/learning-paths/servers-and-cloud-computing/glibc-with-lse/build_glibc_with_lse.md b/content/learning-paths/servers-and-cloud-computing/glibc-with-lse/build_glibc_with_lse.md index 5e2b530499..ebce45ccdc 100644 --- a/content/learning-paths/servers-and-cloud-computing/glibc-with-lse/build_glibc_with_lse.md +++ b/content/learning-paths/servers-and-cloud-computing/glibc-with-lse/build_glibc_with_lse.md @@ -16,6 +16,17 @@ LSE introduces additional atomic instructions and operations, such as Load-Acqui When glibc is compiled with LSE support, it can take advantage of these enhanced atomic operations provided by the LSE extension. This can potentially improve the performance of multi-threaded applications that heavily rely on atomic operations and synchronization primitives. +{{% notice Note %}} +Your version of the GNU C Library may already have support for LSE. Before you build a new version check if LSE is already included by running: + +```console +objdump -d /lib/aarch64-linux-gnu/libc.so.6 | grep -i 'cas\|casp\|swp\|ldadd\|stadd\|ldclr\|stclr\|ldeor\|steor\|ldset\|stset\|ldsmax\|stsmax\|ldsmin\|stsmin\|ldumax\|stumin' | wc -l +``` + +If a non-zero number is printed your GNU C Library already has LSE. + +{{% /notice %}} + ## Before you begin Launch an [Arm based instance](/learning-paths/servers-and-cloud-computing/csp/) running Ubuntu version 20.04.