Задать вопрос
Anna_Repina
@Anna_Repina
Хочу все знать

Как считывать логи только с оперативной памяти и проверить ее рабочую частоту в реалтайме?

Пишу скрипт под стресс только ОП, что бы нагрузить ее по максимуму. Все показатели будут выводится в окошках Tmux+утилита stress-ng+htop для контроля загрузки оперативной памяти.
(конфиг для stress-ng)
#!/bin/bash
TOTALMEM=( $(dmidecode -t 17 | grep "Volatile Size: 8" | awk '{print $3*16}') )
MEMFREE="95"

TIMEOUT_SEC="1800"
TIMEOUT_HRS=( $(echo $TIMEOUT_SEC | awk '{print $1/60}') )
TIMEOUT_MIN=( $(echo $TIMEOUT_HRS | awk '{print $1}' ) )

echo -e "This system has: $TOTALMEM G RAM"
echo -e "Stress test takes:" $MEMFREE"%" "of RAM (" $((TOTALMEM*MEMFREE/100))"G )"
echo -e "Stress-test scheduled time is $TIMEOUT_SEC seconds ($TIMEOUT_MIN  minutes)"

stress-ng --cpu 0 --io 4 --vm 2 --vm-bytes "$MEMFREE"% --timeout $TIMEOUT_SEC


Основной вопрос заключается в том, как проверять частоту на которой работает ОП в реальном времени (Возможно как-то с использованием watch -n1 возможно это прописать)?

И как считывать логи ТОЛЬКО с оперативной памяти, что бы видеть какая планка отвалилась в конкретный момент времени?(думала использовать dmesg |grep "memory" > /var/log/ram_test.log)
Есть скриптик для определения установленных планок памяти, но не знаю как его связать с этим.
но вывод через watch не работает.
#!/bin/bash
COUNT=`dmidecode -t 17 | grep -A 18 'Memory Device' | grep -c 'Configured Memory Speed: 3200'`
echo -e "${O} installed RAM strips : ${COUNT} "
DIMM2=`dmidecode -t 17 |awk '/Device/{i++;print "DIMM "i}/Size/{print $2 " " $3 " " $4}' | grep -iB1 "No Module Installed"`
echo "$DIMM2" > checkmem 
 grep -v "No Module Installed" checkmem
  • Вопрос задан
  • 141 просмотр
Подписаться 2 Простой 5 комментариев
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы