CN104123192A - 一种linux系统下基于内存子系统的性能调优方法 - Google Patents

一种linux系统下基于内存子系统的性能调优方法 Download PDF

Info

Publication number
CN104123192A
CN104123192A CN201410379213.XA CN201410379213A CN104123192A CN 104123192 A CN104123192 A CN 104123192A CN 201410379213 A CN201410379213 A CN 201410379213A CN 104123192 A CN104123192 A CN 104123192A
Authority
CN
China
Prior art keywords
memory
file
proc
caches
linux system
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201410379213.XA
Other languages
English (en)
Inventor
刘丽
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inspur Electronic Information Industry Co Ltd
Original Assignee
Inspur Electronic Information Industry Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Inspur Electronic Information Industry Co Ltd filed Critical Inspur Electronic Information Industry Co Ltd
Priority to CN201410379213.XA priority Critical patent/CN104123192A/zh
Publication of CN104123192A publication Critical patent/CN104123192A/zh
Pending legal-status Critical Current

Links

Abstract

本发明提供一种linux系统下基于内存子系统的性能调优方法,linux系统在进行新的任务前,会首先去执行释放内存的动作,以释放系统不再运行的任务,在运行时所形成的cache。这样会有更多的内存空间供系统中要执行的用户应用程序运行,可以提升系统的整体性能值,具体步骤是:通过linux系统下的虚拟文件系统/proc,修改/proc/sys/vm/drop_caches文件来对内存进行调整,释放已不再使用的cache回归系统,cpu调用文件时,缓存及时提供CPU所需的文件。

Description

一种linux系统下基于内存子系统的性能调优方法
技术领域
本发明涉及计算机应用领域,具体地说是一种linux系统下基于内存子系统的性能调优方法。
背景技术
在linux系统中,对于内存优化管理,直接影响到整个系统性能的发挥。系统在执行用户任务时,各种应用程序频繁的访问及调用文件,从磁盘调入内存的文件,使得系统内存很快被写满。此时如果再需要调用新文件时,则必须把将内存中暂不使用文件释放,再从硬盘调入所需文件,处理器等待到文件被调进内存后才可使用文件,这样势必造成处理器等待的资源浪费;而当用户任务执行完毕后,其调用的应用程序所占用的系统内存并不能够被正常释放,而是被当做cache。当系统执行其他任务时,还需要重复从磁盘到内存的文件替换,处理器等待的过程,这导致了整体系统性能的下降。
Linux系统的缓存机制是针对dentry(用于VFS,加速文件路径名到inode的转换)、Buffer Cache(针对磁盘块的读写)和Page Cache(针对文件inode的读写)进行缓存操作。但是在进行了大量文件操作之后,缓存会把内存资源基本用光。但实际上我们文件操作已经完成,这部分缓存已经用不到了。如果不进行内存的释放,会导致系统因为物理内存被占满。linux系统下的swap分区,是系统在磁盘中划分出的一部分空间,作为虚拟的内存空间。其存取速度大于磁盘存取速度,但是远低于内存存取速度。当内存容量不够时,系统会自动分配swap做为内存使用,由于虚拟内存的存取速度因素,导致测试的最终性能结果值较低。因此及时释放作为cache的内存,对于性能有较好的提升。
发明内容
本发明的目的是提供一种linux系统下基于内存子系统的性能调优方法。本方法适用于linux系统下内存子系统性能调优对性能测试结果有较大影响的性能测试领域。
本发明的目的是按以下方式实现的,通过linux系统下的虚拟文件系统/proc,修改/proc/sys/vm/drop_caches文件来对内存进行调整,释放已不再使用的cache回归系统,cpu调用文件时,缓存及时提供CPU所需的文件Linux系统下的内存子系统性能调优具体实现步骤如下:
1)linux系统下系统文件/proc/sys/vm/drop_caches中,可选参数值所代表意义为:
可选参数1表示free pagecache;
可选参数2表示free dentries and inodes;
可选参数3表示free pagecache, dentries and inodes
为彻底释放buffer与cache,选择值3.
2)运行sync 命令以确保linux文件系统的完整性
3)设置文件值:
  echo 3>/proc/sys/vm/drop_caches
