Использование памяти на пользователя в кластере SGE

Я хотел бы автоматизировать оценку ежемесячного использования памяти всеми заданиями, выполняемыми данным пользователем в моем кластере (SGE, ubuntu). Я видел, что есть много инструментов для вычисления текущего использования памяти для конкретного пользователя, но я хочу вычислить использование ЦП представленных заданий. Это возможно? Есть ли какой-нибудь инструмент для просмотра истории отправленных работ и поиска памяти, которую они использовали?

Спасибо

2 ответа

Я только что понял, что вы можете проверить, сколько памяти использует пользователь

qacct -j -o <username>

Следующий скрипт вычисляет время ЦП (в часах) на пользователя (для всех пользователей в /etc/passwd файл) за последний месяц:

#!/bin/sh
bmonth=$(/bin/date +%m)
bmonth=$(($bmonth - 1))
year=$(/bin/date +%y)

if [ $bmonth -eq 0 ];then
    bmonth=12
    year=$((year-1))
fi

if [ $bmonth -lt 10 ];then
    bmonth=0$bmonth
fi

emonth=$(/bin/date +%m)
hour=00
minute=00
day=$(/bin/date +%d)
begin=$year$bmonth$day$hour$minute
end=$year$emonth$day$hour$minute

for user in $(/usr/bin/cut -d':' -f1 /etc/passwd); do
    /usr/bin/qacct -j -o $user -b $begin -e $end | /bin/grep cpu | /usr/bin/awk '{sum += $2} END {sum = sum/3600; print "'$user'", sum}' OFS='\t';
done
Другие вопросы по тегам