CN108664411A - 一种内存链表及内存管理的优化方法 - Google Patents

一种内存链表及内存管理的优化方法 Download PDF

Info

Publication number
CN108664411A
CN108664411A CN201810415997.5A CN201810415997A CN108664411A CN 108664411 A CN108664411 A CN 108664411A CN 201810415997 A CN201810415997 A CN 201810415997A CN 108664411 A CN108664411 A CN 108664411A
Authority
CN
China
Prior art keywords
page
child list
memory
directed toward
list
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
CN201810415997.5A
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.)
Amlogic Shanghai Co Ltd
Amlogic Inc
Original Assignee
Amlogic Shanghai 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 Amlogic Shanghai Co Ltd filed Critical Amlogic Shanghai Co Ltd
Priority to CN201810415997.5A priority Critical patent/CN108664411A/zh
Publication of CN108664411A publication Critical patent/CN108664411A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0253Garbage collection, i.e. reclamation of unreferenced memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/12Replacement control
    • G06F12/121Replacement control using replacement algorithms
    • G06F12/123Replacement control using replacement algorithms with age lists, e.g. queue, most recently used [MRU] list or least recently used [LRU] list

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及计算机技术领域,尤其涉及一种内存链表,包括:一第一子链表;一第二子链表;第一表头;第二表头指针,指向第二子链表的第一个内存页;第一表头的前指针指向第二子链表的最后一个内存页;第二子链表中除第一个的其他内存页的前指针分别指向前一个内存页;第二子链表中的第一个内存页的前指针指向第一子链表中的最后一个内存页;第一表头的后指针指向第一子链表的第一个内存页;第一子链表中除最后一个的其他内存页的后指针分别指向后一个内存页;第一子链表中的最后一个内存页的后指针指向第二子链表中的第一个内存页;以及应用上述内存链表的内存管理的优化方法;能够对内存页进行分类存储和管理,保证内存管理的高效性。

Description

