一种基于ARM服务器的GPU资源优化方法技术

技术编号:39184092 阅读:8 留言:0更新日期:2023-10-27 08:31
本发明专利技术公开了一种基于ARM服务器的GPU资源优化方法,包括控制虚拟设备的主屏按需合成图像:通过binder驱动连接视频流,判断当前的连接情况,并通知当前虚拟设备的连接情况;通过修改SurfaceFlinger里的图像合成指令来判断是否需要合成主屏图像,若需要断开连接,则通知中止主屏图像合成;若需要进行连接时,则通知恢复主屏图像合成,并传输至虚拟设备;按需实时调整FPS:修改Composer程序指令,调整FPS的执行功能;在触发虚拟设备与ARM服务器的连接时,调用futex进程同步Composer控制FPS的变动,断开连接时虚拟设备降低FPS的值;重新连接时,调整FPS的值恢复至初始值。本发明专利技术解决了现有技术中虚拟设备的“空转”问题,大大地减少了设备合成图像、处理图像数据、传输对应视频流资源的占有。流资源的占有。流资源的占有。

【技术实现步骤摘要】
一种基于ARM服务器的GPU资源优化方法


[0001]本专利技术属于计算机
,特别涉及一种基于ARM服务器的GPU资源优化方法。

技术介绍

[0002]GPU英文全称GraphicProcessingUnit,中文翻译为“图形处理器”。GPU是相对于CPU的一个概念,由于在现代的计算机中,特别是在家用系统,图形的处理变得越来越重要,需要一个专门的图形的核心处理器。部分云端虚拟设备的桌面环境在未使用的情况下也在大幅度的消耗系统渲染资源。在传统的ARM虚拟化实时设备,如虚拟桌面、虚拟安卓设备等场景下会出现部分设备在“空转”的现象。其主要表现为在用户并未进行连接的情况下,设备仍然在高频率的生成设备的显示图像。而在没有客户进行消费的情况下属于资源的浪费。

技术实现思路

