The disclosure relates to the operation of graphics system and a variety of architectures for designing and / or manipulating graphics systems, which span and extend from output applications to visual contents in pixel form or other forms. Generally speaking, many implementations of the invention envisage the graphic programming based on immediate decisions about how best to use specific available hardware and software. In some implementation plans, software layout can be used to assess the ability of specific system hardware and software, and then make decisions about which best graphical programming path to follow for any particular graph. The decision of the best path can be made after considering the details of the graphics program to be processed according to the alternatives of the hardware and software.
【技术实现步骤摘要】
【国外来华专利技术】封装图形库和硬件的图形引擎和环境相关申请的交叉引用本申请要求2016年3月25日提交的名称为“GraphicsEngineAndEnvironmentForEncapsulatingGraphicsLibrariesAndHardwares”的美国非临时专利申请号15/081,451的优先权,后者要求2015年6月7日提交的名称为“GraphicsEngineAndEnvironmentForEncapsulatigGraphicsLibrariesAndHardwares”的美国临时专利申请号62/172,114的优先权,这两个专利申请据此全文以引用方式并入本文。
技术介绍
本文所公开的专利技术涉及图形处理领域,并且不限于将来自应用程序的图形请求定向至渲染或呈现硬件的软件操纵。图形处理单元(GPU)对于处理数据并行图形任务来说已经变得重要。开发者现在认识到非图形数据并行任务也可由GPU处理,从而利用其大规模并行能力。供应商和标准化组织已经创建了使图形数据并行任务更易于编程的应用编程接口(API),这得益于高层级的开发者编程交互。但是,还存在更靠近硬件并且一般通过应用高层级API的输出而被采用的低层级API(或库/框架等)。换句话讲,高层级API一般只是准备应用于低层级API的程序代码。考虑到图形编程技术的多样化以及图形硬件能力的不断变化,每个从应用程序运行通过标准路径到达硬件的图形请求可能无法使用可获得的最佳资源,以尽可能快速且有效地得到执行。此外,由于可用框架相对固定和标准的性质,图形请求的路径可不考虑其他系统状态问题或上下文信息,如果知晓,可能会影响任何特 ...
【技术保护点】
一种方法,包括:接收以第一图形源代码语言表达并限定第一图形的图形请求;将所述图形请求转换为第二图形源代码语言,所述第二图形源代码语言为通用语言,其中所述通用语言的特征在于具有与所述第一图形源代码语言和多个可用低级图形库的兼容性;以限定所述第一图形的抽象语法树(AST)来表示所述图形请求;检查所述AST,包括确定所述第一图形并识别所述可用低级图形库;至少基于所述图形请求和所述可用低级图形库之间的关系来确定目标低级图形库;通过操纵所述AST来将所述第二图形源代码语言转换为与所述目标低级图形库兼容的第三图形源代码语言,使得所述图形请求以所述第三图形源代码语言来体现;以及将以所述第三图形源代码语言体现的所述图形请求发送到硬件驱动程序。
【技术特征摘要】
【国外来华专利技术】2015.06.07 US 62/172,114;2016.03.25 US 15/081,4511.一种方法,包括:接收以第一图形源代码语言表达并限定第一图形的图形请求;将所述图形请求转换为第二图形源代码语言,所述第二图形源代码语言为通用语言,其中所述通用语言的特征在于具有与所述第一图形源代码语言和多个可用低级图形库的兼容性;以限定所述第一图形的抽象语法树(AST)来表示所述图形请求;检查所述AST,包括确定所述第一图形并识别所述可用低级图形库;至少基于所述图形请求和所述可用低级图形库之间的关系来确定目标低级图形库;通过操纵所述AST来将所述第二图形源代码语言转换为与所述目标低级图形库兼容的第三图形源代码语言,使得所述图形请求以所述第三图形源代码语言来体现;以及将以所述第三图形源代码语言体现的所述图形请求发送到硬件驱动程序。2.根据权利要求1所述的方法,其中所述图形请求为着色器程序。3.根据权利要求1所述的方法,其中所述图形请求是从应用程序接收的。4.根据权利要求1所述的方法,其中在将所述图形请求转换为第二图形源代码语言之前,所述图形请求以所述AST表示。5.根据权利要求1所述的方法,其中检查所述AST包括以下中的一者:确定可用硬件项目的标识;确定系统的热曲线;确定所述可用硬件项目中的一个或多个可用硬件项目的所述热曲线;或者确定系统优先级。6.根据权利要求5所述的方法,还包括基于所述图形请求和可用硬件项目的所述标识之间的关系来确定目标硬件项目。7.根据权利要求6所述的方法,其中所述目标硬件项目为GPU。8.一种非暂态程序存储设备,所述非暂态程序存储设备能够由处理器读取并且包括存储在其上的指令以使得一个或多个处理器:接收以第一图形源代码语言表达并限定第一图形的图形请求;将所述图形请求转换为第二图形源代码语言,所述第二图形源代码语言为通用语言,其中所述通用语言的特征在于具有与所述第一图形源代码语言和多个可用低级图形库的兼容性;以限定所述第一图形的抽象语法树(AST)来表示所述图形请求;检查所述AST,包括确定所述第一图形并识别所述可用低级图形库;至少基于所述图形请求和所述可用低级图形库之间的关系来确定目标低级图形库;通过操纵所述AST来将所述第二图形源代码语言转换为与所述目标低级图形库兼容的第三图形源代码语言,使得所述图形请求以所述第三图形源代码语言来体现;以及将以所述第三图形源代码语言体现的所述图形请求发送到硬件驱动程序。9.根据权利要求8所述的非暂态程序存储设备,其中所述图形请求是从应用程序接收的。10.根据权利要求8所述的非暂态程序存储设备,其中在将所述图形请求转换为所述第二图形源代码语言之前,所述图形请求以所述AST表...
【专利技术属性】
技术研发人员:J·P·加瑟林德里奇博格,D·P·珀西诺,T·R·欧瑞奥,
申请(专利权)人:苹果公司,
类型:发明
国别省市:美国,US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。