CN107861890A - 访存处理方法、装置及电子设备 - Google Patents

访存处理方法、装置及电子设备 Download PDF

Info

Publication number
CN107861890A
CN107861890A CN201610842961.6A CN201610842961A CN107861890A CN 107861890 A CN107861890 A CN 107861890A CN 201610842961 A CN201610842961 A CN 201610842961A CN 107861890 A CN107861890 A CN 107861890A
Authority
CN
China
Prior art keywords
sent
access request
gpu
cpu
cache
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.)
Granted
Application number
CN201610842961.6A
Other languages
English (en)
Other versions
CN107861890B (zh
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.)
Loongson Technology Corp Ltd
Original Assignee
Loongson Technology Corp 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 Loongson Technology Corp Ltd filed Critical Loongson Technology Corp Ltd
Priority to CN201610842961.6A priority Critical patent/CN107861890B/zh
Publication of CN107861890A publication Critical patent/CN107861890A/zh
Application granted granted Critical
Publication of CN107861890B publication Critical patent/CN107861890B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0842Multiuser, multiprocessor or multiprocessing cache systems for multiprocessing or multitasking
    • 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/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0844Multiple simultaneous or quasi-simultaneous cache accessing
    • 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/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0877Cache access modes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores
    • G06F9/522Barrier synchronisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1016Performance improvement

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

本发明提供了一种访存处理方法、装置及电子设备,涉及内存访问技术领域,解决了现有技术中CPU和GPU的运行效率较低的问题。所述访存处理方法包括:接收CPU和GPU发出的访存请求;根据GPU发出的访存请求,直接对系统内存中与GPU发出的访存请求相对应的数据进行访问操作;根据CPU发出的访存请求,判断高速缓存中是否有与CPU发出的访存请求相对应的数据,并根据判断结果对高速缓存中或者系统内存中与CPU发出的访存请求相对应的数据进行访问操作。本发明实施例适用于对CPU和GPU的访存请求进行处理。

Description