内存子系统的性能调优后,linux系统在进行新的任务前,会首先去执行释放内存的动作,以释放系统不再运行的任务,以腾出更多的内存空间供应用程序调用,这样会有更多的内存空间供系统执行用户新的应用程序运行,以提升系统的整体性能值。
所述的linux系统下基于内存子系统的性能调优方法,是在linux系统中,/proc为虚拟文件系统,通过对此虚拟文件的读写作为kernel与硬件间的通讯,本调优方法就是通过调整/proc/sys/vm/drop_caches来对内存进行调整,释放已不再使用的cache。
本发明的有益效果是:linux系统在进行新的任务前,会首先去执行释放内存的动作,以释放系统不再运行的任务,在运行时所形成的cache。这样会有更多的内存空间供系统中要执行的用户应用程序运行,可以提升系统的整体性能值。
附图说明
图1是系统内存分配逻辑图。
具体实施方式
参照说明书附图对本发明的方法作以下详细地说明。
本发明的一种linux系统下基于内存子系统的性能调优方法,是通过linux系统下的虚拟文件系统/proc,修改/proc/sys/vm/drop_caches文件来对内存进行调整,释放已不再使用的cache回归系统,cpu调用文件时,缓存及时提供CPU所需的文件。
在系统中,通过命令:
#free –m
查看内存使用情况。
linux系统下查询内存使用结果如下:
# free -m
             total       used       free     shared    buffers     cached
Mem:         totalnum    used1      free1          0   buffer      cached
-/+ buffers/cache:      used2       free2
Swap:        --          --         ---
内存使用关系式为:
Total(totalnum)=used(used1)+  free(free1)
-/buffer/cache:used(used2)=used(used1) - buffers – cached
+/buffer/cache:free(free2)=free(free1)+ buffers + cached
    通过内存使用关系式及内存分配逻辑图可以看出,-/buffer/cached中的used(used2)是被实实在在的程序吃掉的内存部分。而看似被分配内存的used1,其中buffer与cached的部分存在一些已不再运行的程序,还在占用。因此通过优化,清除不再运行的程序所占用的buffer与cache,得到真正空闲内存的容量,即+/buffer/cached中的free2才是系统中真正的空闲内存容量。
Linux系统下的具体实现步骤:
1.linux系统下系统文件/proc/sys/vm/drop_caches中,可选参数值所代表意义为:
可选参数1表示free pagecache;
可选参数2表示free dentries and inodes;
可选参数3表示free pagecache, dentries and inodes
为彻底释放buffer与cache,选择值3.
2. 运行sync 命令以确保linux文件系统的完整性
3.设置文件值:
  echo 3>/proc/sys/vm/drop_caches
这样设置后,linux系统在进行新的任务前,会首先去执行释放内存的动作,以释放系统不再运行的任务,在运行时所形成的cache。这样会有更多的内存空间供系统中要执行的用户应用程序运行,可以提升系统的整体性能值。
除说明书所述的技术特征外,均为本专业技术人员的已知技术。

Claims (2)

1.一种linux系统下基于内存子系统的性能调优方法, 其特征在于通过linux系统下的虚拟文件系统/proc,修改/proc/sys/vm/drop_caches文件来对内存进行调整,释放已不再使用的cache回归系统,cpu调用文件时,缓存及时提供CPU所需的文件Linux系统下的内存子系统性能调优具体实现步骤如下:
1)linux系统下系统文件/proc/sys/vm/drop_caches中,可选参数值所代表意义为:
可选参数1表示free pagecache;
可选参数2表示free dentries and inodes;
可选参数3表示free pagecache, dentries and inodes
为彻底释放buffer与cache,选择值3.
2)运行sync 命令以确保linux文件系统的完整性
3)设置文件值:
  echo 3>/proc/sys/vm/drop_caches
