《泛娱乐行业技术服务白皮书》——三、泛娱乐典型业务架构与场景——3.2 游戏类泛娱乐——3.2.2 游戏泛娱乐技术服务(9)

简介: 《泛娱乐行业技术服务白皮书》——三、泛娱乐典型业务架构与场景——3.2 游戏类泛娱乐——3.2.2 游戏泛娱乐技术服务(9)

《泛娱乐行业技术服务白皮书》——三、泛娱乐典型业务架构与场景——3.2   游戏类泛娱乐——3.2.2 游戏泛娱乐技术服务(8) https://developer.aliyun.com/article/1230985?groupCode=supportservice



3.2.2.3.4 排障思路

 

•采集编码慢问题


image.png


上图是黑屏中做的所有排查方向,核心的主线分为三类:  -OS内部问题——系统 (Guest OS)态 - 平台侧问题——底层(包含宿主机)相关 - 应用态问题——客户自身实 现的应用或最终玩家等其他平台不可控因素


黑屏问题的难度在于造成黑屏的原因太多了,或者说任一类问题造成的表象都可 能包含渲染黑屏,要解决黑屏问题首先的理解,黑屏是怎么产生的,屏幕画像的产生

 

来源于底层渲染计算生成的画面通过解码、封装、捕获等方式呈现出来,一旦出现异 常,最先怀疑的就是渲染计算的情况,所以对于黑屏:


•系统态排查

我们首先确认了当时系统内相关资源的使用率情况,发现都比较高,特别是 CPU资源与GPU资源方面,因为GPU的调度是需要利用CPU资源的(比如队列处理等 ),而游戏本身占用的CPU可能会很高(特别是3A大作),所以当CPU负载较高时会导 致GPU调度不了,形成了成像失败,最典型的情况就是CPU负载很高,GPU负载不 高,通过渲染类连接(比如调用了GPU的VNC界面)看是黑屏状态,但是通过RDP协议 访问却只是卡顿(因为CPU分配不足),这就是第一个系统态异常的怀疑点,下图为 GPU满是最终玩家感觉到黑屏时的任务管理器界面:

 

image.png


通过ProcessExplorer可以看到更具体占用GPU的情况:


image.png


通过对应进程获取相关堆栈信息,下图为CPU满时导致的黑屏与RDP卡顿(关于 RDP卡顿将在RDP卡顿中详讲)问题可以看到前面9core(客户使用的VM为定制版的9core)全部被对应游戏进程占了80%左右:


image.png


针对这种情况,建议根据排查出的游戏进程进行优化即可。


平台侧排查

关于第二点,前面说过,CPU使用率是云游戏场景中比较重要的指标,若有其他非 主观因素影响了CPU的使用也会导致黑屏几率上升,通过分析宿主机记录的Cache- line相关计数情况,  我们发现该客户云游戏VM的cacheline(当执行原子操作地址未对 齐时就会跨越两个cacheline进行传输,在Intel架构中将这种现象的量级定义为split- lock,而原子地址没对齐的场景,在Intel架构下是允许的,在诸如ARM架构下则是禁 止的;cacheline即CPU在处理数据时与内存映射地址进行通讯时的缓存通道,该通 道起到预存数据的作用,同一个cache 1 line的传输时延会下降)产生得特别多, Cacheline问题的不断上升触发了Cacheline一些限制措施,从而使得CPU使用被”压 住“,导致无法充分发挥CPU性能调度GPU资源来实现渲染,关于该问题对于技术服 务侧来说有更加方便的方式判断,也得益于众多阿里云先驱前辈的白屏化进程,使用 内部系统可以直接将具体时间线输出明确对比黑屏时间:


image.png


从底层宿主机看下是否存在一些基于Cacheline问题的限制,我们从当前case发 现确实存在Cacheline问题的限制,所以就进行了一些限制解除的实验,最终确认了 与Cacheline强相关,但是游戏厂商进程无法通过去壳手段来进行分析(也不在平台 分析范围内)  ,  所以对于游戏进程产生的cacheline交由客户与游戏厂商继续分析, 不过整体解除Cacheline限制后黑屏情况相较于优化性能后又再下一城。    ——  这一 点同时也是Log慢的核心原因

在某个案例可以看到经过两轮的优化,从一开始平均1k+下降到600+,再到

400+:

 

image.png


兼容性类排查


在解答这一点前,我们需要确认几个基础概念:


•视频相关API:主要用于捕获、加速渲染等作用的API,N卡常见的有:微软提 供的DDA(Desktop Duplication API)以及NV提供的NVFBC(NVIDIA® Frame Buffer Capture API)

•GRID:N卡的核心虚拟化技术,由NV开发与提供,也是N卡虚拟化主流的实现 方式,包含前后端驱动,GRID11、12均为GRID的版本

•TDR:Timeout Detection & Recovery ,GPU的调度超时相关指标,默认应用 程序请求GPU资源超过2s(可调)就会在日志中记录一条warning级的TDR,NVIDIA对 此也有相关解释,从GPU配置程序入手配置的话可见链接。



《泛娱乐行业技术服务白皮书》——三、泛娱乐典型业务架构与场景——3.2   游戏类泛娱乐——3.2.2 游戏泛娱乐技术服务(10) https://developer.aliyun.com/article/1230983?groupCode=supportservice