一种内存链表及内存管理的优化方法
技术领域
本发明涉及计算机处理技术领域,尤其涉及一种内存链表及内存管理的优化方法。
背景技术
CMA(Contiguous Memory Allocator连续内存分配器,简称CMA) 是Linux系统上设备使用大块内存的一个重要方法。在CMA技术没有出现之前,设备驱动程序通常都是使用预留的方式申明大块连续物理内存。由于这些预留的物理内存对Linux内核的内存管理框架而言是不可见的,因此如果预留的内存过多,会导致系统容易出现内存紧张的情况。而预留内存的设备驱动程序并不总是工作并持有内存的,这也造成了这部分内存的使用率低下,存在资源浪费的情况。
CMA技术很好的平衡了设备对大块连续内存的需求以及Linux内存管理之间的矛盾。内核通过在启动阶段对设备申明的CMA内存做特殊类型标记来识别CMA。并且,在设备驱动程序不使用CMA内存的时候,将其共享给应用程序的数据,而在设备驱动程序需要内存的时候,通过内存迁移、回收等方法整理出一块连续的内存区域提供给驱动。
LRU(Least Recently Used最近最少使用,简称LRU)是Linux 内存管理中的一种内存页置换算法。Linux系统对应用数据按照来源和活跃程度,分为四类:活跃文件缓存,不活跃文件缓存,活跃匿名页,不活跃匿名页。并且为每种类型的内存构建了一个LRU链表,如图1所示。图1中以活跃文件缓存为例,画出了LRU算法的大致示意图。内核为这种类型的内存页创建了一个双向链表头,这个链表结构有一个后方向和前方向,当有新的活跃文件缓存需要被添加到 LRU中来的时候,内核会将其插入到链表头的后方向后面,并将待插入内存页结构中的双向链表指针的后方向指向后续内存页,将待插入内存页的前方向指向表头,将后续内存页的前方向指向当前内存页。这样构成一个双循环链表结构,可以通过链表头很容易找到最新插入的内存页,以及最老插入的内存页。内存页越靠后,表明内存页在链表中的时间越久。
当内存不足的时候,内核会通过特定进程在LRU链表中,寻找比较老的内存页,如果内存页是文件缓存,则直接将其释放,如果是匿名页,则写入交换分区,以达到释放出足够内存空间的目的。显然,通过LRU算法以牺牲最近很少使用,不活跃的数据为代价,达到在内存紧张的时候保留近期频繁使用,活跃的数据,并且清理出足够内存空间的目的。这种方法对于提高系统性能显然大有帮助。
当使用CMA技术的时候,标记为CMA类型的内存,也会通过上述LRU算法将内存页串入到各个类型的LRU链表中。举例来说,图 2中排在第二和第四个的内存页的是CMA类型的内存页。此时CMA 内存页出现在链表中的位置实际上是随机的。
尽管前文提到,CMA技术能平衡驱动程序对大块连续物理内存的需求和系统内存紧张之间的矛盾。但是CMA的使用是有前提的。 Linux内核中,为了避免内存碎片化,将内存从是否可以被迁移的角度分成如下几个类别:MIGRATE_UNMOVABLE,MIGRATE_RECLAIMBLE,MIGRATE_MOVABLE,MIGTATE_CMA。这其中,用于存储CMA内存页的内存只能共享给 MIGRATE_MOVABLE类型的内存。
上述问题产生的原因是MIGRATE_UNMOVABLE, MIGRATE_RECLAIMBLE这两种类型的内存一般是内核自身以及驱动程序申请的内存,为节约空间,内核并没有给这些内存请求创建页表,内核无法在不影响内核以及驱动程序使用的情况下将其搬移。而 MIGRATE_MOVABLE是应用程序申请的内存,它们具有页表映射,当内核需要将这些内存搬移走的时候,内核会先将对应内存页标记为缺页,然后将其复制到新的内存中,同时创建好新的页表映射。这个过程对应用程序而言是透明的。所以MIGRATE_MOVABLE内存可以在系统中自由移动是CMA技术的基础。
平时驱动程序不使用这段内存,那么可以将其借用给 MIGRATE_MOVABLE类型的内存,以缓解内存紧张的问题。当驱动需要使用CMA的时候,内核负责将这些内存搬走即可。但是用于存储CMA内存页的内存是无论如何也不能借用给 MIGRATE_UNMOVABLE和MIGRATE_RECLAIMBLE这两种类型的内存。
正是由于CMA的这个共享限制,结合到LRU算法之后会导致如下问题:如果LRU链中位于链表尾部的内存页都是或者绝大部分都是CMA类型的内存页,并且这时候内核需要为MIGRATE_UNMOVABLE或MIGRATE_RECLAIMBLE类型的内存申请去LRU链上回收内存,那么按照LRU算法从链表的尾部开始回收。显而易见的是,回收到的大部分内存也都是CMA类型的内存页,它无法给申请者使用。这就导致了驱动或者内核容易出现内存分配失败,或者需要经过多次重试才能回收到适合的内存页,效率显得非常低。
在这种情况下的测试中曾经出现过扫描了链表中20000多个内存页才找出32个合适的内存页的情况。显然这大大降低了LRU算法的效率。
发明内容
针对上述问题,本发明提出了一种内存链表,其中,包括:
一第一子链表,用于放置依次排列的第一内存迁移类型的内存页;
一第二子链表,用于放置依次排列的第二内存迁移类型的内存页;
第一表头;
第二表头指针,指向所述第二子链表的第一个所述内存页;
所述第一表头和每个所述内存页均具有一前指针和一后指针;
所述第一表头的所述前指针指向所述第二子链表的最后一个所述内存页;
所述第二子链表中除第一个的其他所述内存页的所述前指针分别指向前一个所述内存页;
所述第二子链表中的第一个所述内存页的所述前指针指向所述第一子链表中的最后一个所述内存页;
所述第一表头的所述后指针指向所述第一子链表的第一个所述内存页;
所述第一子链表中除最后一个的其他所述内存页的所述后指针分别指向后一个所述内存页;
所述第一子链表中的最后一个所述内存页的所述后指针指向所述第二子链表中的第一个所述内存页。
上述的内存链表,其中,运行所述内存链表的处理器为64位。
上述的内存链表,其中,所述第二表头指针占用的内存容量为40 字节。
一种内存管理的优化方法,其中,应用于如上任一所述的内存链表;包括:
步骤S1,提供一新的所述内存页;
步骤S2,判断新的所述内存页为所述第一内存迁移类型还是所述第二内存迁移类型;
若为所述第一内存迁移类型,则转向步骤S3;若为所述第二内存迁移类型,则转向步骤S4;
步骤S3,对新的所述第一内存迁移类型的所述内存页的所述前指针和所述后指针进行赋值,使得新的所述内存页的所述前指针指向所述第一表头,以及所述后指针指向原先的第一个所述内存页;
步骤S4,对新的所述第二内存迁移类型的所述内存页的所述前指针和所述后指针进行赋值,使得新的所述内存页的所述前指针指向所述第一子链表中的最后一个所述内存页,以及所述后指针指向所述第二子链表中的原先的第一个所述内存页。
上述的优化方法,其中,回收所述内存页的具体方法为:
步骤A1,判断需要回收的所述内存页的类型为所述第一内存迁移类型还是所述第二内存迁移类型;
若为所述第一内存迁移类型,则转向所述步骤A2;若为所述第二内存迁移类型,则转向所述步骤A3;
步骤A2,回收所述第一子链表中的最后一个所述内存页;
步骤A3,回收所述第二子链表中的最后一个所述内存页。
上述的优化方法,其中,通过所述第一表头的所述后指针找到所述第二子链表中的最后一个所述内存页。
上述的优化方法,其中,通过所述第二表头指针指向的所述内存页的所述前指针找到所述第一子链表中的最后一个所述内存页。
上述的优化方法,其中,回收所述内存页时,优先回收所述第一子链表的尾部的所述内存页,直到所述第一子链表中的所述内存页的数量变成0。
有益效果:本发明提出的一种内存链表及内存管理的优化方法,能够对内存页进行分类存储和管理,保证内存管理的高效性。
附图说明
图1为本发明一实施例中内存链表的结构原理图;
图2为本发明一实施例中内存管理的优化方法的步骤原理图。
具体实施方式
下面结合附图和实施例对本发明进行进一步说明。
实施例一
如图1所示,在一个较佳的实施例中,提出了一种内存链表,其中,可以包括:
一第一子链表1,用于放置依次排列的第一内存迁移类型的内存页P;
一第二子链表2,用于放置依次排列的第二内存迁移类型的内存页P;
第一表头11;
第二表头指针12,指向第二子链表2的第一个内存页P;
第一表头11和每个内存页P均具有一前指针和一后指针;
第一表头11的前指针指向第二子链表2的最后一个内存页P;
第二子链表2中除第一个的其他内存页P的前指针分别指向前一个内存页P;
第二子链表2中的第一个内存页P的前指针指向第一子链表1中的最后一个内存页P;
第一表头11的后指针指向第一子链表1的第一个内存页P;
第一子链表1中除最后一个的其他内存页P的后指针分别指向后一个内存页P;
第一子链表1中的最后一个内存页P的后指针指向第二子链表2 中的第一个内存页P。
上述技术方案中,第一内存迁移类型可以是除CMA类型以外的任意类型,第二内存迁移类型可以是CMA类型,第一子链表1中的内存页P回收以后,可以共享给MIGRATE_UNMOVABLE或 MIGRATE_RECLAIMBLE类型的内存,从而缓解内存压力;将不同类型的内存页P插入至不同的子链表中,从而在采用一般的内存回收技术时,避免回收的内存页P总是为不活跃类型的内存页,从而保证了LRU链表的管理效率;第二内存迁移类型可以是多个子类型的集合,不应视为只能是单一的类型;内存页第一表头11可以视为是位于第一子链表1的首部;本发明中各个部分的结构均是处于LRU中的链表结构。
在一个较佳的实施例中,运行内存链表的处理器为64位。
上述实施例中,优选地,第二表头指针占用的内存容量为40字节左右。
实施例二
如图2所示,在一个较佳的实施例中,还提出了一种内存管理的优化方法,其中,可以应用于如上任一的内存链表;该优化方法可以包括:
步骤S1,提供一新的内存页P;
步骤S2,判断新的内存页P为第一内存迁移类型还是第二内存迁移类型;
若为第一内存迁移类型,则转向步骤S3;若为第二内存迁移类型,则转向步骤S4;
步骤S3,对新的第一内存迁移类型的内存页P的前指针和后指针进行赋值,使得新的内存页P的前指针指向第一表头11,以及后指针指向原先的第一个内存页P;
步骤S4,对新的第二内存迁移类型的内存页P的前指针和后指针进行赋值,使得新的内存页P的前指针指向第一子链表1中的最后一个内存页P,以及后指针指向第二子链表2中的原先的第一个内存页 P。
上述技术方案中,第一内存迁移类型可以是除CMA类型以外的任意类型,第二内存迁移类型可以是CMA类型,第一子链表1中的内存页P回收以后,可以共享给MIGRATE_UNMOVABLE或MIGRATE_RECLAIMBLE类型的内存,从而缓解内存压力;将不同类型的内存页P插入至不同的子链表中,从而在采用一般的内存回收技术时,避免回收的内存页P总是为不活跃类型的内存页,从而保证了LRU链表的管理效率;第二内存迁移类型可以是多个子类型的集合,不应视为只能是单一的类型;内存页P也可以称为内存页,可以对应一定的内存空间。
在一个较佳的实施例中,回收内存页的具体方法可以为:
步骤A1,判断需要回收的内存页P的类型为第一内存迁移类型还是第二内存迁移类型;
若为第一内存迁移类型,则转向步骤A2;若为第二内存迁移类型,则转向步骤A3;
步骤A2,回收第一子链表1中的最后一个内存页P;
步骤A3,回收第二子链表2中的最后一个内存页P。
上述实施例中,优选地,可以通过第一表头11的后指针找到第二子链表2中的最后一个内存页P。
上述实施例中,优选地,可以通过第二表头指针12指向的内存页 P的前指针找到第一子链表1中的最后一个内存页P。
在一个较佳的实施例中,回收内存页P时,可以优先回收第一子链表1的尾部的内存页P,直到第一子链表1中的内存页P的数量变成0。
综上所述,本发明提出的一种内存链表,包括:一第一子链表,用于放置依次排列的第一内存迁移类型的内存页;一第二子链表,用于放置依次排列的第二内存迁移类型的内存页;第一表头;第二表头指针,指向第二子链表的第一个内存页;第一表头和每个内存页均具有一前指针和一后指针;第一表头的前指针指向第二子链表的最后一个内存页;第二子链表中除第一个的其他内存页的前指针分别指向前一个内存页;第二子链表中的第一个内存页的前指针指向第一子链表中的最后一个内存页;第一表头的后指针指向第一子链表的第一个内存页;第一子链表中除最后一个的其他内存页的后指针分别指向后一个内存页;第一子链表中的最后一个内存页的后指针指向第二子链表中的第一个内存页;以及应用上述内存链表的内存管理的优化方法;能够对内存页进行分类存储和管理,保证内存管理的高效性。
通过说明和附图,给出了具体实施方式的特定结构的典型实施例,基于本发明精神,还可作其他的转换。尽管上述发明提出了现有的较佳实施例,然而,这些内容并不作为局限。
对于本领域的技术人员而言,阅读上述说明后,各种变化和修正无疑将显而易见。因此,所附的权利要求书应看作是涵盖本发明的真实意图和范围的全部变化和修正。在权利要求书范围内任何和所有等价的范围与内容,都应认为仍属本发明的意图和范围内。

