Shell實現強制釋放記憶體

2022-08-01 15:03:13 字數 839 閱讀 3912

#!/bin/bash

#系統分配的區總量  

mem_total=`free -m | awk 'nr==2' | awk ''` 

#當前剩餘的大小  

mem_free=`free -m | awk 'nr==3' | awk ''` 

#當前已使用的used大小  

mem_used=`free -m | grep mem | awk ''`  

if (($mem_used != 0)); then  

#如果已被使用,則計算當前剩餘free所佔總量的百分比,用小數來表示,要在小數點前面補乙個整數字0  

mem_per=0`echo "scale=2;$mem_free/$mem_total" | bc`  

data="$(date -d "today" +"%y-%m-%d-%h-%m") free percent is : $mem_per"

echo $data >> /var/log/mem_detect.log

#設定的告警值為20%(即使用超過80%的時候告警)。  

mem_warn=0.20  

#當前剩餘百分比與告警值進行比較(當大於告警值(即剩餘20%以上)時會返回1,小於(即剩餘不足20%)時會返回0 )  

mem_now=`expr $mem_per \> $mem_warn`  

#如果當前使用超過80%(即剩餘小於20%,上面的返回值等於0),釋放記憶體

if (($mem_now == 0)); then  

sync

echo 3 > /proc/sys/vm/drop_caches

fi fi

Tensorflow 實現釋放記憶體

我在做tensorflow開發的時候遇到如下的錯誤,我請教了深度學習社群q群中的大神,大神說這是運算圖還在記憶體中,沒有及時釋放,需要restart一下kernel,但是由於我的 不能停止執行,所以沒辦法用重新執行 來解決釋放記憶體執行圖的問題。問題 with tf.session as sess ...

mysql記憶體釋放 MySQL記憶體不釋放

歡迎進入linux社群論壇,與200萬技術人員互動交流 進入 連線了一下,並進行了一次查詢操作 root nj 245 thu apr 24 16 38 38 2014 information schema select count from client statistics count 5 1 ...

釋放記憶體總結

1.用new malloc顯式分配在堆上的記憶體才需要用delete free釋放,而在棧上分配的如int array 80 在子程式結束時自動釋放,分配與釋放都和資料型別無關。2.delete乙個指標的時候 一定要檢查是否為null,否則是個嚴重的應用程式錯誤.3.釋放乙個陣列要用delete 4...