CN115408305A - 一种基于dma重定向的图形渲染方式检测方法 - Google Patents

一种基于dma重定向的图形渲染方式检测方法 Download PDF

Info

Publication number
CN115408305A
CN115408305A CN202211365069.5A CN202211365069A CN115408305A CN 115408305 A CN115408305 A CN 115408305A CN 202211365069 A CN202211365069 A CN 202211365069A CN 115408305 A CN115408305 A CN 115408305A
Authority
CN
China
Prior art keywords
texture
dma
size
address
test case
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202211365069.5A
Other languages
English (en)
Other versions
CN115408305B (zh
Inventor
温研
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Linzhuo Information Technology Co Ltd
Original Assignee
Beijing Linzhuo Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Linzhuo Information Technology Co Ltd filed Critical Beijing Linzhuo Information Technology Co Ltd
Priority to CN202211365069.5A priority Critical patent/CN115408305B/zh
Publication of CN115408305A publication Critical patent/CN115408305A/zh
Application granted granted Critical
Publication of CN115408305B publication Critical patent/CN115408305B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3037Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a memory, e.g. virtual memory, cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/38Creation or generation of source code for implementing user interfaces

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Human Computer Interaction (AREA)
  • Mathematical Physics (AREA)
  • Image Generation (AREA)

Abstract

本发明公开了一种基于DMA重定向的图形渲染方式检测方法,依据图像绘制过程中纹理相关操作的原理,构造特定的图形测试用例,并在其执行过程中监测系统中DMA状态寄存器,根据DMA状态寄存器的数据启动获取图形测试用例写入显存的数据的操作,通过分析写入显存的数据确定系统的图形渲染方式,实现了更加准确的图形渲染方式检测。

Description

一种基于DMA重定向的图形渲染方式检测方法
技术领域
本发明属于计算机图像处理技术领域,具体涉及一种基于DMA重定向的图形渲染方式检测方法。
背景技术
目前现有技术中图形渲染方式主要包括以下两种,即采用专门的图形处理器(Graphic Processing Unit,GPU)渲染三维图形的方式和采用CPU的向量部件渲染三维图形的方式,也就是通常所说的硬渲染(Hardware Rendering)和软渲染(SoftwareRendering)。
其中,采用GPU渲染三维图形的方式中,GPU又称显示核心、视觉处理器、显示芯片,GPU是一种专门在个人电脑、工作站、游戏机和一些移动设备(如平板电脑、智能手机等)上做图像和图形相关运算工作的微处理器,采用GPU使显卡减少了对CPU的依赖,并进行部分原本CPU的工作,尤其是在3D图形处理时GPU所采用的核心技术有硬件T&L(几何转换和光照处理)、立方环境材质贴图和顶点混合、纹理压缩和凹凸映射贴图、双重纹理四像素256位渲染引擎等,而硬件T&L技术可以说是GPU的标志。GPU的生产商主要有NVIDIA和ATI。
采用CPU的向量部件渲染三维图形的方式,是指采用CPU中配置的与GPU类似的向量运算单元完成三维图形的渲染。在进行三维图形渲染时,用于三维运算的向量运算指令是CPU运行的进程的一部分。三维绘制在执行时,该绘制所在的进程必须在执行态。用于加速的向量指令的代码被放置在不同函数,根据调用来跳转。
根据两种图形渲染方式的原理可见,采用GPU渲染三维图形的方式由于采用了专门的处理器完成渲染功能因此具有更高的处理性能,而采用CPU的向量部件渲染三维图形的方式是采用现有CPU完成渲染功能因此图形处理性能相对较弱,两类图形渲染方式的售价也存在较大的差别,因此,如何判断系统平台采用的图形渲染方式非常必要。
现有技术中判断系统平台图形渲染方式的方法主要是采用软件工作进行测试,如采用工具glxinfo测试,然而受到多种因素的影响现有检测方式的准确性不够高,容易产生误判或漏判。
发明内容
有鉴于此,本发明提供了一种基于DMA重定向的图形渲染方式检测方法,能够准确的判断系统平台是否采用软渲染的图形渲染方式。
本发明提供的一种基于DMA重定向的图形渲染方式检测方法,包括以下步骤:
步骤1、基于CPU虚拟化监测DMA状态寄存器,获取显存对应的DMA地址映射描述符列表及DMA地址映射描述符所映射的VRAM块大小;
步骤2、构造图形测试用例A实现采用纹理A绘制尺寸和位置均固定的窗口,纹理A为位图图像且纹理A所占的存储空间的大小不大于VRAM块的大小,窗口的尺寸记为WindowSize,WindowSize与纹理A的图像尺寸相同,窗口的位置记为WindowPos;执行图形测试用例A,当监测到DMA状态寄存器为开始写操作时,记录写操作;当执行次数达到阈值时,停止执行图形测试用例A;所述记录写操作中出现次数与阈值相等的写操作目标地址则为纹理相关写操作的虚拟地址,记为TargetVirtualAddress;
步骤3、在内存中分配一块大小与VRAM块大小相等的内存,记为TestBlock;获取TestBlock的物理内存地址,记为TestPhysicalAddress;构建源地址为TargetVirtualAddress目标地址为TestPhysicalAddress的DMA地址映射描述符,记为TestDescriptor;
步骤4、保存步骤1获取的DMA地址映射描述符列表中源地址为TargetVirtualAddress的DMA地址映射描述符,记为OriginalDescriptor;采用TestDescriptor替换DMA地址映射描述符列表中的OriginalDescriptor;
步骤5、若GPU支持压缩纹理格式,则执行步骤6;否则执行步骤8;
步骤6、构造图形测试用例B实现采用纹理B绘制尺寸为WindowSize和位置为WindowPos的窗口,纹理B为纹理压缩格式的图像且纹理B的图像尺寸为WindowSize;执行图形测试用例B,当监测到DMA状态寄存器为写结束操作且写操作的目标地址为TargetVirtualAddress时,读取内存中以TestPhysicalAddress为起始地址的设定字节长度的数据作为测试数据,完成图形测试用例B的执行;
步骤7、若步骤6获取的测试数据中包含纹理压缩格式的标志位,则判定系统的图形渲染方式为硬渲染,否则为软渲染;采用OriginalDescriptor替换DMA地址映射描述符列表中的TestDescriptor,结束本流程;
步骤8、构造图形测试用例C实现对纹理C的线性变换及采用纹理C绘制尺寸为WindowSize和位置为WindowPos的窗口,纹理C为非纹理压缩格式的图像且纹理C的图像尺寸为WindowSize;执行图形测试用例C,当监测到DMA状态寄存器为写结束操作且写操作的目标地址为TargetVirtualAddress时,读取内存中以TestPhysicalAddress为起始地址的设定字节长度的数据作为测试数据,完成图形测试用例C的执行;
步骤9、若步骤8获取的测试数据中包含未经线性变换处理的纹理C,则判定系统的图形渲染方式为硬渲染,否则为软渲染;采用OriginalDescriptor替换DMA地址映射描述符列表中的TestDescriptor,结束本流程。
进一步地,所述步骤1中所述基于CPU虚拟化监测DMA状态寄存器的方式为:构建轻量级的Hypervisor记为GPUHypervisor,在GPUHypervisor中设置虚拟机控制结构实现对DMA状态寄存器的监测,以获取DMA的写开始操作和写结束操作。
进一步地,所述步骤6和步骤8中所述设定字节长度为512字节。
进一步地,所述步骤6中所述纹理B为ASTC格式纹理。
进一步地,所述步骤8中所述纹理C为位图图像纹理。
有益效果:
本发明依据图像绘制过程中纹理相关操作的原理,构造特定的图形测试用例,并在其执行过程中监测系统中DMA状态寄存器,根据DMA状态寄存器的数据启动获取图形测试用例写入显存的数据的操作,通过分析写入显存的数据确定系统的图形渲染方式,由此能够有效提高图形渲染方式检测的准确性。
具体实施方式
下面列举实施例,对本发明进行详细描述。
在计算机图形学中,通常会采用纹理(Texture)映射实现图像的绘制。对于采用有CPU实现渲染的系统来说,在渲染过程中会将纹理数据处理为渲染数据后发送至显卡显存,而对于采用GPU实现渲染的系统来说,则是将纹理数据直接发送至显卡显存,由显卡在显存内完成纹理数据的处理。
DMA(Direct Memory Access)即直接存储访问,DMA传输方式无需CPU直接控制传输,通过硬件为RAM、I/O设备开辟一条直接传输数据的通路,能使CPU的效率大为提高。每一种体系结构DMA传输不同,编程接口也不同。对于图像绘制过程来说,计算机系统采用DMA实现内存与显存之间的绘制相关数据的传输,通常采用DMA地址映射描述符将虚拟地址空间的地址区域映射到具有相同大小的显存(VRAM),当对虚拟地址空间执行写入操作时就相当于对VRAM执行写入操作,一般情况下每个DMA地址映射描述符映射的VRAM的块大小都是相同的。
基于上述分析可知,通过判断纹理的处理过程是否在显存内完成,即可判断系统实际使用的图形渲染方式,进一步地通过拦截DMA的操作过程即可实现对显存内数据的监测以实现对数据的分析和判断。
本发明提供了一种基于DMA重定向的图形渲染方式检测方法,具体包括以下步骤:
步骤1、基于CPU虚拟化监测DMA状态寄存器,获取显存对应的DMA地址映射描述符列表及DMA地址映射描述符所映射的VRAM块大小。
具体来说,通过读取DMA状态寄存器的数据,能够获取DMA传输的状态标志信息。
步骤2、构造图形测试用例A实现采用纹理A绘制尺寸和位置均固定的窗口,纹理A为位图图像且纹理A所占的存储空间的大小不大于VRAM块的大小,窗口的尺寸记为WindowSize,WindowSize与纹理A的图像尺寸相同,窗口的位置记为WindowPos;执行图形测试用例A,当监测到DMA状态寄存器为开始写操作时,记录写操作;当执行次数达到阈值时,停止执行图形测试用例A。记录中出现次数与阈值相等的写操作目标地址则为纹理相关写操作的虚拟地址,记为TargetVirtualAddress。
其中,通过固定纹理A为位图图像尺寸即可实现绘制出尺寸固定的窗口,同时通过在纹理贴图时设定位置坐标即可实现绘制出位置固定的窗口。此外,本发明设定纹理A所占的存储空间的大小不大于VRAM块的大小,以确保通过监测一块内存空间即可获取图形测试用例所采用的完整纹理。
步骤3、在内存中分配一块大小与VRAM块大小相等的内存,记为TestBlock;获取TestBlock的物理内存地址,记为TestPhysicalAddress;构建源地址为TargetVirtualAddress目标地址为TestPhysicalAddress的DMA地址映射描述符,记为TestDescriptor。
步骤4、保存步骤1获取的DMA地址映射描述符列表中源地址为TargetVirtualAddress的DMA地址映射描述符,记为OriginalDescriptor;采用TestDescriptor替换DMA地址映射描述符列表中的OriginalDescriptor。
通过步骤4的操作,实现了对系统显存操作的重定向,即将原有对显存内某个物理地址空间的操作转换为对内存中分配的物理地址空间的操作,有效提高了测试过程中数据读取的效率。
步骤5、若GPU支持压缩纹理格式,则执行步骤6;否则执行步骤8。
步骤6、构造图形测试用例B实现采用纹理B绘制尺寸为WindowSize和位置为WindowPos的窗口,纹理B为纹理压缩格式的图像且纹理B的图像尺寸为WindowSize;执行图形测试用例B,当监测到DMA状态寄存器为写结束操作且写操作的目标地址为TargetVirtualAddress时,读取内存中以TestPhysicalAddress为起始地址的设定字节长度的数据作为测试数据,完成图形测试用例B的执行。
步骤7、若步骤6获取的测试数据中包含纹理压缩格式的标志位,则判定系统的图形渲染方式为采用GPU渲染的硬渲染,否则判定系统的图形渲染方式为采用CPU渲染的软渲染;采用OriginalDescriptor替换DMA地址映射描述符列表中的TestDescriptor,结束本流程。
步骤8、构造图形测试用例C实现对纹理C的线性变换及采用纹理C绘制尺寸为WindowSize和位置为WindowPos的窗口,纹理C为非纹理压缩格式的图像且纹理C的图像尺寸为WindowSize;执行图形测试用例C,当监测到DMA状态寄存器为写结束操作且写操作的目标地址为TargetVirtualAddress时,读取内存中以TestPhysicalAddress为起始地址的设定字节长度的数据作为测试数据,完成图形测试用例C的执行。
步骤9、若步骤8获取的测试数据中包含未经线性变换处理的纹理C,则判定系统的图形渲染方式为采用GPU渲染的硬渲染,否则判定系统的图形渲染方式为采用CPU渲染的软渲染;采用OriginalDescriptor替换DMA地址映射描述符列表中的TestDescriptor,结束本流程。
实施例:
本实施例中采用一种基于DMA重定向的图形渲染方式检测方法实现了对系统所采用图形渲染方式的准确判断,具体包括以下步骤:
S1、基于处理器对虚拟化技术的支持,如x86的VT技术等,构建轻量级的Hypervisor,记为GPUHypervisor,采用GPUHypervisor拦截DMA相关操作。具体包括以下步骤:
S1.1、在GPUHypervisor中设置虚拟机控制结构VMCS(Virtual Machine ControlStructure)实现对DMA状态寄存器的监测,以获取DMA的写开始和写结束操作。
S1.2、获取显存对应的DMA地址映射描述符列表,获取DMA地址映射描述符映射的VRAM大小,记为VRAMBlockSize。
DMA地址映射描述符列表中存放了多个DMA地址映射描述符, DMA地址映射描述符是将一个虚拟地址空间的地址区域映射到一个具有相同大小的显存(VRAM)内的地址区域,程序写虚拟地址空间的操作就相当于写VRAM的地址空间的操作。
S2、构造图形测试用例执行纹理加载和贴图处理,并设定显示窗口的位置和大小,保证窗口的尺寸与纹理图像的尺寸相同,选择格式为位图图像的纹理,且纹理所占的存储空间的大小不大于VRAMBlockSize,以确保单次贴图只会写入一个VRAM块中,记录窗口尺寸为WindowSize,窗口位置为WindowPos。
S3、设定循环次数为14879,执行S2构造的图形测试用例,监测DMA状态寄存器,当状态寄存器为开始写操作时,记录写入的目标地址及各目标地址的写入次数形成测试记录;图形测试用例执行完毕后,停止监测DMA状态寄存器。
S4、遍历S3形成的测试记录,其中写入次数为14879次的目标地址即为映射到VRAMBlock的虚拟地址TargetVirtualAddress。
S5、分配大小为VRAMBlock的一块内存,锁定该内存,获取该内存的物理内存地址TestPhysicalAddress;构建DMA地址映射描述符NewDMADescriptor,地址映射描述符的源地址为TargetVirtualAddress,目标地址为TestPhysicalAddress。
S6、从S1获取的DMA地址映射描述符列表中查询源地址为TargetVirtualAddress的项作为OriginalDMADescriptor;采用NewDMADescriptor覆盖OriginalDMADescriptor。
这样,读写[TargetVirtualAddress,TargetVirtualAddress+VRAMBlock]这个区域的内存的操作,实际上就是读写TestPhysicalAddress指向的物理内存的操作。
S7、对于支持压缩纹理格式的GPU,则执行S8;否则执行S10。
下面通过判断写入显存的数据是处理前的纹理还是处理后的纹理,即可判断系统的图形渲染方式。主要思路是:通过在GPUHypervisor中设置VMCS控制结构,监视DMA状态寄存器来监视DMA操作的开始和结束;并构造图形测试用例,通过循环纹理贴图产生大量的基于DMA的GPU显存访问,并判断写入显存的数据是处理前的纹理还是处理后的纹理。
S8、调用OpenGL/DirectX等图形接口的相关API循环执行ASTC格式纹理加载和贴图,ASTC格式纹理所占的存储空间的大小不大于VRAMBlockSize,且贴图窗口的位置为WindowPos、大小为WindowSize。其中,ASTC(Adaptive Scalable Texture Compression)为自适应扩展纹理压缩格式。
S9、监视DMA状态寄存器,当DMA为写结束操作且写操作的目标地址为TargetVirtualAddress时,读取以TargetVirtualAddress为起始地址的512字节数据,判断这些数据中是否存在ASTC格式纹理的特殊标志位,如果存在则说明是由GPU直接处理压缩纹理,系统采用的图形渲染方式为GPU渲染;如果不存在,则说明是将纹理进行解压后再发送至显存,因此系统采用的图形渲染方式为CPU渲染;采用OriginalDescriptor替换DMA地址映射描述符列表中的TestDescriptor,结束本流程。
S10、调用OpenGL/DirectX等图形接口的相关API循环执行位图图像纹理的加载、不增加纹理所占存储空间的线性变换及贴图,其中,位图图像纹理记为BitmapTexture,BitmapTexture所占存储空间的大小不大于VRAMBlockSize,且贴图窗口的位置为WindowPos、大小为WindowSize。
S11、监视DMA状态寄存器,当DMA为写结束操作且写操作的目标地址为TargetVirtualAddress时,判断TargetVirtualAddress指向的内存区域中是否存在未经线性变换处理的BitmapTexture,若存在则说明将由GPU在VRAM中对BitmapTexture进行线性变换,因此系统采用的图形渲染方式为GPU渲染;若不存在则说明由CPU完成了对BitmapTexture的线性变换,因此系统采用的图形渲染方式为CPU渲染;采用OriginalDescriptor替换DMA地址映射描述符列表中的TestDescriptor,结束本流程。
其中,判断TargetVirtualAddress指向的内存区域中是否存在未经线性变换处理的BitmapTexture的方式可采用SIMD指令作二进制匹配实现。
综上所述,以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (5)

1.一种基于DMA重定向的图形渲染方式检测方法,其特征在于,包括以下步骤:
步骤1、基于CPU虚拟化监测DMA状态寄存器,获取显存对应的DMA地址映射描述符列表及DMA地址映射描述符所映射的VRAM块大小;
步骤2、构造图形测试用例A实现采用纹理A绘制尺寸和位置均固定的窗口,纹理A为位图图像且纹理A所占的存储空间的大小不大于VRAM块的大小,窗口的尺寸记为WindowSize,WindowSize与纹理A的图像尺寸相同,窗口的位置记为WindowPos;执行图形测试用例A,当监测到DMA状态寄存器为开始写操作时,记录写操作;当执行次数达到阈值时,停止执行图形测试用例A;所述记录写操作中出现次数与阈值相等的写操作目标地址则为纹理相关写操作的虚拟地址,记为TargetVirtualAddress;
步骤3、在内存中分配一块大小与VRAM块大小相等的内存,记为TestBlock;获取TestBlock的物理内存地址,记为TestPhysicalAddress;构建源地址为TargetVirtualAddress目标地址为TestPhysicalAddress的DMA地址映射描述符,记为TestDescriptor;
步骤4、保存步骤1获取的DMA地址映射描述符列表中源地址为TargetVirtualAddress的DMA地址映射描述符,记为OriginalDescriptor;采用TestDescriptor替换DMA地址映射描述符列表中的OriginalDescriptor;
步骤5、若GPU支持压缩纹理格式,则执行步骤6;否则执行步骤8;
步骤6、构造图形测试用例B实现采用纹理B绘制尺寸为WindowSize和位置为WindowPos的窗口,纹理B为纹理压缩格式的图像且纹理B的图像尺寸为WindowSize;执行图形测试用例B,当监测到DMA状态寄存器为写结束操作且写操作的目标地址为TargetVirtualAddress时,读取内存中以TestPhysicalAddress为起始地址的设定字节长度的数据作为测试数据,完成图形测试用例B的执行;
步骤7、若步骤6获取的测试数据中包含纹理压缩格式的标志位,则判定系统的图形渲染方式为硬渲染,否则为软渲染;采用OriginalDescriptor替换DMA地址映射描述符列表中的TestDescriptor,结束本流程;
步骤8、构造图形测试用例C实现对纹理C的线性变换及采用纹理C绘制尺寸为WindowSize和位置为WindowPos的窗口,纹理C为非纹理压缩格式的图像且纹理C的图像尺寸为WindowSize;执行图形测试用例C,当监测到DMA状态寄存器为写结束操作且写操作的目标地址为TargetVirtualAddress时,读取内存中以TestPhysicalAddress为起始地址的设定字节长度的数据作为测试数据,完成图形测试用例C的执行;
步骤9、若步骤8获取的测试数据中包含未经线性变换处理的纹理C,则判定系统的图形渲染方式为硬渲染,否则为软渲染;采用OriginalDescriptor替换DMA地址映射描述符列表中的TestDescriptor,结束本流程。
2.根据权利要求1所述的图形渲染方式检测方法,其特征在于,所述步骤1中所述基于CPU虚拟化监测DMA状态寄存器的方式为:构建轻量级的Hypervisor记为GPUHypervisor,在GPUHypervisor中设置虚拟机控制结构实现对DMA状态寄存器的监测,以获取DMA的写开始操作和写结束操作。
3.根据权利要求1所述的图形渲染方式检测方法,其特征在于,所述步骤6和步骤8中所述设定字节长度为512字节。
4.根据权利要求1所述的图形渲染方式检测方法,其特征在于,所述步骤6中所述纹理B为ASTC格式纹理。
5.根据权利要求1所述的图形渲染方式检测方法,其特征在于,所述步骤8中所述纹理C为位图图像纹理。
CN202211365069.5A 2022-11-03 2022-11-03 一种基于dma重定向的图形渲染方式检测方法 Active CN115408305B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211365069.5A CN115408305B (zh) 2022-11-03 2022-11-03 一种基于dma重定向的图形渲染方式检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211365069.5A CN115408305B (zh) 2022-11-03 2022-11-03 一种基于dma重定向的图形渲染方式检测方法

Publications (2)

Publication Number Publication Date
CN115408305A true CN115408305A (zh) 2022-11-29
CN115408305B CN115408305B (zh) 2022-12-23

Family

ID=84169136

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211365069.5A Active CN115408305B (zh) 2022-11-03 2022-11-03 一种基于dma重定向的图形渲染方式检测方法

Country Status (1)

Country Link
CN (1) CN115408305B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116862749A (zh) * 2023-06-20 2023-10-10 北京麟卓信息科技有限公司 一种基于自适应解码缓存的压缩纹理渲染优化方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050179691A1 (en) * 2004-02-17 2005-08-18 Sun Microsystems, Inc. Window system 2D graphics redirection using direct texture rendering
US7170526B1 (en) * 2004-01-26 2007-01-30 Sun Microsystems, Inc. Method and apparatus for redirecting the output of direct rendering graphics calls
US20180300903A1 (en) * 2017-04-17 2018-10-18 Intel Corporation Stereoscopic rendering with compression
WO2020156264A1 (zh) * 2019-01-30 2020-08-06 华为技术有限公司 渲染方法及装置
CN112288619A (zh) * 2019-07-22 2021-01-29 辉达公司 用于在渲染图形时预加载纹理的技术
CN113674132A (zh) * 2021-07-23 2021-11-19 中标软件有限公司 一种通过检测显卡能力切换窗口管理渲染后端的方法
CN114490082A (zh) * 2022-02-14 2022-05-13 腾讯科技(深圳)有限公司 图形处理器资源管理方法、装置、设备和存储介质

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7170526B1 (en) * 2004-01-26 2007-01-30 Sun Microsystems, Inc. Method and apparatus for redirecting the output of direct rendering graphics calls
US20050179691A1 (en) * 2004-02-17 2005-08-18 Sun Microsystems, Inc. Window system 2D graphics redirection using direct texture rendering
US20180300903A1 (en) * 2017-04-17 2018-10-18 Intel Corporation Stereoscopic rendering with compression
WO2020156264A1 (zh) * 2019-01-30 2020-08-06 华为技术有限公司 渲染方法及装置
CN112288619A (zh) * 2019-07-22 2021-01-29 辉达公司 用于在渲染图形时预加载纹理的技术
CN113674132A (zh) * 2021-07-23 2021-11-19 中标软件有限公司 一种通过检测显卡能力切换窗口管理渲染后端的方法
CN114490082A (zh) * 2022-02-14 2022-05-13 腾讯科技(深圳)有限公司 图形处理器资源管理方法、装置、设备和存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
江媛等: "基于DirectX的图形加速卡性能测试系统设计", 《计算机应用研究》 *
邱晓?等: "电子海图快速渲染方式研究", 《交通信息与安全》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116862749A (zh) * 2023-06-20 2023-10-10 北京麟卓信息科技有限公司 一种基于自适应解码缓存的压缩纹理渲染优化方法
CN116862749B (zh) * 2023-06-20 2023-11-21 北京麟卓信息科技有限公司 一种基于自适应解码缓存的压缩纹理渲染优化方法

Also Published As

Publication number Publication date
CN115408305B (zh) 2022-12-23

Similar Documents

Publication Publication Date Title
TWI633447B (zh) 最大化圖形處理器中之平行處理之技術
US20090295816A1 (en) Video graphics system and method of pixel data compression
US9836810B2 (en) Optimized multi-pass rendering on tiled base architectures
US8325177B2 (en) Leveraging graphics processors to optimize rendering 2-D objects
US9928565B2 (en) Flex rendering based on a render target in graphics processing
CN110415161B (zh) 图形处理方法、装置、设备及存储介质
US6961057B1 (en) Method and apparatus for managing and accessing depth data in a computer graphics system
US7876328B2 (en) Managing multiple contexts in a decentralized graphics processing unit
US8184118B2 (en) Depth operations
US20140204080A1 (en) Indexed streamout buffers for graphics processing
KR100882842B1 (ko) 피포를 포스트 버텍스 캐쉬처럼 사용하기 위한 기하학 처리장치와 그 방법
US20150178879A1 (en) System, method, and computer program product for simultaneous execution of compute and graphics workloads
US8184117B2 (en) Stencil operations
US11727632B2 (en) Shader binding management in ray tracing
US10115221B2 (en) Stencil compression operations
CN115408305B (zh) 一种基于dma重定向的图形渲染方式检测方法
US9235512B2 (en) System, method, and computer program product for graphics processing unit (GPU) demand paging
US8525843B2 (en) Graphic system comprising a fragment graphic module and relative rendering method
CN116185743A (zh) OpenGL接口的双显卡对比调试方法、装置及介质
CN113838180A (zh) 一种渲染指令处理方法及其相关设备
CN116385253B (zh) 图元绘制方法、装置、计算机设备和存储介质
EP4379647A1 (en) Render format selection method and device related thereto
US12033239B2 (en) Dead surface invalidation
US10157443B1 (en) Deferred batching of incremental constant loads
CN115880134B (zh) 采用矢量寄存器的常量数据处理方法及图形处理器、介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant