#!/bin/bash # check the argument count if [ $# -lt 1 ] then echo "usage: ./sga_in_lgrp.sh " exit 1 fi # find the number of locality groups lgrp_count=$(kstat -l lgrp | tail -1 | awk -F':' '{ print $2 }') echo "\nNumber of Locality Groups (lgrp): $lgrp_count" echo "------------------------------------\n" # save the ism output using pmap pmap -sL $1 | grep ism | sort -k5 > /tmp/tmp_pmap_$1 # calculate the total amount of memory allocated in each lgroup for i in `seq 1 $lgrp_count` do echo -n "lgroup $i : " grep "$i \[" /tmp/tmp_pmap_$1 | awk '{ print $2 }' | sed 's/K//g' | awk '{ sum+=$1} END {printf ("%6.2f GB\n", sum/(1024*1024))}' done echo echo -n "Total allocated memory: " awk '{ print $2 }' /tmp/tmp_pmap_$1 | sed 's/K//g' | awk '{ sum+=$1} END {printf ("%6.2f GB\n\n", sum/(1024*1024))}' rm /tmp/tmp_pmap_$1