[发明专利]提升服务器性能的方法及装置和电子设备有效
申请号: | 201811400344.6 | 申请日: | 2018-11-22 |
公开(公告)号: | CN110032441B | 公开(公告)日: | 2023-03-28 |
发明(设计)人: | 马凌;何昌华 | 申请(专利权)人: | 创新先进技术有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50 |
代理公司: | 北京博思佳知识产权代理有限公司 11415 | 代理人: | 林祥 |
地址: | 开曼群岛大开曼岛*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 提升 服务器 性能 方法 装置 电子设备 | ||
本说明书实施例提供一种提升服务器性能的方法及装置和电子设备,所述服务器包含A个CPU,所述CPU包含B个内核,所述内核包含C个核心;每个内核设置有对应的内核锁,每个CPU设置有对应的CPU锁,所述服务器设置有对应的服务器锁,所述方法包括:令每个CPU的每个内核中的C个核心之间争抢内核锁,获取争抢到内核锁的A*B个核心;令每个CPU中争抢到所述内核锁的B个核心之间争抢CPU锁,获取争抢到CPU锁的A个核心;令服务器中争抢到CPU锁的A个核心之间争抢服务器锁,获取争抢到服务器锁的1个核心;由争抢到服务器锁的核心执行所在CPU内所有线程的关键区域。
技术领域
本说明书实施例涉及互联网技术领域,尤其涉及一种提升服务器性能的方法及装置和电子设备。
背景技术
在相关技术中,为了提升服务器的性能,提出一种多CPU(Central ProcessingUnit,中央处理器)的服务器架构。具体地,服务器可以包含有多个CPU。进一步的,为了提升CPU的性能,单颗CPU又可以包含多个CPU die(CPU内核,以下简称为内核),以及每个内核又可以包含多个CPU core(CPU核心,以下简称为核心)。这样设计的服务器整体处理性能较高,但也存在多核延迟高的问题,从而影响服务器性能。
发明内容
本说明书实施例提供的一种提升服务器性能的方法及装置和电子设备:
根据本说明书实施例的第一方面,提供一种提升服务器性能的方法,所述服务器包含A个CPU,所述CPU包含B个内核,所述内核包含C个核心;每个内核设置有对应的内核锁,每个CPU设置有对应的CPU锁,所述服务器设置有对应的服务器锁,所述方法包括:
令每个CPU的每个内核中的C个核心之间争抢内核锁,获取争抢到内核锁的A*B个核心;
令每个CPU中争抢到所述内核锁的B个核心之间争抢CPU锁,获取争抢到CPU锁的A个核心;
令服务器中争抢到CPU锁的A个核心之间争抢服务器锁,获取争抢到服务器锁的1个核心;
由争抢到服务器锁的核心执行所在CPU内所有线程的关键区域。
可选的,所述方法还包括:
待所述争抢到服务器锁的核心执行完所在CPU内所有线程的关键区域后,释放所有的内核锁、CPU锁和服务器锁,将A减1后,由其它CPU重复执行“令每个CPU的每个内核中的C个核心之间争抢内核锁,获取争抢到内核锁的A*B个核心”的步骤,直到执行完所有CPU内线程的关键区域。
可选的,所述方法还包括:
接收若干执行关键区域的线程,将所述线程分配给所述CPU。
可选的,所述将所述线程分配给所述CPU,具体包括:
将执行相同关键区域的线程分配给同一个CPU。
可选的,所述方法还包括:
对所述线程进行如下至少一种配置:
配置当前线程所处的CPU。
将来自相同CPU的线程请求配置在同一链路上;
配置当前线程请求的状态;
配置执行关键区域所需参数;
配置供其他线程调用当前线程关键区域函数。
可选的,所述方法还包括:
将没有争抢到服务器锁的线程构建为串行队列,并在本地进行轮询。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于创新先进技术有限公司,未经创新先进技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811400344.6/2.html,转载请声明来源钻瓜专利网。