内存子系统的性能调优后,linux系统在进行新的任务前,会首先去执行释放内存的动作,以释放系统不再运行的任务,以腾出更多的内存空间供应用程序调用,这样会有更多的内存空间供系统执行用户新的应用程序运行,以提升系统的整体性能值。
2.根据权利要求1所述的linux系统下基于内存子系统的性能调优方法,其特征在于,在linux系统中,/proc为虚拟文件系统,通过对此虚拟文件的读写作为kernel与硬件间的通讯,本调优方法就是通过调整/proc/sys/vm/drop_caches来对内存进行调整,释放已不再使用的cache。
CN201410379213.XA 2014-08-04 2014-08-04 一种linux系统下基于内存子系统的性能调优方法 Pending CN104123192A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410379213.XA CN104123192A (zh) 2014-08-04 2014-08-04 一种linux系统下基于内存子系统的性能调优方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410379213.XA CN104123192A (zh) 2014-08-04 2014-08-04 一种linux系统下基于内存子系统的性能调优方法

Publications (1)

Publication Number Publication Date
CN104123192A true CN104123192A (zh) 2014-10-29

Family

ID=51768613

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410379213.XA Pending CN104123192A (zh) 2014-08-04 2014-08-04 一种linux系统下基于内存子系统的性能调优方法

Country Status (1)

Country Link
CN (1) CN104123192A (zh)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104794035A (zh) * 2015-04-30 2015-07-22 浪潮电子信息产业股份有限公司 一种基于rhel7.0的内存测试方法及装置
US9886670B2 (en) 2014-06-30 2018-02-06 Amazon Technologies, Inc. Feature processing recipes for machine learning
US10102480B2 (en) 2014-06-30 2018-10-16 Amazon Technologies, Inc. Machine learning service
US10257275B1 (en) 2015-10-26 2019-04-09 Amazon Technologies, Inc. Tuning software execution environments using Bayesian models
US10318882B2 (en) 2014-09-11 2019-06-11 Amazon Technologies, Inc. Optimized training of linear machine learning models
CN109992574A (zh) * 2019-04-10 2019-07-09 苏州浪潮智能科技有限公司 一种自动调整并行文件系统的参数的方法及装置
US10452992B2 (en) 2014-06-30 2019-10-22 Amazon Technologies, Inc. Interactive interfaces for machine learning model evaluations
US10540606B2 (en) 2014-06-30 2020-01-21 Amazon Technologies, Inc. Consistent filtering of machine learning data
US10963810B2 (en) 2014-06-30 2021-03-30 Amazon Technologies, Inc. Efficient duplicate detection for machine learning data sets
US11100420B2 (en) 2014-06-30 2021-08-24 Amazon Technologies, Inc. Input processing for machine learning
US11182691B1 (en) 2014-08-14 2021-11-23 Amazon Technologies, Inc. Category-based sampling of machine learning data

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100420132B1 (ko) * 2001-05-30 2004-03-02 라인식 리눅스 커널 기반의 실시간 탐지 방법
US7720671B2 (en) * 2006-11-30 2010-05-18 Oracle America, Inc. Method and system for child-parent mechanism emulation via a general interface
CN102902563A (zh) * 2012-09-24 2013-01-30 中标软件有限公司 Linux操作系统及其启动过程中挂载文件系统的方法
CN102957563A (zh) * 2011-08-16 2013-03-06 中国石油化工股份有限公司 Linux集群故障自动恢复方法和Linux集群故障自动恢复系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100420132B1 (ko) * 2001-05-30 2004-03-02 라인식 리눅스 커널 기반의 실시간 탐지 방법
US7720671B2 (en) * 2006-11-30 2010-05-18 Oracle America, Inc. Method and system for child-parent mechanism emulation via a general interface
CN102957563A (zh) * 2011-08-16 2013-03-06 中国石油化工股份有限公司 Linux集群故障自动恢复方法和Linux集群故障自动恢复系统
CN102902563A (zh) * 2012-09-24 2013-01-30 中标软件有限公司 Linux操作系统及其启动过程中挂载文件系统的方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
SKATE: "手工释放linux内存——/proc/sys/vm/drop_cache", 《HTTP://BLOG.CSDN.NET/WYZXG/ARTICLE/DETAILS/7279986》 *

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9886670B2 (en) 2014-06-30 2018-02-06 Amazon Technologies, Inc. Feature processing recipes for machine learning
US10102480B2 (en) 2014-06-30 2018-10-16 Amazon Technologies, Inc. Machine learning service
US10452992B2 (en) 2014-06-30 2019-10-22 Amazon Technologies, Inc. Interactive interfaces for machine learning model evaluations
US10540606B2 (en) 2014-06-30 2020-01-21 Amazon Technologies, Inc. Consistent filtering of machine learning data
US10963810B2 (en) 2014-06-30 2021-03-30 Amazon Technologies, Inc. Efficient duplicate detection for machine learning data sets
US11100420B2 (en) 2014-06-30 2021-08-24 Amazon Technologies, Inc. Input processing for machine learning
US11544623B2 (en) 2014-06-30 2023-01-03 Amazon Technologies, Inc. Consistent filtering of machine learning data
US11182691B1 (en) 2014-08-14 2021-11-23 Amazon Technologies, Inc. Category-based sampling of machine learning data
US10318882B2 (en) 2014-09-11 2019-06-11 Amazon Technologies, Inc. Optimized training of linear machine learning models
CN104794035A (zh) * 2015-04-30 2015-07-22 浪潮电子信息产业股份有限公司 一种基于rhel7.0的内存测试方法及装置
US10257275B1 (en) 2015-10-26 2019-04-09 Amazon Technologies, Inc. Tuning software execution environments using Bayesian models
CN109992574A (zh) * 2019-04-10 2019-07-09 苏州浪潮智能科技有限公司 一种自动调整并行文件系统的参数的方法及装置