访存处理方法、装置及电子设备
技术领域
本发明涉及内存访问技术领域,尤其涉及一种访存处理方法、装置及电子设备。
背景技术
通常,CPU(Central Processing Unit,中央处理器)访问系统内存的方式有两种:一种是经过Cache(高速缓存)的方式,经过2级Cache命中检测后确定访存地址;一种是不经过Cache、直接访问内存的方式。对于GPU(Graphics Processing Unit,图形处理器)来说,访问系统内存的方式也包括直接访问内存和经过Cache再访问内存两种。
目前,CPU和GPU发出的内存请求地址,都是通过Cache转换之后再决定是否对内存进行数据读取操作。如果缓存命中,则直接返回数据,否则从内存单元中取回数据。
在实现本发明的过程中,发明人发现现有技术中至少存在如下技术问题:
由于CPU和GPU都要对Cache进行操作,因此会在Cache资源上形成竞争,导致CPU和GPU的运行效率较低。
发明内容
本发明提供的访存处理方法、装置及电子设备,能够提高CPU和GPU的运行效率。
第一方面,本发明提供一种访存处理方法,包括:
接收CPU和GPU发出的访存请求;
根据GPU发出的访存请求,直接对系统内存中与GPU发出的访存请求相对应的数据进行访问操作;
根据CPU发出的访存请求,判断高速缓存中是否有与CPU发出的访存请求相对应的数据,并根据判断结果对高速缓存中或者系统内存中与CPU发出的访存请求相对应的数据进行访问操作。
第二方面,本发明提供一种访存处理装置,包括:
接收单元,用于接收CPU和GPU发出的访存请求;
第一处理单元,用于根据GPU发出的访存请求,直接对系统内存中与GPU发出的访存请求相对应的数据进行访问操作;
判断单元,用于根据CPU发出的访存请求,判断高速缓存中是否有与CPU发出的访存请求相对应的数据;
第二处理单元,用于根据所述判断单元的判断结果对高速缓存中或者系统内存中与CPU发出的访存请求相对应的数据进行访问操作。
第三方面,本发明提供一种电子设备,所述电子设备包括上述访存处理装置。
本发明实施例提供的访存处理方法、装置及电子设备,对于GPU发出的访存请求,直接对系统内存中与GPU发出的访存请求相对应的数据进行访问操作,对于CPU发出的访存请求,判断高速缓存中是否有与CPU发出的访存请求相对应的数据,并根据判断结果对高速缓存中或者系统内存中与CPU发出的访存请求相对应的数据进行访问操作。与现有技术相比,GPU直接对系统内存中的数据进行访问操作,而不需要通过高速缓存,可以避免GPU与CPU在高速缓存资源上的竞争,使得高速缓存上的资源被CPU充分利用,从而提高CPU和GPU的运行效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明访存处理方法实施例一的流程图;
图2为本发明访存处理方法实施例二的流程图;
图3为本发明访存处理方法实施例二的工作流程方框图;
图4为本发明访存处理装置实施例一的结构示意图;
图5为本发明访存处理装置实施例二的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明提供一种访存处理方法,图1为本发明访存处理方法实施例一的流程图,如图1所示,本实施例的方法包括:
S11、接收CPU和GPU发出的访存请求。
其中,CPU和GPU发出的访存请求中都包括访存地址,用以确定待访问的数据的位置,该访存地址为高速缓存中的地址。
S12、根据GPU发出的访存请求,直接对系统内存中与GPU发出的访存请求相对应的数据进行访问操作。
具体地,首先将GPU发出的访存请求中的虚拟地址转换为对应系统内存中的物理地址,然后对所述系统内存中的物理地址相对应的数据进行访问操作。
其中,可以根据预先设置的GPU虚拟地址与内存物理地址之间的转换规则,将GPU发出的访存请求中的虚拟地址转换为对应系统内存中的物理地址。
可选地,首先,在BIOS中设置GPU地址段通过地址转换窗口的base(基址)、mask(掩码)值,这些值决定GPU发出的访存请求中的虚拟地址通过转换最终会访问的内存空间的物理地址。将GPU发出的访存请求中的虚拟地址加上base值,即可得到对应系统内存中的物理地址。mask值决定了GPU可访问的内存空间的大小。例如,将base、mask分别设置为0x0000000000000000、0xffffffff00000000,就是将全部4G空间都映射到内存,也即是GPU可访问所有4G内存空间。则在进行虚拟地址到物理地址的转换时,将GPU发出的访存请求中的虚拟地址加上0x0000000000000000,即可得到对应系统内存中的物理地址。
另外,在BIOS中设置GPU可访问连续空间的基址和大小,例如设置基址为0x110000000,大小设置为256MB,在内核中根据BIOS中设置的GPU可访问连续空间的基址和大小,确定GPU能访问的内存起始地址,以及可访问的地址范围。具体地,将之前计算出来的系统内存中的物理地址加上所设置的GPU可访问连续空间的基址,得到的物理地址即GPU能访问的内存起始地址,可访问的地址范围即从该物理地址起256MB的范围内。
S13、根据CPU发出的访存请求,判断高速缓存中是否有与CPU发出的访存请求相对应的数据,并根据判断结果对高速缓存中或者系统内存中与CPU发出的访存请求相对应的数据进行访问操作。
具体地,若高速缓存中有与CPU发出的访存请求相对应的数据,则直接对高速缓存中与CPU发出的访存请求相对应的数据进行访问操作;若高速缓存中没有与CPU发出的访存请求相对应的数据,则对系统内存中与CPU发出的访存请求相对应的数据进行访问操作。
本发明实施例提供的访存处理方法,对于GPU发出的访存请求,直接对系统内存中与GPU发出的访存请求相对应的数据进行访问操作,对于CPU发出的访存请求,判断高速缓存中是否有与CPU发出的访存请求相对应的数据,并根据判断结果对高速缓存中或者系统内存中与CPU发出的访存请求相对应的数据进行访问操作。与现有技术相比,GPU直接对系统内存中的数据进行访问操作,而不需要通过高速缓存,可以避免GPU与CPU在高速缓存资源上的竞争,使得高速缓存上的资源被CPU充分利用,从而提高CPU和GPU的运行效率。
本发明提供另一种访存处理方法,图2为本发明访存处理方法实施例二的流程图,如图2所示,本实施例的方法包括:
S21、接收CPU和GPU发出的访存请求。
其中,CPU和GPU发出的访存请求中都包括访存地址,用以确定待访问的数据的位置,该访存地址为高速缓存中的地址。
S22、根据GPU发出的访存请求,直接对系统内存中与GPU发出的访存请求相对应的数据进行访问操作。
具体地,首先将GPU发出的访存请求中的虚拟地址转换为对应系统内存中的物理地址,然后对所述系统内存中的物理地址相对应的数据进行访问操作。
可选地,根据预先设置的GPU虚拟地址与内存物理地址之间的转换规则,将GPU发出的访存请求中的虚拟地址转换为对应系统内存中的物理地址。
可选地,首先,在BIOS中设置GPU地址段通过地址转换窗口的base(基址)、mask(掩码)值,这些值决定GPU发出的访存请求中的虚拟地址通过转换最终会访问的内存空间的物理地址。将GPU发出的访存请求中的虚拟地址加上base值,即可得到对应系统内存中的物理地址。mask值决定了GPU可访问的内存空间的大小。例如,将base、mask分别设置为0x0000000000000000、0xffffffff00000000,就是将全部4G空间都映射到内存,也即是GPU可访问所有4G内存空间。则在进行虚拟地址到物理地址的转换时,将GPU发出的访存请求中的虚拟地址加上0x0000000000000000,即可得到对应系统内存中的物理地址。
另外,在BIOS中设置GPU可访问连续空间的基址和大小,例如设置基址为0x110000000,大小设置为256MB,在内核中根据BIOS中设置的GPU可访问连续空间的基址和大小,确定GPU能访问的内存起始地址,以及可访问的地址范围。具体地,将之前计算出来的系统内存中的物理地址加上所设置的GPU可访问连续空间的基址,得到的物理地址即GPU能访问的内存起始地址,可访问的地址范围即从该物理地址起256MB的范围内。
进一步地,在对系统内存中与GPU发出的访存请求相对应的数据进行访问操作之后,如果访问操作之后的数据发生了变更,且该与GPU发出的访存请求相对应的数据存在于高速缓存中,则根据GPU访问操作之后的数据,对高速缓存中相对应的数据进行更新,以保证高速缓存与系统内存之间数据的一致性。
如图3所示,系统内存分为两部分,虚线右侧的部分存储专门用于GPU访问的数据,GPU只能访问该部分的数据,不能访问虚线左侧的数据。根据GPU发出的访存请求,对虚线右侧部分存储的与GPU发出的访存请求相对应的数据进行访问操作。如果访问操作之后的数据发生了变更,且该与GPU发出的访存请求相对应的数据存在于高速缓存中,则对高速缓存中相对应的数据进行更新。
S23、根据CPU发出的访存请求,判断高速缓存中是否有与CPU发出的访存请求相对应的数据,若有,则执行步骤S24;若没有,则执行步骤S25。
具体地,根据CPU发出的访存请求中的访存地址,判断高速缓存中在该访存地址中是否存储有相应的数据,若有,则执行步骤S24;若没有,则执行步骤S25。
S24、直接对高速缓存中与CPU发出的访存请求相对应的数据进行访问操作。
进一步地,在直接对高速缓存中与CPU发出的访存请求相对应的数据进行访问操作之后,如果访问操作之后的数据发生了变更,则根据CPU访问操作之后的数据,对系统内存中相对应的数据进行更新,以保证高速缓存与系统内存之间数据的一致性。
S25、对系统内存中与CPU发出的访存请求相对应的数据进行访问操作。
进一步地,在对系统内存中与CPU发出的访存请求相对应的数据进行访问操作之后,根据CPU访问操作之后的系统内存中的数据,对高速缓存中的数据进行更新,以保证高速缓存与系统内存之间数据的一致性。
具体地,如果CPU当前时间用到内存中的某块数据,那么CPU在下一个时间段内用到这块数据周围的数据的可能性就非常大,将这个时间段中CPU用到的这块数据周围的数据存入高速缓存中,为下一个时间段的CPU使用做准备,这样的话当下一个时间段CPU需要数据了就可以直接从存储较快的高速缓存中取得需要的数据。
如图3所示,如果CPU进行访问操作的数据位于系统内存中虚线右侧的部分,也就是专门存储用于GPU访问的数据的部分,则GPU先对高速缓存中相对应的数据进行更新,以保证高速缓存与系统内存之间数据的一致性。
本发明实施例提供的访存处理方法,对于GPU发出的访存请求,直接对系统内存中与GPU发出的访存请求相对应的数据进行访问操作,对于CPU发出的访存请求,若高速缓存中有与CPU发出的访存请求相对应的数据,则直接对高速缓存中与CPU发出的访存请求相对应的数据进行访问操作,否则对系统内存中与CPU发出的访存请求相对应的数据进行访问操作。与现有技术相比,GPU直接对系统内存中的数据进行访问操作,而不需要通过高速缓存,可以避免GPU与CPU在高速缓存资源上的竞争,使得高速缓存上的资源被CPU充分利用,从而提高CPU和GPU的运行效率;此外,在GPU和CPU对高速缓存或系统内存中的数据进行访问操作之后,根据访问操作之后的数据对高速缓存或系统内存中的数据进行更新,以保证高速缓存与系统内存之间数据的一致性。
本发明实施例提供一种访存处理装置,图4为本发明访存处理装置实施例一的结构示意图,如图4所示,本实施例的装置包括:
接收单元11,用于接收CPU和GPU发出的访存请求;
其中,CPU和GPU发出的访存请求中都包括访存地址,用以确定待访问的数据的位置,该访存地址为高速缓存中的地址。
第一处理单元12,用于根据GPU发出的访存请求,直接对系统内存中与GPU发出的访存请求相对应的数据进行访问操作;
判断单元13,用于根据CPU发出的访存请求,判断高速缓存中是否有与CPU发出的访存请求相对应的数据;
第二处理单元14,用于根据所述判断单元13的判断结果对高速缓存中或者系统内存中与CPU发出的访存请求相对应的数据进行访问操作。
本发明实施例提供的访存处理装置,对于GPU发出的访存请求,直接对系统内存中与GPU发出的访存请求相对应的数据进行访问操作,对于CPU发出的访存请求,判断高速缓存中是否有与CPU发出的访存请求相对应的数据,并根据判断结果对高速缓存中或者系统内存中与CPU发出的访存请求相对应的数据进行访问操作。与现有技术相比,GPU直接对系统内存中的数据进行访问操作,而不需要通过高速缓存,可以避免GPU与CPU在高速缓存资源上的竞争,使得高速缓存上的资源被CPU充分利用,从而提高CPU和GPU的运行效率。
图5为本发明访存处理装置实施例二的结构示意图,如图5所示,可选地,所述第一处理单元12包括:
转换子单元121,用于将GPU发出的访存请求中的虚拟地址转换为对应系统内存中的物理地址;
第一处理子单元122,用于对所述系统内存中的物理地址相对应的数据进行访问操作。
可选地,所述转换子单元121,用于根据预先设置的GPU虚拟地址与内存物理地址之间的转换规则,将GPU发出的访存请求中的虚拟地址转换为对应系统内存中的物理地址。
进一步地,如图5所示,所述第二处理单元14包括:
第二处理子单元141,用于当高速缓存中有与CPU发出的访存请求相对应的数据时,直接对高速缓存中与CPU发出的访存请求相对应的数据进行访问操作;
第三处理子单元142,用于当高速缓存中没有与CPU发出的访存请求相对应的数据时,对系统内存中与CPU发出的访存请求相对应的数据进行访问操作。
进一步地,如图5所示,所述装置还包括:
第一更新单元15,用于在所述第一处理单元12根据GPU发出的访存请求,直接对系统内存中与GPU发出的访存请求相对应的数据进行访问操作之后,根据GPU访问操作之后的数据,对高速缓存中的数据进行更新。
进一步地,如图5所示,所述装置还包括:
第二更新单元16,用于在所述第二处理子单元141直接对高速缓存中与CPU发出的访存请求相对应的数据进行访问操作之后,根据CPU访问操作之后的高速缓存中的数据,对系统内存中的数据进行更新。
进一步地,如图5所示,所述装置还包括:
第三更新单元17,用于在所述第三处理子单元142对系统内存中与CPU发出的访存请求相对应的数据进行访问操作之后,根据CPU访问操作之后的系统内存中的数据,对高速缓存中的数据进行更新。
本发明实施例提供的访存处理装置,GPU直接对系统内存中的数据进行访问操作,而不需要通过高速缓存,可以避免GPU与CPU在高速缓存资源上的竞争,使得高速缓存上的资源被CPU充分利用,从而提高CPU和GPU的运行效率;此外,在GPU和CPU对高速缓存或系统内存中的数据进行访问操作之后,根据访问操作之后的数据对高速缓存或系统内存中的数据进行更新,以保证高速缓存与系统内存之间数据的一致性。
本发明实施例还提供一种电子设备,所述电子设备包括上述访存处理装置。
所述电子设备可以为台式计算机、笔记本电脑、手机、PAD等,但不仅限于此。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

