一种基于大数据的计算机性能控制系统
技术领域
本发明涉及计算机管理领域,具体涉及一种基于大数据的计算机性能控制系统。
背景技术
CPU性能是衡量一个计算机性能的重要指标,CPU从雏形出现到发展壮大的今天,由于制造技术的越来越先进,其集成度越来越高,内部的晶体管数达到几百万个。虽然从最初的CPU发展到现在其晶体管数增加了几十倍,但是CPU的内部结构仍然可分为控制单元,逻辑单元和存储单元三大部分。CPU的性能大致上反映出了它所配置的那部微机的性能,因此CPU的性能指标十分重要。CPU性能主要取决于其主频,主频越高,性能越强。
在高负载长时间运行后,CPU温度会升高,存在高温损坏元器件的危险,因此需要对CPU进行降频,同时在低电量时,为保证续航,也会降低CPU的主频,在多开程序时,导致CPU的负载率容易达到100%,进而导致程序卡顿,因此需要对计算机的性能进行调控。现有的技术方案是统一将所有的程序进行限制,无法根据运行状态和程序类别进行针对性的调控,导致运行的程序不流畅,使用体验差。
发明内容
为了解决上述的技术问题,本发明的目的在于提供一种基于大数据的计算机性能控制系统。
本发明所要解决的技术问题为:
(1)如何对各个程序的CPU占用率进行记录;
(2)如何判断是否需要对计算机进行性能调节;
(3)如何控制运行中的程序的最高CPU占用率;
(4)如何保证在控制CPU负载率的同时至少使一个正在使用的程序使用顺畅。
本发明的目的可以通过以下技术方案实现:
一种基于大数据的计算机性能控制系统,包括服务器、网络模块、温度检测模块、程序检测模块、CPU检测模块、电源检测模块、性能调节模块,所述温度检测模块、程序检测模块、CPU检测模块、电源检测模块均与性能调节模块电连接,所述程序检测模块、CPU检测模块均与网络模块电连接,所述网络模块与服务器通信连接;
所述服务器用于存储各个程序在计算机上运行时CPU的负载数据,同时根据负载数据计算出配置文件;
所述温度检测模块用于检测CPU的发热情况;
所述程序检测模块用于检测程序的运行状态,所述运行状态包括启动、全屏、置顶、后台和关闭,且置顶的程序和全屏的程序不能同时存在;
所述CPU检测模块用于检测CPU的负载情况;
所述电源检测模块用于检测计算机的实时电量和供电情况;
所述性能调节模块用于对程序使用CPU的权限进行调节,并设置有普通模式、采集模式和控制模式,其中普通模式既不记录数据,也不调节计算机性能,所述性能调节模块的调节步骤如下:
步骤一:每一次改变程序的运行情况后,将计算机转换为采集模式,性能调节模块控制程序检测模块对所述程序的运行状态进行检测,同时控制CPU检测模块检测所述程序的CPU占用率和CPU负载率,通过检测结果判断是否对所述程序运行时的CPU占用率进行记录;
步骤二:若判定记录所述程序的CPU占用率,则性能调节模块获取计算机的CPU型号和所述程序的软件名称,并对程序的CPU占用率进行记录,在改变程序的运行情况后停止记录,生成一组该程序的占用率的数据,作为CPU占用率数据组,与计算机的CPU型号和所述程序的软件名称作为负载数据一起通过网络模块传输至服务器,若判定为不记录,则将计算机自动切换回普通模式;
步骤三:用户将计算机切换至控制模式后,性能调节模块依次通过电源检测模块、温度检测模块、CPU检测模块、程序检测模块检测计算机的运行状态进行分析,进而得到包含供电信息、全屏运行的软件名称、窗口化置顶运行的软件名称、后台运行的软件名称、CPU温度、CPU型号和CPU负载率的本机实时运行信息,并根据本机实时运行信息判定是否需要对计算机的性能进行调节;
步骤四:若需要对计算机的性能进行调节,则性能调节模块通过网络模块向服务器发送本机实时运行信息,服务器结合所有负载数据的对本机实时运行信息进行分析后得到配置文件,并将所有正在运行的程序的配置文件发送回计算机,性能调节模块根据配置文件对计算机的性能进行调节;若不需要对计算机的性能进行调节,则将计算机自动切换回普通模式。
进一步的,所述性能调节模块判断是否记录CPU占用率的步骤如下:
S1、通过程序检测模块判断所述程序是否为全屏运行,若是,则进行步骤S3;
S2、通过程序检测模块判断程序是否为窗口化置顶运行,若不是,则判定为不记录;
S3、通过CPU检测模块判断检测CPU负载率,若CPU负载率大于70%,则判定为不记录,若CPU负载率小于70%,则判定为记录。
进一步的,所述性能调节模块是否进行性能调节的判定步骤如下:
SS1、通过电源检测模块检测计算机是否连接外接电源,若是,则进行步骤SS3;
SS2、判断内置电池的电量是否大于30%,若不是,则进行步骤SS4;
SS3、判断模块检测CPU的温度是否大于90℃,若不是,则进行步骤SS5;
SS4、通过性能调节模块降低CPU的最高主频;
SS5、判断CPU负载率是否大于70%,若是,则性能调节模块对计算机的性能进行调节,若不是,则不对计算机的性能进行调节。
进一步的,所述服务器获得配置文件的步骤如下:
SSS1、服务器获取负载数据中的软件名称,并对所有用户上传的软件名称 进行整理,将所有软件名称按照软件的用途分类为娱乐、工具、办公,并将娱 乐的优先级设为第一级,工具设为第二级,办公设为第三级;
SSS2、服务器删除记录时长小于3分钟的负载数据,并计算剩下的负载数 据中的CPU占用率数据组的平均值作为平均占用数据;
SSS3、服务器收到计算机发出的本机实时运行信息后,从中获取CPU型号、 全屏的软件名称、窗口化置顶的软件名称和后台的软件名称,若全屏的软件名 称不存在,则窗口化置顶的软件名称存在,则获取同时匹配窗口化置顶的软件 名称和CPU型号的平均占用数据,并计算所有平均占用数据的平均值,作为置 顶最大占用率,再将所有后台的软件名称按照优先级分为娱乐组、工具组和办 公组;若全屏的软件名称存在,则窗口化置顶的软件名称不存在,则将置顶最 大占用率预先设置为50%,将获取的窗口化置顶的软件名称和后台的软件名称按 照优先级分为娱乐组、工具组和办公组;并根据公式 后台最大占用率=(100%-置顶最大占用率)*k,其中k为各组的分配比例,娱乐组的 k值为80%,工具组的k值为60%,办公组的k值为40%,得到各组的后台最大 占用率;
SSS4、将各组的后台最大占用率和置顶最大占用率作为配置文件发送至计 算机。
进一步的,在有全屏运行的程序时,性能调节模块对全屏运行的程序不进行性能限制,将最大CPU占用率设置为100%,并将其他程序作为后台程序,按照配置文件中的各组的后台最大占用率对匹配的程序进行设置;在无全屏运行的程序时,则将窗口化置顶的程序按照配置文件中的置顶最大占用率进行设置,将其他程序作为后台程序,按照配置文件中的各组的后台最大占用率对匹配的程序进行设置。
本发明的有益效果:
(1)通过设置普通模式、采集模式和控制模式,可方便的在三个模式中进行切换,只在运行压力较小时进行采集,保证在大数据采集的同时,不会影响程序运行的效果。
(2)通过各个模块的配合,判断电脑是否需要进行性能控制,能够在低电量或高负荷的情况下对不同运行状态的程序进行针对性的性能限制,保证续航、运行效果、机器散热这三者的平衡。
(3)通过大数据对不同的程序的性能需求进行分析,保证在控制模式下,全屏或置顶的程序能够顺利运行。
(4)绝大部分运算通过服务器完成,本地的计算机计算压力小,只需下载对应配置文件,并按照配置文件进行设置即可。
附图说明
下面结合附图对本发明作进一步的说明。
图1是本发明的系统框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
请参阅图1所示,本实施例提供了一种基于大数据的计算机性能控制系统,包括服务器、网络模块、温度检测模块、程序检测模块、CPU检测模块、电源检测模块、性能调节模块,温度检测模块、程序检测模块、CPU检测模块、电源检测模块均与性能调节模块电连接,程序检测模块、CPU检测模块均与网络模块电连接,网络模块与服务器通信连接;
服务器用于存储各个程序在计算机上运行时CPU的负载数据,同时根据负载数据计算出配置文件;
温度检测模块用于检测CPU的发热情况;
程序检测模块用于检测程序的运行状态,运行状态包括启动、全屏、置顶、后台和关闭,且置顶的程序和全屏的程序不能同时存在;
CPU检测模块用于检测CPU的负载情况;
电源检测模块用于检测计算机的实时电量和供电情况;
性能调节模块用于对程序使用CPU的权限进行调节,并设置有普通模式、采集模式和控制模式,其中普通模式既不记录数据,也不调节计算机性能,性能调节模块的调节步骤如下:
步骤一:每一次改变程序的运行情况后,将计算机转换为采集模式,性能调节模块控制程序检测模块对程序的运行状态进行检测,同时控制CPU检测模块检测程序的CPU占用率和CPU负载率,通过检测结果判断是否对程序运行时的CPU占用率进行记录。
其中,性能调节模块判断是否记录CPU占用率的步骤如下:
S1、通过程序检测模块判断程序是否为全屏运行,若是,则进行步骤S3;
S2、通过程序检测模块判断程序是否为窗口化置顶运行,若不是,则判定为不记录;
S3、通过CPU检测模块判断检测CPU负载率,若CPU负载率大于70%,则判定为不记录,若CPU负载率小于70%,则判定为记录。如改变M程序的运行状态由后台转变为全屏后,检测M程序的CPU占用率为30%和而CPU整体的负载率为50%,则可判定记录。
步骤二:若判定记录程序的CPU占用率,则性能调节模块获取计算机的CPU型号和程序的软件名称,并对程序的CPU占用率进行记录,在改变程序的运行情况后停止记录,生成一组该程序的占用率的数据,作为CPU占用率数据组,与计算机的CPU型号和程序的软件名称作为负载数据一起通过网络模块传输至服务器,若判定为不记录,则将计算机自动切换回普通模式;
步骤三:用户将计算机切换至控制模式后,性能调节模块依次通过电源检测模块、温度检测模块、CPU检测模块、程序检测模块检测计算机的运行状态进行分析,进而得到包含供电信息、全屏运行的软件名称、窗口化置顶运行的软件名称、后台运行的软件名称、CPU温度、CPU型号和CPU负载率的本机实时运行信息,并根据本机实时运行信息判定是否需要对计算机的性能进行调节;
其中,性能调节模块是否进行性能调节的判定步骤如下:
SS1、通过电源检测模块检测计算机是否连接外接电源,若是,则进行步骤SS3;
SS2、判断内置电池的电量是否大于30%,若不是,则进行步骤SS4;
SS3、判断模块检测CPU的温度是否大于90℃,若不是,则进行步骤SS5;
SS4、通过性能调节模块降低CPU的最高主频;
SS5、判断CPU负载率是否大于70%,若是,则性能调节模块对计算机的性能进行调节,若不是,则不对计算机的性能进行调节。
步骤四:若需要对计算机的性能进行调节,则性能调节模块通过网络模块向服务器发送本机实时运行信息,服务器结合所有负载数据的对本机实时运行信息进行分析后得到配置文件,并将所有正在运行的程序的配置文件发送回计算机,在有全屏运行的程序时,性能调节模块对全屏运行的程序不进行性能限制,将最大CPU占用率设置为100%,并将其他程序作为后台程序,按照配置文件中的各组的后台最大占用率对匹配的程序进行设置;在无全屏运行的程序时,则将窗口化置顶的程序按照配置文件中的置顶最大占用率进行设置,将其他程序作为后台程序,按照配置文件中的各组的后台最大占用率对匹配的程序进行设置;若不需要对计算机的性能进行调节,则将计算机自动切换回普通模式。
服务器获得配置文件的步骤如下:
SSS1、服务器获取负载数据中的软件名称,并对所有用户上传的软件名称 进行整理,将所有软件名称按照软件的用途分类为娱乐、工具、办公,并将娱 乐的优先级设为第一级,工具设为第二级,办公设为第三级;
SSS2、服务器删除记录时长小于3分钟的负载数据,并计算剩下的负载数 据中的CPU占用率数据组的平均值作为平均占用数据;
SSS3、服务器收到计算机发出的本机实时运行信息后,从中获取CPU型号、 全屏的软件名称、窗口化置顶的软件名称和后台的软件名称,若全屏的软件名 称不存在,则窗口化置顶的软件名称存在,则获取同时匹配窗口化置顶的软件 名称和CPU型号的平均占用数据,并计算所有平均占用数据的平均值,作为置 顶最大占用率,再将所有后台的软件名称按照优先级分为娱乐组、工具组和办 公组;若全屏的软件名称存在,则窗口化置顶的软件名称不存在,则将置顶最 大占用率预先设置为50%,将获取的窗口化置顶的软件名称和后台的软件名称按 照优先级分为娱乐组、工具组和办公组;并根据公式 后台最大占用率=(100%-置顶最大占用率)*k,其中k为各组的分配比例,娱乐组的 k值为80%,工具组的k值为60%,办公组的k值为40%,得到各组的后台最大 占用率;
SSS4、将各组的后台最大占用率和置顶最大占用率作为配置文件发送至计 算机。
本实施例的具体工作过程如下:
计算机运行在windows操作系统下
1)启动、全屏、置顶、后台和关闭任意一个程序后,计算机自动切换至采集模式,检测是否能进行大数据采集,若机器运行压力不大则进行采集,在下一次启动、全屏、置顶、后台和关闭任意一个程序时,并将采集后的数据上传至服务器,停止采集若机器运行压力大就不采集;
2)服务器对所有的数据进行计算,通过大量数据计算出所有用户在相同的CPU上使用相同程序在运行时的占用情况;并将这个占用率作为程序保证运行良好的占用值,再按照程序的不同运行状态设置不同的限制效果,全屏意味着全屏的程序才是当前主要运行的程序,需要优先满足他的性能需求,因此不做限制,而窗口化则意味着进行多任务的可能性更大,因此需要按需分配计算资源,因此置顶的程序通常需要最先满足,因此最大占用率的限制小,而后台的程序只需保证基本运行即可,因此对后台的占用率的限制较大,同时根据不同类型性能需求的大小设置优先级,性能需求越大,优先级越高,优先级越大,可获得的性能就越多。
3)用户切换至控制模式后,判断计算机是否需要进行性能控制,若需要进行控制,则下载配置文件,按照配置文件进行调节即可。
本发明在工作过程中通过设置普通模式、采集模式和控制模式,可方便的在三个模式中进行切换,只在运行压力较小时进行采集,保证在大数据采集的同时,不会影响程序运行的效果。通过各个模块的配合,判断电脑是否需要进行性能控制,能够在低电量或高负荷的情况下对不同运行状态的程序进行针对性的性能限制,保证续航、运行效果、机器散热这三者的平衡。通过大数据对不同的程序的性能需求进行分析,保证在控制模式下,全屏或置顶的程序能够顺利运行。绝大部分运算通过服务器完成,本地的计算机计算压力小,只需下载对应配置文件,并按照配置文件进行设置即可。
以上内容仅仅是对本发明结构所作的举例和说明,所属本技术领域的技术人员对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,只要不偏离发明的结构或者超越本权利要求书所定义的范围,均应属于本发明的保护范围。