Similar Documents

Publication Publication Date Title
CN104123192A (zh) 一种linux系统下基于内存子系统的性能调优方法
US10467152B2 (en) Dynamic cache management for in-memory data analytic platforms
US10204175B2 (en) Dynamic memory tuning for in-memory data analytic platforms
US9047196B2 (en) Usage aware NUMA process scheduling
US20180349204A1 (en) Method and apparatus for implementing virtual gpu and system
US8499010B2 (en) Garbage collection in a multiple virtual machine environment
JP5585655B2 (ja) システム制御装置、ログ制御方法および情報処理装置
US10073721B2 (en) Non-blocking writes to file data
JP2014517434A (ja) コンピュータにより実行される方法及びコンピュータシステム
US10083058B2 (en) Batched memory page hinting
US11243877B2 (en) Method, apparatus for data management, and non-transitory computer-readable storage medium for storing program
US20210192046A1 (en) Resource Management Unit for Capturing Operating System Configuration States and Managing Malware
CN111813710B (zh) 避免Linux内核内存碎片方法、设备及计算机存储介质
US11782761B2 (en) Resource management unit for capturing operating system configuration states and offloading tasks
CN108038062B (zh) 嵌入式系统的内存管理方法和装置
US11940915B2 (en) Cache allocation method and device, storage medium, and electronic device
US9697047B2 (en) Cooperation of hoarding memory allocators in a multi-process system
CN110209354B (zh) 用于处理数据的方法、装置、设备和介质
KR102469927B1 (ko) 분할 메모리 관리장치 및 방법
US11436141B2 (en) Free memory page hinting by virtual machines
US8990537B2 (en) System and method for robust and efficient free chain management
Lim et al. Virtual memory partitioning for enhancing application performance in mobile platforms
Qin et al. Nuka: A generic engine with millisecond initialization for serverless computing
US20140149691A1 (en) Data processing system and data processing method
US20210191776A1 (en) Resource Management Unit for Capturing Operating System Configuration States and Memory Management

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20141029

WD01 Invention patent application deemed withdrawn after publication