Claims (11)

1.一种访存处理方法,其特征在于,包括:
接收CPU和GPU发出的访存请求;
根据GPU发出的访存请求,直接对系统内存中与GPU发出的访存请求相对应的数据进行访问操作;
根据CPU发出的访存请求,判断高速缓存中是否有与CPU发出的访存请求相对应的数据,并根据判断结果对高速缓存中或者系统内存中与CPU发出的访存请求相对应的数据进行访问操作。
2.根据权利要求1所述的方法,其特征在于,所述根据GPU发出的访存请求,直接对系统内存中与GPU发出的访存请求相对应的数据进行访问操作包括:
将GPU发出的访存请求中的虚拟地址转换为对应系统内存中的物理地址;
对所述系统内存中的物理地址相对应的数据进行访问操作。
3.根据权利要求2所述的方法,其特征在于,所述将GPU发出的访存请求中的虚拟地址转换为对应系统内存中的物理地址包括:根据预先设置的GPU虚拟地址与内存物理地址之间的转换规则,将GPU发出的访存请求中的虚拟地址转换为对应系统内存中的物理地址。
4.根据权利要求1所述的方法,其特征在于,所述根据判断结果对高速缓存中或者系统内存中与CPU发出的访存请求相对应的数据进行访问操作包括:
若高速缓存中有与CPU发出的访存请求相对应的数据,则直接对高速缓存中与CPU发出的访存请求相对应的数据进行访问操作;
若高速缓存中没有与CPU发出的访存请求相对应的数据,则对系统内存中与CPU发出的访存请求相对应的数据进行访问操作。
5.根据权利要求2所述的方法,其特征在于,在所述根据GPU发出的访存请求,直接对系统内存中与GPU发出的访存请求相对应的数据进行访问操作之后,所述方法还包括:
根据GPU访问操作之后的数据,对高速缓存中的数据进行更新。
6.一种访存处理装置,其特征在于,包括:
接收单元,用于接收CPU和GPU发出的访存请求;
第一处理单元,用于根据GPU发出的访存请求,直接对系统内存中与GPU发出的访存请求相对应的数据进行访问操作;
判断单元,用于根据CPU发出的访存请求,判断高速缓存中是否有与CPU发出的访存请求相对应的数据;
第二处理单元,用于根据所述判断单元的判断结果对高速缓存中或者系统内存中与CPU发出的访存请求相对应的数据进行访问操作。
7.根据权利要求6所述的装置,其特征在于,所述第一处理单元包括:
转换子单元,用于将GPU发出的访存请求中的虚拟地址转换为对应系统内存中的物理地址;
第一处理子单元,用于对所述系统内存中的物理地址相对应的数据进行访问操作。
8.根据权利要求7所述的装置,其特征在于,所述转换子单元,用于根据预先设置的GPU虚拟地址与内存物理地址之间的转换规则,将GPU发出的访存请求中的虚拟地址转换为对应系统内存中的物理地址。
9.根据权利要求6所述的装置,其特征在于,所述第二处理单元包括:
第二处理子单元,用于当高速缓存中有与CPU发出的访存请求相对应的数据时,直接对高速缓存中与CPU发出的访存请求相对应的数据进行访问操作;
第三处理子单元,用于当高速缓存中没有与CPU发出的访存请求相对应的数据时,对系统内存中与CPU发出的访存请求相对应的数据进行访问操作。
10.根据权利要求7所述的装置,其特征在于,所述装置还包括:
第一更新单元,用于在所述第一处理单元根据GPU发出的访存请求,直接对系统内存中与GPU发出的访存请求相对应的数据进行访问操作之后,根据GPU访问操作之后的数据,对高速缓存中的数据进行更新。
11.一种电子设备,其特征在于,所述电子设备包括如权利要求6至10中任一项所述的访存处理装置。
CN201610842961.6A 2016-09-22 2016-09-22 访存处理方法、装置及电子设备 Active CN107861890B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610842961.6A CN107861890B (zh) 2016-09-22 2016-09-22 访存处理方法、装置及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610842961.6A CN107861890B (zh) 2016-09-22 2016-09-22 访存处理方法、装置及电子设备

