您好,登錄后才能下訂單哦!
本篇內容主要講解“Linux Shell腳本怎么查看NUMA信息”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“Linux Shell腳本怎么查看NUMA信息”吧!
Nova在NFV場景下會提供NUMA相關高級特性,這里提供一個腳本查看計算節點的NUMA相關信息。
#!/bin/bash function get_nr_processor() { grep '^processor' /proc/cpuinfo | wc -l } function get_nr_socket() { grep 'physical id' /proc/cpuinfo | awk -F: '{ print $2 | "sort -un"}' | wc -l } function get_nr_siblings() { grep 'siblings' /proc/cpuinfo | awk -F: '{ print $2 | "sort -un"}' } function get_nr_cores_of_socket() { grep 'cpu cores' /proc/cpuinfo | awk -F: '{ print $2 | "sort -un"}' } echo '===== CPU Topology Table =====' echo echo '+--------------+---------+-----------+' echo '| Processor ID | Core ID | Socket ID |' echo '+--------------+---------+-----------+' while read line; do if [ -z "$line" ]; then printf '| %-12s | %-7s | %-9s |\n' $p_id $c_id $s_id echo '+--------------+---------+-----------+' continue fi if echo "$line" | grep -q "^processor"; then p_id=`echo "$line" | awk -F: '{print $2}' | tr -d ' '` fi if echo "$line" | grep -q "^core id"; then c_id=`echo "$line" | awk -F: '{print $2}' | tr -d ' '` fi if echo "$line" | grep -q "^physical id"; then s_id=`echo "$line" | awk -F: '{print $2}' | tr -d ' '` fi done < /proc/cpuinfo echo awk -F: '{ if ($1 ~ /processor/) { gsub(/ /,"",$2); p_id=$2; } else if ($1 ~ /physical id/){ gsub(/ /,"",$2); s_id=$2; arr[s_id]=arr[s_id] " " p_id } } END{ for (i in arr) printf "Socket %s:%s\n", i, arr[i]; }' /proc/cpuinfo echo echo '===== CPU Info Summary =====' echo nr_processor=`get_nr_processor` echo "Logical processors: $nr_processor" nr_socket=`get_nr_socket` echo "Physical socket: $nr_socket" nr_siblings=`get_nr_siblings` echo "Siblings in one socket: $nr_siblings" nr_cores=`get_nr_cores_of_socket` echo "Cores in one socket: $nr_cores" let nr_cores*=nr_socket echo "Cores in total: $nr_cores" if [ "$nr_cores" = "$nr_processor" ]; then echo "Hyper-Threading: off" else echo "Hyper-Threading: on" fi echo echo '===== END ====='
查詢結果示例:
===== CPU Topology Table ===== +--------------+---------+-----------+ | Processor ID | Core ID | Socket ID | +--------------+---------+-----------+ | 0 | 0 | 1 | +--------------+---------+-----------+ | 1 | 1 | 1 | +--------------+---------+-----------+ | 2 | 9 | 1 | +--------------+---------+-----------+ | 3 | 10 | 1 | +--------------+---------+-----------+ | 4 | 0 | 0 | +--------------+---------+-----------+ | 5 | 1 | 0 | +--------------+---------+-----------+ | 6 | 9 | 0 | +--------------+---------+-----------+ | 7 | 10 | 0 | +--------------+---------+-----------+ | 8 | 0 | 1 | +--------------+---------+-----------+ | 9 | 1 | 1 | +--------------+---------+-----------+ | 10 | 9 | 1 | +--------------+---------+-----------+ | 11 | 10 | 1 | +--------------+---------+-----------+ | 12 | 0 | 0 | +--------------+---------+-----------+ | 13 | 1 | 0 | +--------------+---------+-----------+ | 14 | 9 | 0 | +--------------+---------+-----------+ | 15 | 10 | 0 | +--------------+---------+-----------+ Socket 0: 4 5 6 7 12 13 14 15 Socket 1: 0 1 2 3 8 9 10 11 ===== CPU Info Summary ===== Logical processors: 16 Physical socket: 2 Siblings in one socket: 8 Cores in one socket: 4 Cores in total: 8 Hyper-Threading: on ===== END =====
到此,相信大家對“Linux Shell腳本怎么查看NUMA信息”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。