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

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

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



3.2.2.3.5 验证思路


•黑屏与TDR验证

了解完基础概念,这一点也是本次解决黑屏最重要的一点,如图2所示,驱动的 兼容性是否有问题,这一点其实在专项介入早期就已经发现客户在使用解码、编码接 口上用了较为老旧的NVFBC接口(NVFBC接口是NVIDIA提供的相关渲染接口,  是厂 商提供的特定功能接口,具体可点击链接查看,偏视频渲染领域),而在最新的Win - dows Server 2012+开始NV明确表示了不再支持。客户使用FBC接口方式也从客户的 业务日志中有所发现

 

image.png


其次,在客户反馈的黑屏时间段里存在大量的TDR:

 

image.png

事件管理器中类型为Warning的Display事件,EventID为4101,所以接下来的排 查重点就聚焦在:

TDR与黑屏是否有直接关系

DDA与FBC是否为黑屏的突破点

TDR Delay验证


验证第一个问题并不困难,通过对比没有黑屏的机器可以明确的看到没有TDR信 息,同时客户自身采集的逻辑也包含了TDR数量的检测,在TDR数量少的情况下同等 黑屏次数也很少,所以第一个问题基本得到验证,在第一part的图里也可以看到关于 云游戏底层的IaaS逻辑是这样的:

 

image.png


 当出现TDR时,意味着两种可能性,预期内的可能性是当时游戏负载较高,导致 显卡响应不过来了,在3A类型的游戏大作中渲染超2s的情况不算多见,但是也会 有,量级一般可控,量级大到导致黑屏的确实少见,而另外一种预期外的可能就是在 运行时遇到了驱动级或者不可用的函数导致等待不到GPU控制器的回复产生的超 时,为了验证这个理论,我们与GPU研发讨论后,进行了TDR Delay验证,即把TDR

的阈值从2s调整为10s,可以参考以下指引:


image.png


•切换DDA验证

调整TDRDelay后发现黑屏次数确实有两位数的下降,但总量依旧是在千级别, 证明了客户业务确实存在TDR预期内的问题,但是不是黑屏的主因,很可能是因为预 期外问题导致这些预期内的问题被放大,那么做了这个实验后就基本确认TDR问题聚 焦在预期外问题,预期外问题刚好与排查重点2有重合,因为DDA与FBC模式且好是 驱动层面中Rendering阶段核心的接口因素,基于此,我们开始了第二轮实验:对接

 

口进行切换,从FBC切换成DDA观察,非常有幸的是,本来我们都准备拉齐研发资 源帮客户做好切换的相关测试与验证,没想到客户集成了切换模式,切换成DDA成 本很低,所以仅用时1天就完成了50%量从FBC切换DDA的操作,下图是完成后观察 两天的结果,可以看到相对于FBC无论是次数还是发生频率都大幅下降了,基本上证 明FBC为核心问题,而TDR为判断该问题是否解决的标志:


image.png



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