[0003]为了解决上述问题,本专利技术提供了一种基于ARM服务器的GPU资源优化方法,解决了虚拟设备的“空转”问题,大大地减少了设备合成图像、处理图像数据、传输对应视频流资源的占有。
[0004]本专利技术的目的可以通过以下技术方案来实现:
[0005]一种基于ARM服务器的GPU资源优化方法,根据实际使用需求选择第一调整模式或第二调整模式;
[0006]其中,第一调整模式为控制虚拟设备的主屏按需合成图像,包含以下步骤:
[0007]S11:通过部署在云端的ARM服务器容器中的binder驱动连接GPU产生的视频流,判断当前连接的作为虚拟设备的客户端的连接情况,并通知ARM服务器容器中SurfaceFlinger当前虚拟设备的连接情况;
[0008]S12:通过修改SurfaceFlinger里的图像合成指令来判断是否需要合成虚拟设备的主屏图像,若所述GPU产生的视频流需要断开连接,则通知SurfaceFlinger进程中止主屏图像合成;若所述GPU视频流需要进行连接时,则通知SurfaceFlinger进程恢复主屏图像合成,并传输至虚拟设备;
[0009]所述第二调整模式为按需实时调整FPS,包含以下步骤:
[0010]S21:修改部署在所述云端ARM服务器容器中Composer程序指令,调整FPS的执行功能;
[0011]S22:在触发虚拟设备与ARM服务器的连接时,调用部署在ARM服务器容器中的futex进程同步Composer来控制FPS的变动,当断开虚拟设备与云端ARM服务器的连接时,虚拟设备降低FPS的值;当虚拟设备重新与云端ARM服务器连接时,虚拟设备会立即调整FPS的值恢复至初始值。
[0012]进一步的,步骤S11中,所述判断当前连接的作为虚拟设备的客户端的连接情况的具体过程为:虚拟设备不断地给外部接口推送GPU视频流信息,若虚拟设备推送GPU视频流
遭遇到远程端口的拒绝或外部端口主动返回关闭GPU视频流生成信息,则可判定为GPU视频流连接断开;反之,则可判定为GPU视频流连接进行时。
[0013]进一步的,步骤S12中,所述通过修改SurfaceFlinger里的图像合成指令的具体步骤为:
[0014]S121:重新实现视频生成部分的内容;
[0015]S122:通过新增的变量来标识是否需要生成视频;
[0016]S123:当其他接口访问时,调整所述新增的变量,进而阻止视频的生成。
[0017]进一步的,步骤S21中,所述调整FPS的执行功能的具体过程为:
[0018]S211:重新修改指令;
[0019]S212:在重新实现接口的基础上,将FPS设置为一个变量,并增加接口对FPS进行控制。
[0020]进一步的,步骤S12中,主屏图像合成的路线与其他第三方录屏软件录屏、截屏、虚拟屏的路线不同。
[0021]进一步的,步骤S12中,所述其他第三方录屏软件包括系统自带的ScreenCAP,所述ScreenCAP包括虚拟屏和截屏方式。
[0022]与现有技术相比,本专利技术具有以下有益效果:
[0023]1、本专利技术提供的一种基于ARM服务器的GPU资源优化方法,根据实际使用需求选择第一调整模式或第二调整模式,采用的控制虚拟设备的主屏按需合成图像和按需实时调整FPS两种方式解决了现有技术中设备“空转”的问题。通过控制虚拟设备的主屏按需合成图像的方式,当用户断开连接的作为虚拟设备的客户端的连接时,虚拟设备将不再生成数据给输出设备,即不再有从虚拟设备内部到负责传输视频到客户手上的数据传输。从理解上来讲,通过控制虚拟设备的主屏按需合成图像的方式,相对于关闭了电脑的显示器大大地减少了合成图像、处理图像数据、传输对应的视频流资源的占有。通过按需实时调整FPS的方式,当用户断开虚拟设备与云端ARM服务器的连接时,会降低虚拟设备的FPS的值。由于FPS的降低,单位时间内显卡所需要渲染的虚拟设备显示图像的数量降低,从而降低了虚拟设备对于显卡资源的占用,进而节约了显卡设备的管道等资源。
[0024]2、本专利技术提供的一种基于ARM服务器的GPU资源优化方法,步骤S11中,所述判断当前连接的作为虚拟设备的客户端的连接情况的具体过程为:虚拟设备不断地给外部接口推送GPU视频流信息,若虚拟设备推送GPU视频流遭遇到远程端口的拒绝或外部端口主动返回关闭GPU视频流生成信息,则可判定为GPU视频流连接断开;反之,则可判定为GPU视频流连接进行时。通过这种判断方式,能够实时地对虚拟设备的客户端的连接情况进行监控,并得到及时的反馈。
[0025]3、本专利技术提供的一种基于ARM服务器的GPU资源优化方法,步骤S12中,所述通过修改SurfaceFlinger里的图像合成指令的具体步骤为:重新实现视频生成部分的内容;通过新增的变量来标识是否需要生成视频;当其他接口访问时,调整所述新增的变量,进而阻止视频的生成。通过该修改SurfaceFlinger里的图像合成指令的方式,能够更加快速地阻止视频的生成,达到最大程度地节约资源的目的。
[0026]4、本专利技术提供的一种基于ARM服务器的GPU资源优化方法,步骤S21中,所述调整FPS的执行功能的具体过程为:S211:重新修改指令;S212:在重新实现接口的基础上,将FPS
设置为一个变量,并增加接口对FPS进行控制。采用该方式能够通过接口实现实时、动态地调整FPS的值。
[0027]5、本专利技术提供的一种基于ARM服务器的GPU资源优化方法,步骤S12中,主屏图像合成的路线与其他第三方录屏软件录屏、截屏、虚拟屏的路线不同,故当用户使用其他第三方录屏软件时,不影响对应的虚拟设备的图像生成。
[0028]6、本专利技术提供的一种基于ARM服务器的GPU资源优化方法,步骤S12中,所述其他第三方录屏软件包括系统自带的ScreenCAP,所述ScreenCAP包括虚拟屏和截屏方式,虚拟屏是通过建立新的Display来合成的,截屏是主动渲染一帧,虚拟屏和截屏都不走主屏合成的路线,故GPU视频流断开也不影响ScreenCAP的使用。
附图说明
[002本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于ARM服务器的GPU资源优化方法,其特征在于,根据实际使用需求选择第一调整模式或第二调整模式;其中,第一调整模式为控制虚拟设备的主屏按需合成图像,包含以下步骤:S11:通过部署在云端的ARM服务器容器中的binder驱动连接GPU产生的视频流,判断当前连接的作为虚拟设备的客户端的连接情况,并通知ARM服务器容器中SurfaceFlinger当前虚拟设备的连接情况;S12:通过修改SurfaceFlinger里的图像合成指令来判断是否需要合成虚拟设备的主屏图像,若所述GPU产生的视频流需要断开连接,则通知SurfaceFlinger进程中止主屏图像合成;若所述GPU视频流需要进行连接时,则通知SurfaceFlinger进程恢复主屏图像合成,并传输至虚拟设备;所述第二调整模式为按需实时调整FPS,包含以下步骤:S21:修改部署在所述云端ARM服务器容器中Composer程序指令,调整FPS的执行功能;S22:在触发虚拟设备与ARM服务器的连接时,调用部署在ARM服务器容器中的futex进程同步Composer来控制FPS的变动,当断开虚拟设备与云端ARM服务器的连接时,虚拟设备降低FPS的值;当虚拟设备重新与云端ARM服务器连接时,虚拟设备会立即调整FPS的值恢复至初始值。2.根据权利要求1所述的一种基于ARM服务器的GPU资源优化方法,其特征在于,步骤S11中,...

【专利技术属性】
技术研发人员:汪小烽连寿哲郭志斌林瀚
申请(专利权)人:福州高新区熠云科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1