PageSourceSearch

https://www.bsc.es/supportkc/assets/js/486ae62d.cd863da5.js

js bsc.es collected 2026-10-01 09:23:04 UTC 7,357 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunksupportkc_new=self.webpackChunksupportkc_new||[]).push([[965],{3905:(e,t,r)=>{r.d(t,{Zo:()=>p,kt:()=>h});var n=r(67294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function i(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?a(Object(r),!0).forEach((function(t){o(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):a(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function l(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},a=Object.keys(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var s=n.createContext({}),c=function(e){var t=n.useContext(s),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},p=function(e){var t=c(e.components);return n.createElement(s.Provider,{value:t},e.children)},u="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},d=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,a=e.originalType,s=e.parentName,p=l(e,["components","mdxType","originalType","parentName"]),u=c(r),d=o,h=u["".concat(s,".").concat(d)]||u[d]||m[d]||a;return r?n.createElement(h,i(i({ref:t},p),{},{components:r})):n.createElement(h,i({ref:t},p))}));function h(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var a=r.length,i=new Array(a);i[0]=d;var l={};for(var s in t)hasOwnProperty.call(t,s)&&(l[s]=t[s]);l.originalType=e,l[u]="string"==typeof e?e:o,i[1]=l;for(var c=2;c<a;c++)i[c]=r[c];return n.createElement.apply(null,i)}return n.createElement.apply(null,r)}d.displayName="MDXCreateElement"},58955:(e,t,r)=>{r.r(t),r.d(t,{assets:()=>s,contentTitle:()=>i,default:()=>m,frontMatter:()=>a,metadata:()=>l,toc:()=>c});var n=r(87462),o=(r(67294),r(3905));const a={sidebar_position:1,title:"StarLife",sidebar_label:"System Overview"},i=void 0,l={unversionedId:"Old_machines/StarLife/overview",id:"Old_machines/StarLife/overview",title:"StarLife",description:"System Overview",source:"@site/docs/Old_machines/StarLife/overview.md",sourceDirName:"Old_machines/StarLife",slug:"/Old_machines/StarLife/overview",permalink:"/supportkc/docs/Old_machines/StarLife/overview",draft:!1,tags:[],version:"current",sidebarPosition:1,frontMatter:{sidebar_position:1,title:"StarLife",sidebar_label:"System Overview"},sidebar:"tutorialSidebar",previous:{title:"StarLife",permalink:"/supportkc/docs/Old_machines/StarLife/intro"},next:{title:"File Systems",permalink:"/supportkc/docs/Old_machines/StarLife/storage"}},s={},c=[{value:"System Overview",id:"system-overview",level:2},{value:"Compilation for the architecture",id:"compilation-for-the-architecture",level:3},{value:"Intel Compilers",id:"intel-compilers",level:4},{value:"GCC",id:"gcc",level:4},{value:"Login Nodes",id:"login-nodes",level:3}],p={toc:c},u="wrapper";
1function m(e){let{components:t,...r}=e;return(0,o.kt)(u,(0,n.Z)({},p,r,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("h2",{id:"system-overview"},"System Overview"),(0,o.kt)("p",null,"StarLife is a cluster based on Intel Xeon Gold processors from the Skylake generation with a Linux Operating System and an Infiniband interconnection network."),(0,o.kt)("p",null,"It has the following configuration:"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"2 login node and 48 compute nodes, each of them:",(0,o.kt)("ul",{parentName:"li"},(0,o.kt)("li",{parentName:"ul"},"Dual socket Intel Xeon Gold 6138 CPU with 20 cores each @ 2.00GHz for a total of ",(0,o.kt)("strong",{parentName:"li"},"40 cores per node")),(0,o.kt)("li",{parentName:"ul"},"160GB of main memory ",(0,o.kt)("strong",{parentName:"li"},"4 GB/core")," (16 nodes fat memory, 8GB/core)"),(0,o.kt)("li",{parentName:"ul"},"SSD 120GB as local storage"),(0,o.kt)("li",{parentName:"ul"},"2.4 PB of GPFS disk storage"),(0,o.kt)("li",{parentName:"ul"},"Dual 10 Gbit Ethernet"),(0,o.kt)("li",{parentName:"ul"},"Intel Omni-Path network. Full fat tree topology."),(0,o.kt)("li",{parentName:"ul"},"GPFS via Intel Omni-Path")))),(0,o.kt)("p",null,"The operating system is SUSE Linux Enterprise Server 12 SP3."),(0,o.kt)("p",null,"The processors support well-known vectorization instructions such as SSE, AVX up to ",(0,o.kt)("a",{parentName:"p",href:"https://software.intel.com/en-us/blogs/2013/avx-512-instructions"},"AVX-512"),"."),(0,o.kt)("h3",{id:"compilation-for-the-architecture"},"Compilation for the architecture"),(0,o.kt)("p",null,"To generate code that is optimized for the target architecture and the supported features such as SSE, MMX, AVX instruction sets you will have to use the corresponding compile flags.\nFor compilations of MPI applications an MPI installation needs to be loaded in your session as well. For example Intel MPI via ",(0,o.kt)("em",{parentName:"p"},"module load impi")),(0,o.kt)("h4",{id:"intel-compilers"},"Intel Compilers"),(0,o.kt)("p",null,"The latest Intel compilers provide the best possible optimizations for the Xeon Gold architecture.\nBy default, when starting a new session on the system the basic modules for the Intel suite will be automatically loaded. That is the compilers (intel/2018.3),\nthe Intel MPI software stack (impi/2018.3) and the math kernel libraries MKL (mkl/2018.3) in their latest versions. We highly recommend linking against MKL\nwhere supported to achieve the best performance results."),(0,o.kt)("p",null,"To separately load the Intel compilers please use"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},"module load intel\n")),(0,o.kt)("p",null,"The corresponding optimization flags for icc are ",(0,o.kt)("strong",{parentName:"p"},'CFLAGS="-xCORE-AVX512 -mtune=skylake"'),". As the login nodes are of the exact same architecture as the compute node you can also use the flag ",(0,o.kt)("strong",{parentName:"p"},"-xHost")," which enables all possible optimizations available on the compile host."),(0,o.kt)("h4",{id:"gcc"},"GCC"),(0,o.kt)("p",null,"The GCC provided by the system is version 4.8.5. For better support of new hardware features we recommend to use the latest version that can be loaded via the provided modules.\nCurrently the latest version available in StarLife is GCC 8.1.0"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},"module load gcc/8.1.0\n")),(0,o.kt)("p",null,"The corresponding flags are ",(0,o.kt)("strong",{parentName:"p"},'CFLAGS="-march=skylake-avx512"')),(0,o.kt)("h3",{id:"login-nodes"},"Login Nodes"),(0,o.kt)("p",null,"You can connect to StarLife using two public login nodes. Please note that only incoming connections are allowed in the whole cluster. The logins are:"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},"sl1.bsc.es\nsl2.bsc.es\n")))}m.isMDXComponent=!0}}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.