Claims (6)

1.一种内存链表,其特征在于,包括:
一第一子链表,用于放置依次排列的第一内存迁移类型的内存页;
一第二子链表,用于放置依次排列的第二内存迁移类型的内存页;
第一表头;
第二表头指针,指向所述第二子链表的第一个所述内存页;
所述第一表头和每个所述内存页均具有一前指针和一后指针;
所述第一表头的所述前指针指向所述第二子链表的最后一个所述内存页;
所述第二子链表中除第一个的其他所述内存页的所述前指针分别指向前一个所述内存页;
所述第二子链表中的第一个所述内存页的所述前指针指向所述第一子链表中的最后一个所述内存页;
所述第一表头的所述后指针指向所述第一子链表的第一个所述内存页;
所述第一子链表中除最后一个的其他所述内存页的所述后指针分别指向后一个所述内存页;
所述第一子链表中的最后一个所述内存页的所述后指针指向所述第二子链表中的第一个所述内存页。
2.一种内存管理的优化方法,其特征在于,应用于如权利要求1所述的内存链表;包括:
步骤S1,提供一新的所述内存页;
步骤S2,判断新的所述内存页为所述第一内存迁移类型还是所述第二内存迁移类型;
若为所述第一内存迁移类型,则转向步骤S3;若为所述第二内存迁移类型,则转向步骤S4;
步骤S3,对新的所述第一内存迁移类型的所述内存页的所述前指针和所述后指针进行赋值,使得新的所述内存页的所述前指针指向所述第一表头,以及所述后指针指向原先的第一个所述内存页;
步骤S4,对新的所述第二内存迁移类型的所述内存页的所述前指针和所述后指针进行赋值,使得新的所述内存页的所述前指针指向所述第一子链表中的最后一个所述内存页,以及所述后指针指向所述第二子链表中的原先的第一个所述内存页。
3.根据权利要求2所述的优化方法,其特征在于,回收所述内存页的具体方法为:
步骤A1,判断需要回收的所述内存页的类型为所述第一内存迁移类型还是所述第二内存迁移类型;
若为所述第一内存迁移类型,则转向所述步骤A2;若为所述第二内存迁移类型,则转向所述步骤A3;
步骤A2,回收所述第一子链表中的最后一个所述内存页;
步骤A3,回收所述第二子链表中的最后一个所述内存页。
4.根据权利要求3所述的优化方法,其特征在于,通过所述第一表头的所述后指针找到所述第二子链表中的最后一个所述内存页。
5.根据权利要求3所述的优化方法,其特征在于,通过所述第二表头指针指向的所述内存页的所述前指针找到所述第一子链表中的最后一个所述内存页。
6.根据权利要求2所述的优化方法,其特征在于,回收所述内存页时,优先回收所述第一子链表的尾部的所述内存页,直到所述第一子链表中的所述内存页的数量变成0。
CN201810415997.5A 2018-05-03 2018-05-03 一种内存链表及内存管理的优化方法 Pending CN108664411A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810415997.5A CN108664411A (zh) 2018-05-03 2018-05-03 一种内存链表及内存管理的优化方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810415997.5A CN108664411A (zh) 2018-05-03 2018-05-03 一种内存链表及内存管理的优化方法

