在CPU上执行像素着色器的程序转换方法及装置制造方法及图纸

技术编号:10346416 阅读:204 留言:0更新日期:2014-08-22 11:28
本发明专利技术涉及一种在CPU上执行像素着色器的程序转换方法,在每条指令转换时执行如下步骤:判断着色器变换是可行的和有益的,如是,取得所述像素着色器的输入参数,将指定个数的不同坐标的像素点形成一个块,将所述块作为一个单元,形成一个依次对所述单元中每个点的数据进行图形处理的线程;输出所述线程并在CPU硬件内核上执行。本发明专利技术还涉及一种实现上述方法的装置。实施本发明专利技术的在CPU上执行像素着色器的程序转换方法及装置,具有以下有益效果:其系统开销较小、效率较高。

【技术实现步骤摘要】
在CPU上执行像素着色器的程序转换方法及装置
本专利技术涉及处理器领域,更具体地说,涉及一种在在CPU上执行像素着色器的程序转换方法及装置。
技术介绍
多核多线程CPU已经成为主流,当GPU演化成为可编程处理器之后,CPU和GPU融合技术成为热点。为了追求更好画质,更丰富的用户交互,手持设备的显示端已经接近甚至超过百万像素级别(720p的画质要求90万个像素)。像素着色器是以一个像素为处理对象的程序。因为海量的像素需要处理,像素着色器成为GPU性能的关键。因为这种程序是DirectX和OpenGL标准为GPU的硬件着色器单元量身定制的专用语言,所以并不适合通用的多线程CPU上执行。一方面而言,CPU和GPU在体系结构上差异显著,例如,GPU比CPU有更多的硬件线程;GPU的处理单元结构简单,并且利用大量的线程隐藏延迟;CPU适合标量运算和复杂的控制流因为主要用于执行三维计算机图形学的着色器程序,因此GPU长于简单控制流和向量运算。从另一方面来讲,像素着色器一般实现数学或者物理公式,指令相对较少。因为相对于CPU的线程开销,一个像素的计算粒度太小;其次,GPU使用比CPU多的线本文档来自技高网...

【技术保护点】
一种在CPU上执行像素着色器的程序转换方法,其特征在于,按照事先设定的规则,将适合传统图形处理器上执行的程序转变成适合CPU执行的等效代码;其中,在程序转换时执行如下步骤:   A)判断当前指令是否使用指定语言写的像素着色器程序,如否,按照通常的指令编译并输出;如是,执行下一步骤;其中,所述指定语言写的像素着色器程序是使用专用于3D图形处理的编程语言写成的、对一个像素点进行图形处理的程序;所述程序在传统的编译情况下将转换一个独立线程在图形处理器上执行;多个像素点通过多个独立线程并发处理;   B)取得所述着色器程序中包含或隐含的、表示该程序处理的所有点的输入参数或/和使用指定的差值算法,通过对...

【技术特征摘要】
1.一种在CPU上执行像素着色器的程序转换方法,其特征在于,按照事先设定的规则,将适合传统图形处理器上执行的程序转变成适合CPU执行的等效代码;其中,在程序转换时执行如下步骤: A)判断当前指令是否使用指定语言写的像素着色器程序,如否,按照通常的指令编译并输出;如是,执行下一步骤;其中,所述指定语言写的像素着色器程序是使用专用于3D图形处理的编程语言写成的、对一个像素点进行图形处理的程序;所述程序在传统的编译情况下将转换一个独立线程在图形处理器上执行;多个像素点通过多个独立线程并发处理; B)取得所述着色器程序中包含或隐含的、表示该程序处理的所有点的输入参数或/和使用指定的差值算法,通过对顶点的参数插值得到像素的输入参数; C)将指定个数的不同坐标的像素点形成一个块,将所述块作为一个单元,形成一个依次对所述单元中每个点的数据进行图形处理的线程; D)输出所述线程并在CPU硬件上执行。2.根据权利要求1所述的在CPU上执行像素着色器变换方法,其特征在于,所述指定的程序是至少包含一个纹理请求的像素着色程序,该程序在图像处理器中对应多个处理单个点数据的线程。3.根据权利要求2所述的在CPU上执行像素着色器的程序转换方法,其特征在于,所述步骤C)进一步包括如下步骤: Cl)按照设定的规定 选择多个点或多个像素点的数据; C2)按照设定规则排列上述被选择点或点数据,使其形成一个队列或表; C3)形成一个新的块着色器线程,该线程依次对上述队列或表中的点进行图形处理。4.根据权利要求3所述的在CPU上执行像素着色器的程序转换方法,其特征在于,在所述步骤C)中,如需要处理的点多于一次选择规定的点,则按照设定规定进行多次选择,形成多个队列或表,得到多个线程。5.根据权利要求4所述的在CPU上执行像素着色器的程序转换方法,其特征在于,在所述步骤C)中,当形成多...

【专利技术属性】
技术研发人员:刘鑫冀谦祥周志德
申请(专利权)人:深圳中微电科技有限公司
类型:发明
国别省市:广东;44

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

1