[發明專利]內存管理方法、內存管理裝置及計算機有效
| 申請號: | 201210578708.6 | 申請日: | 2012-12-27 |
| 公開(公告)號: | CN103902462B | 公開(公告)日: | 2018-03-09 |
| 發明(設計)人: | 崔澤漢;陳明宇;陳荔城;黃永兵 | 申請(專利權)人: | 華為技術有限公司;中國科學院計算技術研究所 |
| 主分類號: | G06F12/02 | 分類號: | G06F12/02 |
| 代理公司: | 北京同立鈞成知識產權代理有限公司11205 | 代理人: | 譚磊 |
| 地址: | 518129 廣東*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 內存 管理 方法 裝置 計算機 | ||
技術領域
本發明實施例涉及內存數據處理技術,尤其涉及一種內存管理方法、內存管理裝置及計算機。
背景技術
隨著計算機技術的發展,內存管理變得越來越重要,優化內存管理方法可以大大提升計算機的系統性能。
內存地址分為物理地址和虛擬地址,程序看到的是虛擬內存空間,訪問時使用虛擬地址,而內存系統看到的是物理地址空間,訪問時使用物理地址。操作系統對內存的管理是以頁面為單位的,維護虛擬內存頁面到物理內存頁面的映射。程序申請內存時,操作系統先為其分配一系列虛擬內存頁面,但是并不映射到任何物理內存頁面;等到程序第一次訪問虛擬內存頁面時,就會產生缺頁中斷,由操作系統從空閑物理內存頁面中挑選出一個,建立從虛擬內存頁面到物理內存頁面的映射;以后再訪問該虛擬內存頁面時,訪存就會被自動映射到該物理內存頁面。若該物理內存頁面在設定時間內未被訪問,或當前內存空間不足時,則已建立映射關系但未處于訪問狀態的物理內存頁面可以再次被分配給其他虛擬內存頁面,則當該程序再次訪問虛擬內存頁面時,仍然會產生缺頁中斷。
上述過程中,產生缺頁中斷時,挑選空閑物理內存頁面,建立映射關系,稱為內存頁面分配。物理內存由內存并發操作單元(Bank)組成,每個內存并發操作單元可包括一組物理內存頁面,系統中的多個內存并發操作單元上的物理內存頁面可以被并行訪問。現有內存管理的一種方法是將所有的空閑物理內存頁面視為等同的,組織為一個空閑列表,操作系統分配物理內存頁面時,從空閑物理內存頁面列表的頭部分配。另一種方法是將每個內存并發操作單元的空閑物理內存頁面單獨組織為空閑列表,分配內存時為每個程序指定一個或多個內存并發操作單元,該程序申請的內存只能從這些內存并發操作單元的空閑列表的頭部分配。
上述兩種方法都在一定程度上提高空閑物理內存頁面分配的效率,但是第一種方法將所有空閑物理內存頁面視為等同,忽略了物理內存的組織結構,如果集中于同一內存并發操作單元的空閑物理內存頁面進行分配,就會造成內存并發操作單元之間訪存不均衡,不能發揮其并行處理的優勢。而第二種方法沒有考慮物理內存的動態訪問情況,比如有些物理內存頁面訪問比較頻繁,而另一些物理內存頁面基本沒有訪問,從而造成一組內存并發操作單元的訪問很密集,而另一組內存并發操作單元基本空閑,浪費了物理內存系統提供的并發性。
發明內容
本發明實施例提供一種內存管理方法、內存管理裝置及計算機,以解決內存并發操作單元訪問不均衡的問題,以實現空閑物理內存頁面的均勻分配,優化計算機系統性能。
第一方面,本發明實施例提供一種內存管理方法,包括:
當獲取到物理內存頁面分配請求時,根據各內存并發操作單元的歷史訪問信息,選擇訪問率低的內存并發操作單元,作為待分配的內存并發操作單元;
從所述待分配的內存并發操作單元中分配空閑物理內存頁面。
在第一方面的第一種可能的實現方式中,所述內存管理方法還包括:
獲取各內存并發操作單元的訪問信息;
根據所述訪問信息更新各內存并發操作單元的歷史訪問信息。
根據第一方面的第一種可能的實現方式,在第二種可能的實現方式中,獲取各內存并發操作單元的訪問信息包括:
通過內存控制器中的性能計數器,采集各內存并發操作單元的訪問信息;或
通過反饋通路,獲取監聽內存控制器的監聽卡采集到的各內存并發操作單元的訪問信息。
根據第一方面的第一種可能的實現方式,在第三種可能的實現方式中,從所述待分配的內存并發操作單元中分配空閑物理內存頁面之后,還包括:
判斷當前調度周期是否結束;
若是,則返回執行所述獲取各內存并發操作單元的訪問信息的操作;
若否,則返回執行選擇待分配的內存并發操作單元的操作。
在第一方面的第四種可能的實現方式中,根據各內存并發操作單元的歷史訪問信息,識別各內存并發操作單元的訪問密集度;
當訪問密集度低于第一門限值時,關閉處于打開狀態的設定關閉數量的內存并發操作單元;
當訪問密集度高于第二門限值時,打開處于關閉狀態的設定打開數量的內存并發操作單元。
根據第一方面的第四種可能的實現方式,在第五種可能的實現方式中,所述設定關閉數量為當前打開狀態的內存并發操作單元數量的二分之一;所述設定打開數量為當前打開狀態的內存并發操作單元數量。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于華為技術有限公司;中國科學院計算技術研究所,未經華為技術有限公司;中國科學院計算技術研究所許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210578708.6/2.html,轉載請聲明來源鉆瓜專利網。