Publications (2)

Publication Number Publication Date
CN107861890A true CN107861890A (zh) 2018-03-30
CN107861890B CN107861890B (zh) 2020-04-14

Family

ID=61698850

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610842961.6A Active CN107861890B (zh) 2016-09-22 2016-09-22 访存处理方法、装置及电子设备

Country Status (1)

Country Link
CN (1) CN107861890B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109408407A (zh) * 2018-10-19 2019-03-01 龙芯中科技术有限公司 显示内存的分配方法和装置
CN109815192A (zh) * 2019-01-31 2019-05-28 深兰科技(上海)有限公司 一种嵌入式系统内存管理方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040263519A1 (en) * 2003-06-30 2004-12-30 Microsoft Corporation System and method for parallel execution of data generation tasks
CN102298567A (zh) * 2010-06-28 2011-12-28 安凯(广州)微电子技术有限公司 一种集成中央运算和图形加速的移动处理器架构
CN103927277A (zh) * 2014-04-14 2014-07-16 中国人民解放军国防科学技术大学 Cpu和gpu共享片上高速缓存的方法及装置
CN104615576A (zh) * 2015-03-02 2015-05-13 中国人民解放军国防科学技术大学 面向cpu+gpu处理器的混合粒度一致性维护方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040263519A1 (en) * 2003-06-30 2004-12-30 Microsoft Corporation System and method for parallel execution of data generation tasks
CN102298567A (zh) * 2010-06-28 2011-12-28 安凯(广州)微电子技术有限公司 一种集成中央运算和图形加速的移动处理器架构
CN103927277A (zh) * 2014-04-14 2014-07-16 中国人民解放军国防科学技术大学 Cpu和gpu共享片上高速缓存的方法及装置
CN104615576A (zh) * 2015-03-02 2015-05-13 中国人民解放军国防科学技术大学 面向cpu+gpu处理器的混合粒度一致性维护方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109408407A (zh) * 2018-10-19 2019-03-01 龙芯中科技术有限公司 显示内存的分配方法和装置
CN109815192A (zh) * 2019-01-31 2019-05-28 深兰科技(上海)有限公司 一种嵌入式系统内存管理方法及装置
CN109815192B (zh) * 2019-01-31 2024-06-11 深兰机器人(上海)有限公司 一种嵌入式系统内存管理方法及装置