相关实践学习
部署Stable Diffusion玩转AI绘画(GPU云服务器)
本实验通过在ECS上从零开始部署Stable Diffusion来进行AI绘画创作,开启AIGC盲盒。
相关文章
|
6天前
|
运维 Kubernetes Cloud Native
云原生技术:容器化与微服务架构的完美结合
【10月更文挑战第37天】在数字化转型的浪潮中,云原生技术以其灵活性和高效性成为企业的新宠。本文将深入探讨云原生的核心概念,包括容器化技术和微服务架构,以及它们如何共同推动现代应用的发展。我们将通过实际代码示例,展示如何在Kubernetes集群上部署一个简单的微服务,揭示云原生技术的强大能力和未来潜力。
|
14天前
|
运维 持续交付 API
从零构建微服务架构:一次深度技术探索之旅####
【10月更文挑战第28天】 本文记录了作者在从零开始构建微服务架构过程中的深刻技术感悟,通过实战案例详细剖析了微服务设计、开发、部署及运维中的关键要点与挑战。文章首先概述了微服务架构的核心理念及其对企业IT架构转型的重要性,随后深入探讨了服务拆分策略、API网关选型、服务间通信协议选择、容器化部署(Docker+Kubernetes)、以及持续集成/持续部署(CI/CD)流程的设计与优化。最后,分享了在高并发场景下的性能调优经验与故障排查心得,旨在为读者提供一套可借鉴的微服务架构实施路径。 ####
54 3
|
25天前
|
边缘计算 Cloud Native 安全
构建灵活高效的下一代应用架构 随着企业数字化转型的加速,云原生技术正逐渐成为构建现代化应用程序的关键支柱。
随着企业数字化转型加速,云原生技术逐渐成为构建现代化应用的关键。本文探讨了云原生的核心概念(如容器化、微服务、DevOps)、主要应用场景(如金融、电商、IoT)及未来发展趋势(如无服务器计算、边缘计算、多云架构),并分析了面临的挑战,如架构复杂性和安全问题。云原生技术为企业提供了更灵活、高效的应用架构,助力数字化转型。
57 4
|
4天前
|
存储 分布式计算 关系型数据库
架构/技术框架调研
本文介绍了微服务间事务处理、调用、大数据处理、分库分表、大文本存储及数据缓存的最优解决方案。重点讨论了Seata、Dubbo、Hadoop生态系统、MyCat、ShardingSphere、对象存储服务和Redis等技术,提供了详细的原理、应用场景和优缺点分析。
|
1月前
|
缓存 Java 数据库
后端技术探索:从基础架构到高效开发的实践之路
【10月更文挑战第7天】 在现代软件开发中,后端技术是支撑应用运行的核心。本文将探讨如何从后端的基础架构出发,通过一系列高效的开发实践,提升系统的性能与可靠性。我们将深入分析后端框架的选择、数据库设计、接口开发等关键领域,并提供实用的代码示例和优化策略,帮助开发者构建更稳定、高效的后端系统。通过这篇文章,读者将获得关于后端开发的全面理解和实践指导,从而更好地应对复杂项目需求。
69 0
|
6天前
|
监控 API 微服务
后端技术演进:从单体架构到微服务的转变
随着互联网应用的快速增长和用户需求的不断演化,传统单体架构已难以满足现代软件开发的需求。本文深入探讨了后端技术在面对复杂系统挑战时的演进路径,重点分析了从单体架构向微服务架构转变的过程、原因及优势。通过对比分析,揭示了微服务架构如何提高系统的可扩展性、灵活性和维护效率,同时指出了实施微服务时面临的挑战和最佳实践。
25 7
|
4天前
|
传感器 算法 物联网
智能停车解决方案之停车场室内导航系统(二):核心技术与系统架构构建
随着城市化进程的加速,停车难问题日益凸显。本文深入剖析智能停车系统的关键技术,包括停车场电子地图编辑绘制、物联网与传感器技术、大数据与云计算的应用、定位技术及车辆导航路径规划,为读者提供全面的技术解决方案。系统架构分为应用层、业务层、数据层和运行环境,涵盖停车场室内导航、车位占用检测、动态更新、精准导航和路径规划等方面。
29 4
|
23天前
|
Kubernetes Cloud Native 持续交付
云端新纪元:云原生技术重塑IT架构####
【10月更文挑战第20天】 本文深入探讨了云原生技术的兴起背景、核心理念、关键技术组件以及它如何引领现代IT架构迈向更高效、灵活与可扩展的新阶段。通过剖析Kubernetes、微服务、Docker等核心技术,本文揭示了云原生架构如何优化资源利用、加速应用开发与部署流程,并促进企业数字化转型的深度实践。 ####
|
5天前
|
Kubernetes Cloud Native 持续交付
云原生技术在现代应用架构中的实践与思考
【10月更文挑战第38天】随着云计算的不断成熟和演进,云原生(Cloud-Native)已成为推动企业数字化转型的重要力量。本文从云原生的基本概念出发,深入探讨了其在现代应用架构中的实际应用,并结合代码示例,展示了云原生技术如何优化资源管理、提升系统弹性和加速开发流程。通过分析云原生的优势与面临的挑战,本文旨在为读者提供一份云原生转型的指南和启示。
19 3
|
7天前
|
网络协议 数据挖掘 5G
适用于金融和交易应用的低延迟网络:技术、架构与应用
适用于金融和交易应用的低延迟网络:技术、架构与应用
34 5