av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術(shù)文章
文章詳情頁

利用Python如何實(shí)時(shí)檢測自身內(nèi)存占用

瀏覽:4日期:2022-07-26 10:09:03

前言

最近在做文本統(tǒng)計(jì),用 Python 實(shí)現(xiàn),遇到了一個比較有意思的難題——如何保存統(tǒng)計(jì)結(jié)果。

直接寫入內(nèi)存實(shí)在是放不下,十幾個小時(shí)后內(nèi)存耗盡,程序被迫關(guān)閉。如果直接寫入數(shù)據(jù)庫吧,每次寫入又太慢了,本來就十幾個小時(shí)了,這樣下去就要往星期上數(shù)了,也不是個辦法。

解決方案

最后,我想到了一個兩者兼顧的方案——用內(nèi)存做緩沖,達(dá)到一定量之后一次性將當(dāng)前所有數(shù)據(jù)合并到硬盤里。

但這樣就有一個閾值,如何確定同步硬盤的時(shí)機(jī),通常可以按照文件粒度進(jìn)行處理,比如處理一個語料文件同步一次……但我的語料有大有小,大的有10GB,根本等不到那一刻內(nèi)存就爆炸了,后來我想用統(tǒng)計(jì)數(shù)據(jù)量進(jìn)行判斷……可這又有點(diǎn)難以估計(jì),小了吧頻繁寫入,緩存的意義就不大了,大了吧還沒等到條目數(shù)量達(dá)到,內(nèi)存就已經(jīng)爆滿。另外考慮到將來程序會運(yùn)行在不同配置的設(shè)備上,讓其他開發(fā)者根據(jù)自身情況計(jì)算這個閾值也有點(diǎn)太不友好,于是我想到了一個辦法——不如讓 Python 自己檢測自己的內(nèi)存占用,如果快滿了(或者達(dá)到閾值),就同步寫入硬盤一次。

對于其他開發(fā)者來說,自身設(shè)備的內(nèi)存多大是很容易查看的,根據(jù)系統(tǒng)運(yùn)行狀況設(shè)置一個合理的閾值,相當(dāng)方便。

要用 Python 監(jiān)控自身內(nèi)存占用,要使用 psutil 這個庫來和系統(tǒng)進(jìn)行交互,基本邏輯就是先拿到自己的 pid ,然后根據(jù)這個 pid 去跟系統(tǒng)獲取進(jìn)程信息。

def get_current_memory_gb() -> int:# 獲取當(dāng)前進(jìn)程內(nèi)存占用。pid = os.getpid()p = psutil.Process(pid)info = p.memory_full_info()return info.uss / 1024. / 1024. / 1024.

比如我系統(tǒng)是 32GB 內(nèi)存,那么我設(shè)置個 20GB 就相當(dāng)安全,用 Python 進(jìn)行統(tǒng)計(jì)語料,數(shù)據(jù)多到進(jìn)程占用 20GB 內(nèi)存了,就把當(dāng)前的數(shù)據(jù)寫入硬盤,同步統(tǒng)計(jì)數(shù)據(jù),然后清空程序里的字典緩存釋放內(nèi)存。

python之psutil

psutil是個跨平臺庫,能夠輕松實(shí)現(xiàn)獲取系統(tǒng)運(yùn)行的進(jìn)程和系統(tǒng)利用率,包括CPU、內(nèi)存、磁盤、網(wǎng)絡(luò)等信息。

Linux系統(tǒng)下的安裝

pip install psutil

總結(jié)

到此這篇關(guān)于利用Python如何實(shí)時(shí)檢測自身內(nèi)存占用的文章就介紹到這了,更多相關(guān)Python實(shí)時(shí)檢測自身內(nèi)存占用內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 国产精品美女久久久久aⅴ国产馆 | 亚洲午夜av久久乱码 | 日韩av一区二区在线观看 | av看看| 中文字幕一区二区三区在线视频 | 欧美 日本 国产 | 这里精品 | 久久成人精品 | 波多野结衣在线观看一区二区三区 | 国产激情视频在线观看 | 福利影院在线看 | 日韩视频在线免费观看 | av在线免费观看不卡 | 中文字幕一区在线观看视频 | 狠狠干av| 午夜精品一区二区三区在线视频 | 精品国产鲁一鲁一区二区张丽 | 成人亚洲一区 | 国产精品夜色一区二区三区 | 黄频视频| 天堂在线网 | 在线成人免费视频 | 国产精品日日夜夜 | 玖玖玖在线观看 | 国产偷录叫床高潮录音 | 午夜a v电影 | 国产伦一区二区三区久久 | 欧美精品导航 | 成人免费观看视频 | 日韩不卡在线 | 国色天香综合网 | 国产美女h视频 | 久久大陆| 精品视频 免费 | 久久久www成人免费精品 | 九九热在线免费观看 | 国产一区不卡 | 久久精品视频在线免费观看 | 综合二区 | 九九热热九九 | 欧美理论片在线 |