1.本发明涉及渲染技术领域,尤其涉及一种实现一机多任务的渲染方法。
背景技术:2.现有技术中,一台节点机只能运行一个渲染任务。这种方式存在以下缺点;1.会浪费节点机的计算资源,利用率不高;比如一个任务占用节点机的cpu的50%计算能力,那么该cpu剩下的50%计算能力就浪费了;2.
3.渲染速度缓慢,比如渲染系统有5台节点机,但分配了10个任务,一个任务运行大概需要1个小时和占用节点机的cpu的50%计算能力,现有的技术运行完这些任务需要2个小时,渲染时间长.3.不方便动态的配置各个不同任务的环境。
4.因此,现有技术存在缺陷,需要改进。
技术实现要素:5.本发明要解决的技术问题是:提供一种实现一机多任务的渲染方法,以便一台机器能够同时对多个任务进行渲染操作,提升节点机的利用率,提升渲染效率,减少渲染时间。
6.本发明的技术方案如下:提供一种实现一机多任务的渲染方法,包括以下步骤。
7.s1:调度器将任务按照用户进行划分,给空闲的节点机分配同一个用户的多个任务;获取用户的标识、任务的标识。优选的,采用用户的id作为用户的标识,采用任务的id作为任务的标识。
8.s2:检测节点机是否存在当前任务的所属用户的标识,如果没有存在,则删除标识目录下的所有标识文件,并写出当前任务的所属用户标识文件;若存在,不做处理。标识目录为包含有标识文件的目录,标识文件为包含有标识的文件。
9.s3:从分配到同一个节点机中的中的任务选取一个任务,该任务为任务a。任务a为运行最快的任务。选择运行最快的任务作为任务a,有利于节约映射资产的时间。
10.s4:任务a去做映射资产的动作,任务a在映射资产的动作前写出映射开始的标识文件;任务a开始映射资产;同一用户的多任务的资产存储在同一个位置。
11.s5:当任务a映射完成后再写出映射结束标识文件,那么其他任务跳过映射资产的动作,进入步骤s6;如果任务a进行映射资产的动作出现异常,删除任务a写出的映射开始的标识文件;选取另外一个任务作为任务a,进入步骤s4。
12.s6:在有映射开始的标识文件,等映射结束的标识文件存在的时候,则进入到插件配置的操作。
13.s7:根据节点机上面的当前任务的标识,将对应的插件文件分别放置在当前任务的标识目录中,即将提前准备的插件的压缩包文件拷贝到渲染的节点机的当前任务的标识目录中,接着将当前任务的标识传入到插件配置脚本中,脚本就可以知道当前任务的插件文件的位置,然后进行插件的环境变量的设置、licence的配置和licence的启动。插件用于
给的任务配置渲染的环境,每个任务都会有一个插件配置渲染的环境,从而使得任务可以独立进行渲染,不同任务在进行渲染时,不会相互干扰,因此节点机可以对多个任务同时进行渲染,极大的提升了节点机的利用率,节约了渲染的时间。可以分别对每个插件分别进行设置,极大的方便了配置各个不同任务的环境,方便用户进行操作。
14.s8:开始渲染。
15.由于同一个用户的多个任务是资产存储在同一个位置,只需要一个任务映射资产成功后便可以实现多个任务完成资产映射,有力的节约了资产映射的时间。不同的任务通过对应的插件来配置渲染环境、渲染场景,避免了渲染过程中的相互干扰,从而使得任务可以独立进行渲染,不同任务在进行渲染时,不会相互干扰,因此节点机可以对多个任务同时进行渲染,极大的提升了节点机的利用率,节约了渲染的时间。
16.进一步地,在步骤s1中,还包括:调度器获取节点机的性能参数,根据空闲节点机的性能参数分配同一个用户的多个任务。这样可以充分利用好节点机的计算资源。
17.进一步地,在步骤s4中,任务a去做映射资产的动作时,其他任务进行等待。
18.进一步地,分配在同一个节点机上的全部任务耗用的计算资源不超过该节点机的总的计算资源。避免节点机超负荷运行,避免节点机出现宕机。
19.进一步地,若分配在节点机上的全部任务映射资源都失败,调度器将该节点机上的任务重新分配给其他节点机。
20.进一步地,调度器给空闲的节点机首先分配节点机之前处理过的用户的任务;在没有之前处理过的用户的任务时,再分配其他用户的任务给节点机。无需重新写当前任务的所属用户标识文件,节约写当前任务的所属用户标识文件的时间,节约渲染的时间。
21.采用上述方案,本发明提供一种实现一机多任务的渲染方法,由于同一个用户的多个任务是资产存储在同一个位置,只需要一个任务映射资产成功后便可以实现多个任务完成资产映射,有力的节约了资产映射的时间。不同的任务通过对应的插件来配置渲染环境、渲染场景,避免了渲染过程中的相互干扰,从而使得任务可以独立进行渲染,不同任务在进行渲染时,不会相互干扰,因此节点机可以对多个任务同时进行渲染,极大的提升了节点机的利用率,节约了渲染的时间。
附图说明
22.图1为本发明的流程示意图。
具体实施方式
23.以下结合附图和具体实施例,对本发明进行详细说明。
24.请参阅图1,本发明提供一种实现一机多任务的渲染方法,包括以下步骤。
25.s1:调度器将任务按照用户进行划分,给空闲的节点机分配同一个用户的多个任务;获取用户的标识、任务的标识。优选的,采用用户的id作为用户的标识,采用任务的id作为任务的标识。在本实施例中,调度器还获取节点机的性能参数,根据空闲节点机的性能参数分配同一个用户的多个任务。这样可以充分利用好节点机的计算资源。
26.s2:检测节点机是否存在当前任务的所属用户的标识,如果没有存在,则删除标识目录下的所有标识文件,并写出当前任务的所属用户标识文件;若存在,不做处理。标识目
录为包含有标识文件的目录,标识文件为包含有标识的文件。
27.s3:从分配到同一个节点机中的中的任务选取一个任务,该任务为任务a。任务a为运行最快的任务。选择运行最快的任务作为任务a,有利于节约映射资产的时间。
28.s4:任务a去做映射资产的动作,任务a在映射资产的动作前写出映射开始的标识文件;任务a开始映射资产;同一用户的多任务的资产存储在同一个位置。任务a去做映射资产的动作时,其他任务进行等待。
29.s5:当任务a映射完成后再写出映射结束标识文件,那么其他任务跳过映射资产的动作,进入步骤s6;如果任务a进行映射资产的动作出现异常,删除任务a写出的映射开始的标识文件;选取另外一个任务作为任务a,进入步骤s4。
30.s6:在有映射开始的标识文件,等映射结束的标识文件存在的时候,则进入到插件配置的操作。
31.s7:根据节点机上面的当前任务的标识,将对应的插件文件分别放置在当前任务的标识目录中,即将提前准备的插件的压缩包文件拷贝到渲染的节点机的当前任务的标识目录中,接着将当前任务的标识传入到插件配置脚本中,脚本就可以知道当前任务的插件文件的位置,然后进行插件的环境变量的设置、licence的配置和licence的启动。插件用于给的任务配置渲染的环境,每个任务都会有一个插件配置渲染的环境,从而使得任务可以独立进行渲染,不同任务在进行渲染时,不会相互干扰,因此节点机可以对多个任务同时进行渲染,极大的提升了节点机的利用率,节约了渲染的时间。可以分别对每个插件分别进行设置,极大的方便了配置各个不同任务的环境,方便用户进行操作。
32.s8:开始渲染。
33.由于同一个用户的多个任务是资产存储在同一个位置,只需要一个任务映射资产成功后便可以实现多个任务完成资产映射,有力的节约了资产映射的时间。不同的任务通过对应的插件来配置渲染环境、渲染场景,避免了渲染过程中的相互干扰,从而使得任务可以独立进行渲染,不同任务在进行渲染时,不会相互干扰,因此节点机可以对多个任务同时进行渲染,极大的提升了节点机的利用率,节约了渲染的时间。
34.在本实施例中,分配在同一个节点机上的全部任务耗用的计算资源不超过该节点机的总的计算资源。避免节点机超负荷运行,避免节点机出现宕机。
35.在本实施例中,若分配在节点机上的全部任务映射资源都失败,调度器将该节点机上的任务重新分配给其他节点机。
36.在本实施例中,调度器给空闲的节点机首先分配节点机之前处理过的用户的任务;在没有之前处理过的用户的任务时,再分配其他用户的任务给节点机。无需重新写当前任务的所属用户标识文件,节约写当前任务的所属用户标识文件的时间,节约渲染的时间。
37.综上所述,本发明提供一种实现一机多任务的渲染方法,由于同一个用户的多个任务是资产存储在同一个位置,只需要一个任务映射资产成功后便可以实现多个任务完成资产映射,有力的节约了资产映射的时间。不同的任务通过对应的插件来配置渲染环境、渲染场景,避免了渲染过程中的相互干扰,从而使得任务可以独立进行渲染,不同任务在进行渲染时,不会相互干扰,因此节点机可以对多个任务同时进行渲染,极大的提升了节点机的利用率,节约了渲染的时间。
38.以上仅为本发明的较佳实施例而已,并不用于限制本发明,凡在本发明的精神和
原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
技术特征:1.一种实现一机多任务的渲染方法,其特征在于,包括以下步骤:s1:调度器将任务按照用户进行划分,给空闲的节点机分配同一个用户的多个任务;获取用户的标识、任务的标识;s2:检测节点机是否存在当前任务的所属用户的标识,如果没有存在,则删除标识目录下的所有标识文件,并写出当前任务的所属用户标识文件;若存在,不做处理;s3:从分配到同一个节点机中的中的任务选取一个任务,该任务为任务a;s4:任务a去做映射资产的动作,任务a在映射资产的动作前写出映射开始的标识文件;任务a开始映射资产;同一用户的多任务的资产存储在同一个位置;s5:当任务a映射完成后再写出映射结束标识文件,那么其他任务跳过映射资产的动作,进入步骤s6;如果任务a进行映射资产的动作出现异常,删除任务a写出的映射开始的标识文件;选取另外一个任务作为任务a,进入步骤s4;s6:在有映射开始的标识文件,等映射结束的标识文件存在的时候,则进入到插件配置的操作;s7:根据节点机上面的当前任务的标识,将对应的插件文件分别放置在当前任务的标识目录中,接着将当前任务的标识传入到插件配置脚本中,然后进行插件的环境变量的设置、licence的配置和licence的启动;s8:开始渲染。2.根据权利要求1所述的一种实现一机多任务的渲染方法,其特征在于,在步骤s1中,还包括:调度器获取节点机的性能参数,根据空闲节点机的性能参数分配同一个用户的多个任务。3.根据权利要求1所述的一种实现一机多任务的渲染方法,其特征在于,任务a为运行最快的任务。4.根据权利要求1所述的一种实现一机多任务的渲染方法,其特征在于,采用用户的id作为用户的标识,采用任务的id作为任务的标识。5.根据权利要求1所述的一种实现一机多任务的渲染方法,其特征在于,在步骤s4中,任务a去做映射资产的动作时,其他任务进行等待。6.根据要求2所述的一种实现一机多任务的渲染方法,其特征在于,分配在同一个节点机上的全部任务耗用的计算资源不超过该节点机的总的计算资源。7.根据权利要求1所述的一种实现一机多任务的渲染方法,其特征在于,若分配在节点机上的全部任务映射资源都失败,调度器将该节点机上的任务重新分配给其他节点机。8.根据权利要求1所述的一种实现一机多任务的渲染方法,其特征在于,调度器给空闲的节点机首先分配节点机之前处理过的用户的任务;在没有之前处理过的用户的任务时,再分配其他用户的任务给节点机。
技术总结本发明公开一种实现一机多任务的渲染方法。由于同一个用户的多个任务是资产存储在同一个位置,只需要一个任务映射资产成功后便可以实现多个任务完成资产映射,有力的节约了资产映射的时间。不同的任务通过对应的插件来配置渲染环境、渲染场景,避免了渲染过程中的相互干扰,从而使得任务可以独立进行渲染,不同任务在进行渲染时,不会相互干扰,因此节点机可以对多个任务同时进行渲染,极大的提升了节点机的利用率,节约了渲染的时间。节约了渲染的时间。节约了渲染的时间。
技术研发人员:明心烨 邹琼 周双全
受保护的技术使用者:深圳市瑞云科技有限公司
技术研发日:2022.03.16
技术公布日:2022/7/5