【技术实现步骤摘要】
物理内存页分配方法和计算机系统
本专利技术涉及计算机领域,并且更具体地,涉及一种物理内存页分配方法和计算机系统。
技术介绍
随着技术的进步,新的多核、众核计算机系统不断出现,它们都包含了多个物理中央处理单元(CenterProcessingUnit,CPU),并且每个物理CPU上含有硬件缓存(硬件二级/三级缓存),被该物理CPU的各个逻辑CPU共享。CPU中硬件缓存管理的最小单位为缓存线(Cacheline),一般有32比特(Bytes)、64Bytes等;多个cacheline组成一个集合(set),比如4WaySET表示一个set包含4个cacheline;由一个物理页映射到CPU硬件缓存上所需要的连续set组成缓存块(cachebin),一个cachebin表示一种颜色,硬件缓存包含多少个cachebin就有多少种颜色。操作系统中内存管理以物理内存页为单位,一般为4KB;如果不同的物理内存页映射到不同cachebin上,这些物理内存页就具有不同的颜色,若映射到同一cachebin上,则它们具有相同的颜色。然而,由于同一个物理内存页只能映射到同一个cacheb ...
【技术保护点】
一种物理内存页分配方法,其特征在于,包括:为目标逻辑中央处理单元CPU分配至少一个颜色链表,其中,一个所述颜色链表由一种颜色的物理内存页组成,所述目标逻辑CPU被分配的颜色链表的颜色不同于所属物理CPU中其他逻辑CPU被分配的颜色链表的颜色;从所述目标逻辑CPU被分配的颜色链表中,为所述目标逻辑CPU绑定的任务分配物理内存页。
【技术特征摘要】
1.一种物理内存页分配方法,其特征在于,包括:为目标逻辑中央处理单元CPU分配至少一个颜色链表,其中,一个所述颜色链表由一种颜色的物理内存页组成,所述目标逻辑CPU被分配的颜色链表的颜色不同于所属物理CPU中其他逻辑CPU被分配的颜色链表的颜色;从所述目标逻辑CPU被分配的颜色链表中,为所述目标逻辑CPU绑定的任务分配物理内存页。2.根据权利要求1所述的方法,其特征在于,所述为目标逻辑CPU分配至少一个颜色链表,包括:根据所述目标逻辑CPU已绑定的任务的数量、实时性参数、缓存线失效带来的开销、内存开销和内存访问频率中的至少一种,以及所述所属物理CPU的物理内存页颜色的总数,为所述逻辑CPU分配物理内存页颜色;根据为所述逻辑CPU分配的物理内存页颜色,为所述目标逻辑CPU分配所述至少一个颜色链表。3.根据权利要求1或2所述的方法,其特征在于,所述为目标逻辑CPU分配至少一个颜色链表之前,所述方法还包括:建立具有一个或多个子单页面链表的单页面链表,其中,每一个子单页面链表由一种颜色的物理内存页组成且每一个子单页面链表的物理内存页的颜色不同于所述单页面链表中其他子单页面链表的物理内存页的颜色;所述为目标逻辑CPU分配至少一个颜色链表,包括:从所述单页面链表中的具有所述目标逻辑CPU所需颜色的物理内存页的子单页面链表中,为所述目标逻辑CPU分配所述至少一个颜色链表。4.根据权利要求1或2所述的方法,其特征在于,在为所述目标逻辑CPU绑定的任务分配物理内存页之前,所述方法还包括:获取所述目标逻辑CPU的着色策略,所述目标逻辑CPU的着色策略用于指示所述目标逻辑CPU被分配的颜色链表中的物理内存页的分配方式;所述为所述目标逻辑CPU绑定的任务分配物理内存页,包括:根据所述目标逻辑CPU的着色策略,从所述目标逻辑CPU被分配的颜色链表中,为所述目标逻辑CPU绑定的任务分配物理内存页。5.根据权利要求4所述的方法,其特征在于,所述获取所述目标逻辑CPU的着色策略,包括:确定用户是否针对所述目标逻辑CPU指定着色策略;在所述用户针对所述目标逻辑CPU指定着色策略时,将所述用户针对所述目标逻辑CPU指定的着色策略确定为所述目标逻辑CPU的着色策略;在所述用户未针对所述目标逻辑CPU指定着色策略时,将系统默认的着色策略确定为所述目标逻辑CPU的着色策略。6.根据权利要求4所述的方法,其特征在于,所述根据所述目标逻辑CPU的着色策略,从所述目标逻辑CPU被分配的颜色链表中,为所述目标逻辑CPU绑定的任务分配物理内存页,包括:根据所述目标逻辑CPU绑定的任务的数量以及所述目标逻辑CPU被分配的颜色链表的数量,为所述目标逻辑CPU绑定的任务平均分配所述目标逻辑CPU被分配的颜色链表;或者,根据所述至少一个颜色链表的颜色顺序,依次从所述至少一个颜色链表中的每一个颜色链表中,选取一个或多个物理内存页分配给所述目标逻辑CPU绑定的任务;或者,根据所述目标逻辑CPU中绑定的任务的页面分配参数,从所述目标逻辑CPU被分配的颜色链表中,为所述目标逻辑CPU绑定的任务分配物理内存页,所述绑定的任务的页面分配参数包括所述绑定的任务的实时性参数、内存访问频率、缓存线失效带来的开销和内存开销中的至少一种。7.根据权利要求6所述的方法,其特征在于,所述根据所述目标逻辑CPU绑定的任务的页面分配参数,从所述目标逻辑CPU被分配的颜色链表中,为所述目标逻辑CPU绑定的任务分配物理内存页,包括:确定用户是否针对所述目标逻辑CPU中绑定的任务指定页面分配参数;在所述用户针对所述目标逻辑CPU中绑定的任务指定页面分配参数时,根据所述用户指定的页面分配参数,从所述目标逻辑CPU被分配的颜色链表中,为所述目标逻辑CPU绑定的任务分配物理内存页;在所述用户未针对所述目标逻辑CPU中绑定的任务指定页面分配参数时,根据系统默认的页面分配参数,从所述目标逻辑CPU被分配的颜色链表中,为所述目标逻辑CPU绑定的任务分配物理内存页。8.根据权利要求1或2所述的方法,其特征在于,在为所述目标逻辑CPU绑定的任务分配物理内存页之前,所述方法还包括:根据第一任务的绑定参数,在确定所述目标逻辑CPU能满足所述第一任务的绑定参数所指示的要求时,将所述第一任务与所述目标逻辑CPU进行绑定,其中,所述第一任务的绑定参数包括所述第一任务的实时性参数、内存访问频率、缓存线失效带来的开销、内存开销和着色策略中的至少一种。9.根据权利要求8所述的方法,其特征在于,所述将所述第一任务与所述目标逻辑CPU进行绑定,包括:在所述第一任务被绑定到所述所属物理CPU中其他逻辑CPU时,获取用户输入的所述第一任务的绑定参数,以及根据所述第一任务的绑定参数,在确定所述第一任务的绑定参数所指示的要求不能被所述第一任务绑定的其他逻辑CPU满足但能被所述目标逻辑CPU满足时,解除所述第一任务与所述物理CPU中其他逻辑CPU的绑定,并将所述第一任务与所述目标逻辑CPU进行绑定。10.根...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。