Publications (1)

Publication Number Publication Date
CN108664411A true CN108664411A (zh) 2018-10-16

Family

ID=63781678

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810415997.5A Pending CN108664411A (zh) 2018-05-03 2018-05-03 一种内存链表及内存管理的优化方法

Country Status (1)

Country Link
CN (1) CN108664411A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111352554A (zh) * 2018-12-24 2020-06-30 杭州海康威视数字技术股份有限公司 一种在电子设备上进行翻页的方法及装置
CN111782559A (zh) * 2020-07-06 2020-10-16 Oppo广东移动通信有限公司 一种页面管理方法、装置及计算机可读存储介质
CN112052089A (zh) * 2020-09-01 2020-12-08 Oppo(重庆)智能科技有限公司 内存回收方法、装置以及电子设备
CN112181863A (zh) * 2020-10-19 2021-01-05 Oppo广东移动通信有限公司 页面回收方法、装置、终端及存储介质
CN114443277A (zh) * 2020-10-31 2022-05-06 华为终端有限公司 内存管理方法、装置、电子设备以及计算机可读存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101470665A (zh) * 2007-12-27 2009-07-01 Tcl集团股份有限公司 一种无mmu平台的应用系统内存管理的方法及系统
CN103064881A (zh) * 2012-12-03 2013-04-24 深圳市汇川控制技术有限公司 动态内存分配中的环形数据管理器及环形数据管理方法
CN103150259A (zh) * 2013-03-22 2013-06-12 华为技术有限公司 一种内存回收方法和装置
CN106844224A (zh) * 2016-12-21 2017-06-13 华中科技大学 一种基于nvram的内存分配链表及内存分配方法
CN106970882A (zh) * 2017-03-10 2017-07-21 浙江大学 一种基于Linux大页内存的易扩展页面架构
CN107885666A (zh) * 2016-09-28 2018-04-06 华为技术有限公司 一种内存管理方法和装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101470665A (zh) * 2007-12-27 2009-07-01 Tcl集团股份有限公司 一种无mmu平台的应用系统内存管理的方法及系统
CN103064881A (zh) * 2012-12-03 2013-04-24 深圳市汇川控制技术有限公司 动态内存分配中的环形数据管理器及环形数据管理方法
CN103150259A (zh) * 2013-03-22 2013-06-12 华为技术有限公司 一种内存回收方法和装置
CN107885666A (zh) * 2016-09-28 2018-04-06 华为技术有限公司 一种内存管理方法和装置
CN106844224A (zh) * 2016-12-21 2017-06-13 华中科技大学 一种基于nvram的内存分配链表及内存分配方法
CN106970882A (zh) * 2017-03-10 2017-07-21 浙江大学 一种基于Linux大页内存的易扩展页面架构

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
毛婷: "Linux存储结构分析", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111352554A (zh) * 2018-12-24 2020-06-30 杭州海康威视数字技术股份有限公司 一种在电子设备上进行翻页的方法及装置
CN111782559A (zh) * 2020-07-06 2020-10-16 Oppo广东移动通信有限公司 一种页面管理方法、装置及计算机可读存储介质
CN112052089A (zh) * 2020-09-01 2020-12-08 Oppo(重庆)智能科技有限公司 内存回收方法、装置以及电子设备
CN112181863A (zh) * 2020-10-19 2021-01-05 Oppo广东移动通信有限公司 页面回收方法、装置、终端及存储介质
CN114443277A (zh) * 2020-10-31 2022-05-06 华为终端有限公司 内存管理方法、装置、电子设备以及计算机可读存储介质

