【技术实现步骤摘要】
调度优先级调整方法、装置、设备及存储介质
[0001]本申请涉及计算机
,提供了一种调度优先级调整方法
、
装置
、
设备及存储介质
。
技术介绍
[0002]在面向高性能计算
、
容器调度
、
以及实时任务处理等多种应用场景的 Linux 系统中,通过提高特定进程的调度优先级来获得更好的响应速度和性能,是一种重要的系统调优方法
。
相关技术中,
Linux
系统允许通过修改系统调度器参数
、
设置进程优先级(
nice 值)或实时调度策略等方式调整进程的调度优先级
。
但这些方式分别存在以下局限性:
1、
修改系统调度器参数,由于系统调度器参数是全局的调度器参数,调整后可能会影响所有进程,而不是只针对特定进程,因此可能导致系统资源分配不均,从而影响其他进程或系统整体性能
。
[0003]2、
设置进程优先级(
nice 值),是指使用 nice、renice 等命令调整进程优先级,但这种方式仅适用于非实时任务的调度,对于实时任务就存在调度不够灵活精确的问题
。
[0004]3、
实时调度策略,是指采用如
SCHED_FIFO 或 SCHED_RR 等实时调度策略的方式调整进程的调度优先级,这种方式尽管可以改善特定进程响应速度,但这可能会导致其他进程(特别是优先级较低的普通进程)性能下降,进 ...
【技术保护点】
【技术特征摘要】
1.
一种调度优先级调整方法,其特征在于,包括:响应于针对目标进程触发的优先级调整指令,获取所述目标进程关联的目标
eBPF
程序;其中,所述优先级调整指令用于调整所述目标进程的调度优先级,所述调度优先级与所述目标进程在系统中的内核资源占用数量呈正相关,以及,与所述目标进程的数据处理响应速度呈负相关;将所述目标
eBPF 程序加载至所述系统的内核中,并将所述目标
eBPF 程序中设置的优先级调整函数挂载至内核调度函数;所述优先级调整函数用于调整所述目标进程的调度优先级,所述内核调度函数为所述内核中用于调度进程的函数;运行所述优先级调整函数,基于所述内核调度函数的进程参数,检测所述系统的进程运行状态,当所述目标进程被调用时,调整所述目标进程的调度优先级,并基于调整后的调度优先级,调整所述目标进程的内核资源占用数量,以及所述目标进程的数据处理响应速度
。2.
根据权利要求1所述的方法,其特征在于,所述优先级调整指令还用于在预设时间范围调整所述目标进程的调度优先级;则所述当所述目标进程被调用时,调整所述目标进程的调度优先级,包括:当所述目标进程被调用时,获取所述系统的当前时间;将所述当前时间与所述预设时间范围进行比较,当所述当前时间在所述预设时间范围内时,调整所述目标进程的调度优先级
。3.
根据权利要求1或2所述的方法,其特征在于,所述系统为
Linux
系统时,所述内核调度函数为
pick_next_task_fair
函数;则所述运行所述优先级调整函数,基于所述内核调度函数的进程参数,检测所述系统的进程运行状态,包括:运行所述优先级调整函数,获取所述
pick_next_task_fair
函数的进程参数;所述进程参数表征所述
Linux
系统中下一个运行的进程;将所述进程参数与所述目标进程进行匹配,并在满足匹配条件时,确定所述目标进程被调用
。4.
根据权利要求3所述的方法,其特征在于,所述将所述进程参数与所述目标进程进行匹配,并在满足匹配条件时,确定所述目标进程被调用,包括:将所述进程参数中包括的下一个运行的进程的进程名称与所述目标进程的名称进行字符匹配;在所述进程参数中包括的进程名称与所述目标进程的名称完全匹配时,确定满足匹配条件
。5.
根据权利要求4所述的方法,其特征在于,所述将所述进程参数中包括的进程名称与所述目标进程的名称进行字符匹配,包括:将所述进程参数中包括的进程名称与所述目标进程的名称分别作为一个字符串,并将两个字符串对应位置的字符分别进行匹配;在每个位置的字符均匹配时,确定所述进程参数中包括的进程名称与所述目标进程的名称完全匹配
。6.
根据权利要求1或2所述的方法,其特征在于,所述调整所述目标进程的调度优先级,
包括:判断所述目标进程的调度优先级的取值是否大于预设调整值;所述调度优先级的取值越大,调度优先级越低;在所述调度优先级的取值大于预设调整值时,将所述调度优先级的...
【专利技术属性】
技术研发人员:周雯程,
申请(专利权)人:腾讯科技深圳有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。