{"id":156,"date":"2020-03-01T11:15:30","date_gmt":"2020-03-01T16:15:30","guid":{"rendered":"http:\/\/localhost:8080\/?p=156"},"modified":"2024-05-21T11:11:53","modified_gmt":"2024-05-21T15:11:53","slug":"getting-information-about-the-clusters-and-your-jobs","status":"publish","type":"post","link":"https:\/\/knowledgebasev.kinsta.cloud\/?p=156","title":{"rendered":"2) All about Cores, Compute Nodes, and Clusters"},"content":{"rendered":"<h2><span style=\"font-size: 1em;\">Cores, Compute Nodes, Clusters, and other Resources<\/span><\/h2>\n<h3><strong>Terminology\u00a0<\/strong><\/h3>\n<p><strong>ssClient, Client, Login Client &#8211;<\/strong>\u00a0The application you downloaded and installed. Sometimes referred as &#8220;ssClient&#8221;, client, or login client. This is were you enter commands, transfer files, and launch and access the remote desktop.<\/p>\n<p><strong>Job<\/strong>\u00a0&#8211; A user&#8217;s work load or process; what the user wants to run, process, simulate.<\/p>\n<p><strong>Core<\/strong> &#8211; A \u201ccore\u201d is one physical processor of a CPU. A CPU core is a CPU\u2019s processor. A CPU has many cores.\u00a0You can think of a core as a single processor. For example, if you need &#8220;32 processors&#8221; for a job, you\u00a0need 32 cores.<\/p>\n<p><strong>CPU<\/strong> &#8211; A CPU contains many processor cores.<\/p>\n<p><strong>Compute node<\/strong> &#8211; A \u201ccompute node\u201d (also referred to as \u2018node\u2019) is a server with 2 CPUs, memory, local storage, networked storage, and a high performance network connection to other compute nodes in the cluster. Jobs run on one or more compute nodes.<\/p>\n<p><strong>Cluster<\/strong> &#8211; Compute nodes of similar configuration are organized into \u201cclusters\u201d. Each cluster has a name to easily identify it. For example, these are names of some of the clusters: &#8220;blue&#8221;, &#8220;copper&#8221;, &#8220;red&#8221;.<\/p>\n<p><strong>Terminal<\/strong> &#8211;\u00a0A terminal accepts command line inputs (ie CLI). The terminal is also available in the remote graphics (i.e. remote desktop).\u00a0 The ssClient\/ login client is also a in fact a terminal. You can enter any command-line command at the prompt in the\u00a0client.<\/p>\n<p style=\"padding-left: 5px;\"><img decoding=\"async\" class=\"style1\" src=\"\/wp-content\/uploads\/cli_remote_desktop.png\" alt=\"\" \/><\/p>\n<h3><strong>What processors, compute nodes, and clusters are available?<\/strong><\/h3>\n<p>When a job is submitted for processing, it is placed in a queue. The job will start on the first available\u00a0node directive specified by the job parameters. Regardless of how busy a particular cluster is, the job will start when the resources become available.<\/p>\n<p><span style=\"color: #993300;\">upnodes<\/span> &#8211; The \u201cupnodes\u201d command gives a quick and simple overview table of the clusters and their compute node configurations (and current status) .\u00a0 The cluster name (which you will\u00a0need to use to specify cores), processor type, RAM, and total number of nodes and cores in the cluster are displayed in the table. Use this information to help determine your job&#8217;s <a title=\"4) Setting Up Your Job\" href=\"\/?p=233\">node directive<\/a>\u00a0described in\u00a0artical\u00a0<a title=\"4) Setting Up Your Job\" href=\"\/?p=233\">4<\/a>\u00a0&#8220;Setting up your Job&#8221; of this section or if you are using a launcher to select your cores.<\/p>\n<p>Try this &#8211;&gt; In any terminal, enter the command &#8220;upnodes&#8221; at the prompt.<\/p>\n<p>&nbsp;<\/p>\n<p style=\"padding-left: 5px;\"><img decoding=\"async\" class=\"style1\" src=\"\/wp-content\/uploads\/upnodes-images.png\" alt=\"\" \/><\/p>\n<p><span style=\"color: #000000;\"><strong>Upper Section\u00a0&#8211;<\/strong><\/span> In the first section of the output, the first row of the table contains the &#8220;cluster&#8221; names. The column beneath the cluster name are the cluster details.<\/p>\n<ul>\n<li><strong>CPU Brand<\/strong>: the brand of the CPU &#8211; <em>Xeon\u00a0<\/em><\/li>\n<li><strong>CPU Model<\/strong>: the model of the CPU<\/li>\n<li><strong>Clock Frequency<\/strong>: The base clock Speed of the CPUs in GHz<\/li>\n<li><strong>Total Nodes<\/strong>: Total nodes in the cluster<\/li>\n<li><strong>Cores\/Node:<\/strong> The physical cores per node<\/li>\n<li><strong>Total Cores:<\/strong> The total number of physical cores in the cluster<\/li>\n<li><strong>Avail Cores:<\/strong> The total number of cores currently unoccupied. <em>Some unoccupied cores maybe reserved for jobs ahead of your job in the queue. See the second section below to determine what cores are currently available to you.<\/em><\/li>\n<li><strong>RAM\/Node:<\/strong> The amount of physical RAM per node<\/li>\n<li><strong>RAM\/Core:<\/strong> The amount of physical RAM per core.\u00a0<em>Your application is not allowed to exceed this amount.<\/em><\/li>\n<li><strong>Tier:<\/strong> The pricing tier of the cluster<\/li>\n<li><strong>MPI Rate:<\/strong> The MPI Infiniband network speed in Gigabits per second<\/li>\n<li><strong>Infiniband:<\/strong> The Infiniband network performance architecture<\/li>\n<\/ul>\n<p><span style=\"color: #000000;\"><strong>Lower Section\u00a0<\/strong>&#8211;<\/span> In the second section of the output the number of nodes with corresponding unoccupied cores that are available for your new job (or the first job you currently have in the queue based on it&#8217;s first <a href=\"\/?p=233\">nodes directive<\/a>) is shown. Use these values to determine when your job may start.\u00a0Regardless of how busy a particular cluster is, the job will start when the resources become available.<\/p>\n<p style=\"padding-left: 30px;\"><strong>Cluster | Nodes[Avail Cores]<\/strong><\/p>\n<p style=\"padding-left: 30px;\">For example, for the copper cluster &#8221;\u00a04[0] 14[10] 16[24]&#8221; is interpreted as 4 nodes with [0] unoccupied cores, 14 with [10] unoccupied cores, and 16 nodes with [24] unoccupied cores are available for your job at this moment. Submitting a job requesting 10 nodes with 24 cores each would likely start immediately.\u00a0<em>NOTE:\u00a0You do not have to wait for cores or nodes to be free before submitting a job. Submit the job and it will automatically start as soon as resources become available.<\/em><img decoding=\"async\" class=\"style1\" src=\"wp-content\/uploads\/new-upnodes-section2.jpg\" alt=\"\" \/><\/p>\n<ul>\n<li><strong>Important items\u00a0about this section<\/strong>\n<ul>\n<li>Your first job will start immediately (or within a few minutes after the node boots from sleep mode) if at least one of your nodes\u00a0directives is met.<\/li>\n<li>You do not have to wait for the cores to be available for you to submit a job. You can submit any job and it will start as soon as the cores are available.<\/li>\n<li>If a job is queued (not running but waiting in the queue), the output is based on the first nodes directive defined in the job script (or first one defined in a launcher).<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>Now let\u2019s move\u00a0to<a href=\"https:\/\/knowledgebasev.kinsta.cloud\/?p=197\">\u00a0Article #<\/a>3\u00a0&#8220;Usage and Account Balance&#8221;<\/p>\n<p style=\"padding-left: 30px;\">\n","protected":false},"excerpt":{"rendered":"<p>Cores, Compute Nodes, Clusters, and other Resources Terminology\u00a0 ssClient, Client, Login Client &#8211;\u00a0The application you downloaded and installed. Sometimes referred as &#8220;ssClient&#8221;, client, or login client. This is were you enter commands, transfer files, and launch and access the remote desktop. Job\u00a0&#8211; A user&#8217;s work load or process; what the user wants to run, process, [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[17],"tags":[58,57,56,20,55],"class_list":["post-156","post","type-post","status-publish","format-standard","hentry","category-userguidebasics","tag-clui","tag-pbsnodes","tag-qstat","tag-status","tag-upnodes"],"_links":{"self":[{"href":"https:\/\/knowledgebasev.kinsta.cloud\/index.php?rest_route=\/wp\/v2\/posts\/156","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/knowledgebasev.kinsta.cloud\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/knowledgebasev.kinsta.cloud\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/knowledgebasev.kinsta.cloud\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/knowledgebasev.kinsta.cloud\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=156"}],"version-history":[{"count":58,"href":"https:\/\/knowledgebasev.kinsta.cloud\/index.php?rest_route=\/wp\/v2\/posts\/156\/revisions"}],"predecessor-version":[{"id":2022,"href":"https:\/\/knowledgebasev.kinsta.cloud\/index.php?rest_route=\/wp\/v2\/posts\/156\/revisions\/2022"}],"wp:attachment":[{"href":"https:\/\/knowledgebasev.kinsta.cloud\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=156"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/knowledgebasev.kinsta.cloud\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=156"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/knowledgebasev.kinsta.cloud\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=156"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}