Similar Documents

Publication Publication Date Title
CN108664411A (zh) 一种内存链表及内存管理的优化方法
US10387315B2 (en) Region migration cache
US10169232B2 (en) Associative and atomic write-back caching system and method for storage subsystem
US5237673A (en) Memory management method for coupled memory multiprocessor systems
US5651136A (en) System and method for increasing cache efficiency through optimized data allocation
US8327109B2 (en) GPU support for garbage collection
US8453015B2 (en) Memory allocation for crash dump
Torres et al. Understanding the impact of CUDA tuning techniques for Fermi
CN110276454B (zh) 用于机器学习的系统和控制该系统的方法以及电子系统
CN108959113B (zh) 用于闪存感知堆存储器管理的方法和系统
US9262332B2 (en) Memory management with priority-based memory reclamation
KR20070075640A (ko) 요구 페이징 기법을 적용한 시스템에서 페이지 교체 수행시간을 단축시키는 방법 및 장치
CN111813710B (zh) 避免Linux内核内存碎片方法、设备及计算机存储介质
US20200264970A1 (en) Memory management system
US20060123196A1 (en) System, method and computer program product for application-level cache-mapping awareness and reallocation requests
US20030097538A1 (en) Automatic program restructuring to reduce average cache miss penalty
CN106775684A (zh) 一种基于新型非易失性存储器的磁盘缓存掉电恢复方法
CN113138851B (zh) 一种数据管理方法、相关装置及系统
US20210157737A1 (en) Methods and systems for fetching data for an accelerator
US8990537B2 (en) System and method for robust and efficient free chain management
US20220414013A1 (en) Dynamically coalescing atomic memory operations for memory-local computing
US10488911B2 (en) Method and computing system of allocating registers
CN109871355A (zh) 一种快照元数据存储方法、装置及设备、介质
US11847074B2 (en) Input/output device operational modes for a system with memory pools
Li et al. REMOC: efficient request managements for on-chip memories of GPUs

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20181016