Also Published As

Publication number Publication date
CN107861890B (zh) 2020-04-14

Similar Documents

Publication Publication Date Title
CN104133780B (zh) 一种跨页预取方法、装置及系统
JP6009589B2 (ja) マルチレベルのキャッシュ階層におけるキャストアウトを低減するための装置および方法
CN105095116B (zh) 缓存替换的方法、缓存控制器和处理器
CN105205014B (zh) 一种数据存储方法和装置
KR101485651B1 (ko) 메모리 액세스를 정확하게 예측하기 위한 영역 기반 기술
JP2019532412A (ja) プロセッサベースシステムにおける空間サービス品質(QoS)タグ付けを使用する異種メモリシステムの柔軟な管理の実現
CN109240946A (zh) 数据的多级缓存方法及终端设备
CN105677580A (zh) 访问缓存的方法和装置
CN113934655B (zh) 解决高速缓冲存储器地址二义性问题的方法和装置
CN107665095B (zh) 存储器空间管理的设备、方法及可读存储介质
US12099451B2 (en) Re-reference interval prediction (RRIP) with pseudo-LRU supplemental age information
CN113656330B (zh) 确定访问地址的方法和装置
CN113900966B (zh) 一种基于Cache的访存方法及装置
CN114258533A (zh) 在基于处理器的设备中优化对页表条目的访问
US8127079B2 (en) Intelligent cache injection
CN107861890A (zh) 访存处理方法、装置及电子设备
CN108874691A (zh) 数据预取方法和内存控制器
US8661169B2 (en) Copying data to a cache using direct memory access
CN103262052A (zh) 具有共享的输入/输出的安全分区
CN104850508B (zh) 基于数据局部性的访存方法
CN112148638A (zh) 用于存储器页的粒度分配的页表
CN113656331A (zh) 基于高低位的确定访问地址的方法和装置
CN103207844A (zh) 缓存系统及缓存访问方法
CN112988074B (zh) 一种存储系统管理软件适配方法及装置
CN103262053A (zh) 具有共享的输入/输出的安全分区

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
GR01 Patent grant
GR01 Patent grant
CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: 100095 Building 2, Longxin Industrial Park, Zhongguancun environmental protection technology demonstration park, Haidian District, Beijing

Patentee after: Loongson Zhongke Technology Co.,Ltd.

Address before: 100095 Building 2, Longxin Industrial Park, Zhongguancun environmental protection technology demonstration park, Haidian District, Beijing

Patentee before: LOONGSON TECHNOLOGY Corp.,Ltd.