相关文章
|
5月前
|
消息中间件 负载均衡 中间件
⚡ 构建真正的高性能即时通讯服务:基于 Netty 集群的架构设计与实现
本文介绍了如何基于 Netty 构建分布式即时通讯集群。随着用户量增长,单体架构面临性能瓶颈,文章对比了三种集群方案:Nginx 负载均衡、注册中心服务发现与基于 ZooKeeper 的消息路由架构。最终选择第三种方案,通过 ZooKeeper 实现服务注册发现与消息路由,并结合 RabbitMQ 支持跨服务器消息广播。文中还详细讲解了 ZooKeeper 搭建、Netty 集群改造、动态端口分配、服务注册、负载均衡及消息广播的实现,构建了一个高可用、可水平扩展的即时通讯系统。
601 0
|
5月前
|
文字识别 运维 监控
架构解密|一步步打造高可用的 JOCR OCR 识别服务
本文深入解析了JOCR OCR识别服务的高可用架构设计,涵盖从用户上传、智能调度、核心识别到容错监控的完整链路,助力打造高性能、低成本的工业级OCR服务。
253 0
架构解密|一步步打造高可用的 JOCR OCR 识别服务
|
6月前
|
关系型数据库 MySQL 分布式数据库
Super MySQL|揭秘PolarDB全异步执行架构,高并发场景性能利器
阿里云瑶池旗下的云原生数据库PolarDB MySQL版设计了基于协程的全异步执行架构,实现鉴权、事务提交、锁等待等核心逻辑的异步化执行,这是业界首个真正意义上实现全异步执行架构的MySQL数据库产品,显著提升了PolarDB MySQL的高并发处理能力,其中通用写入性能提升超过70%,长尾延迟降低60%以上。
|
9月前
|
消息中间件 人工智能 监控
文生图架构设计原来如此简单之分布式服务
想象一下,当成千上万的用户同时要求AI画图,如何公平高效地处理这些请求?文生图/图生图大模型的架构设计看似复杂,实则遵循简单而有效的原则:合理排队、分工明确、防患未然。
356 14
文生图架构设计原来如此简单之分布式服务
|
6月前
|
消息中间件 存储 大数据
阿里云消息队列 Kafka 架构及典型应用场景
阿里云消息队列 Kafka 是一款基于 Apache Kafka 的分布式消息中间件,支持消息发布与订阅模型,满足微服务解耦、大数据处理及实时流数据分析需求。其通过存算分离架构优化成本与性能,提供基础版、标准版和专业版三种 Serverless 版本,分别适用于不同业务场景,最高 SLA 达 99.99%。阿里云 Kafka 还具备弹性扩容、多可用区部署、冷热数据缓存隔离等特性,并支持与 Flink、MaxCompute 等生态工具无缝集成,广泛应用于用户行为分析、数据入库等场景,显著提升数据处理效率与实时性。
|
8月前
|
存储 人工智能 自然语言处理
Cursor这类编程Agent软件的模型架构与工作流程
编程Agent的核心是一个强大的大语言模型,负责理解用户意图并生成相应的代码和解决方案。这些模型通过海量文本和代码数据的训练,掌握了广泛的编程知识和语言理解能力。
822 1
|
12月前
|
存储 JavaScript 开发工具
基于HarmonyOS 5.0(NEXT)与SpringCloud架构的跨平台应用开发与服务集成研究【实战】
本次的.HarmonyOS Next ,ArkTS语言,HarmonyOS的元服务和DevEco Studio 开发工具,为开发者提供了构建现代化、轻量化、高性能应用的便捷方式。这些技术和工具将帮助开发者更好地适应未来的智能设备和服务提供方式。
基于HarmonyOS 5.0(NEXT)与SpringCloud架构的跨平台应用开发与服务集成研究【实战】
|
11月前
|
人工智能 运维 监控
云卓越架构:企业稳定性架构体系和AI业务场景探秘
本次分享由阿里云智能集团公共云技术服务部上海零售技术服务高级经理路志华主讲,主题为“云卓越架构:企业稳定性架构体系和AI业务场景探秘”。内容涵盖四个部分:1) 稳定性架构设计,强调高可用、可扩展性、安全性和可维护性;2) 稳定性保障体系和应急体系的建立,确保快速响应和恢复;3) 重大活动时的稳定重宝策略,如大促或新业务上线;4) AI在企业中的应用场景,包括智能编码、知识库问答、创意广告生成等。通过这些内容,帮助企业在云计算环境中构建更加稳定和高效的架构,并探索AI技术带来的创新机会。
|
12月前
|
消息中间件 存储 安全
分布式系统架构3:服务容错
分布式系统因其复杂性,故障几乎是必然的。那么如何让系统在不可避免的故障中依然保持稳定?本文详细介绍了分布式架构中7种核心的服务容错策略,包括故障转移、快速失败、安全失败等,以及它们在实际业务场景中的应用。无论是支付场景的快速失败,还是日志采集的安全失败,每种策略都有自己的适用领域和优缺点。此外,文章还为技术面试提供了解题思路,助你在关键时刻脱颖而出。掌握这些策略,不仅能提升系统健壮性,还能让你的技术栈更上一层楼!快来深入学习,走向架构师之路吧!
312 12
|
NoSQL Java 数据处理
基于Redis海量数据场景分布式ID架构实践
【11月更文挑战第30天】在现代分布式系统中,生成全局唯一的ID是一个常见且重要的需求。在微服务架构中,各个服务可能需要生成唯一标识符,如用户ID、订单ID等。传统的自增ID已经无法满足在集群环境下保持唯一性的要求,而分布式ID解决方案能够确保即使在多个实例间也能生成全局唯一的标识符。本文将深入探讨如何利用Redis实现分布式ID生成,并通过Java语言展示多个示例,同时分析每个实践方案的优缺点。
463 8