-
公开(公告)号:US20100079451A1
公开(公告)日:2010-04-01
申请号:US12241044
申请日:2008-09-30
申请人: Kun Zhou , Hou Qiming , Baining Guo
发明人: Kun Zhou , Hou Qiming , Baining Guo
CPC分类号: G06T15/06 , G06T17/005
摘要: Described is a technology by which a ray tracer incorporates a GPU-based kd-tree builder for rendering arbitrary dynamic scenes. For each frame, the ray tracer builds a kd-tree for the scene geometry. The ray tracer spawns and traces eye rays, reflective and refractive rays, and shadow rays. For each ray to be traced, the ray tracer walks through the kd-tree until it reaches leaf nodes and associated triangles. When a ray passes through both sides of a splitting plane, the “far” sub-tree is pushed into the stack and the “near” sub-tree is traversed first.
摘要翻译: 描述了一种技术,通过该技术,射线跟踪器结合了用于渲染任意动态场景的基于GPU的kd-tree构建器。 对于每个帧,光线跟踪器为场景几何构建一个kd-tree。 射线追踪器产生并追踪眼睛的光线,反射和折射光线以及阴影线。 对于要跟踪的每条光线,光线跟踪器穿过kd树,直到它到达叶节点和相关联的三角形。 当光线穿过分裂平面的两侧时,“远”子树被推入堆叠中,并且首先遍历“近”子树。
-
公开(公告)号:US08963918B2
公开(公告)日:2015-02-24
申请号:US12241044
申请日:2008-09-30
申请人: Kun Zhou , Hou Qiming , Baining Guo
发明人: Kun Zhou , Hou Qiming , Baining Guo
CPC分类号: G06T15/06 , G06T17/005
摘要: Described is a technology by which a ray tracer incorporates a GPU-based kd-tree builder for rendering arbitrary dynamic scenes. For each frame, the ray tracer builds a kd-tree for the scene geometry. The ray tracer spawns and traces eye rays, reflective and refractive rays, and shadow rays. For each ray to be traced, the ray tracer walks through the kd-tree until it reaches leaf nodes and associated triangles. When a ray passes through both sides of a splitting plane, the “far” sub-tree is pushed into the stack and the “near” sub-tree is traversed first.
摘要翻译: 描述了一种技术,通过该技术,射线跟踪器结合了用于渲染任意动态场景的基于GPU的kd-tree构建器。 对于每个帧,光线跟踪器为场景几何构建一个kd-tree。 射线追踪器产生并追踪眼睛的光线,反射和折射光线以及阴影线。 对于要跟踪的每条光线,光线跟踪器穿过kd树,直到它到达叶节点和相关联的三角形。 当光线穿过分裂平面的两侧时,“远”子树被推入堆叠中,并且首先遍历“近”子树。
-
公开(公告)号:US08866827B2
公开(公告)日:2014-10-21
申请号:US12146715
申请日:2008-06-26
申请人: Kun Zhou , Hou Qiming , Baining Guo
发明人: Kun Zhou , Hou Qiming , Baining Guo
摘要: Described is a technology in a computing environment comprising a programming language for general purpose computation on a graphics processing unit (GPU), along with an associated compiler. A Bulk-Synchronous GPU Programming (BSGP) program is programmed to include barriers to describe parallel processing on GPUs. A BSGP compiler detects barriers corresponding to supersteps, converts BSGP programs to kernels based on the barriers, and combines them. During compilation, the compiler aligns barriers in the statements and bundles the corresponding supersteps together. A par construct is provided to allow the programmer to control aspects of bundling, e.g., by specifying a block independent statements. Thread manipulation emulation is provided to transparently emulate thread creation and destruction, with operations fork and kill. Also provided is remote variable access intrinsics for efficient communications between threads, and collective primitive operations.
摘要翻译: 描述了一种计算环境中的技术,包括用于图形处理单元(GPU)上的通用计算的编程语言以及相关联的编译器。 批量同步GPU编程(BSGP)程序被编程为包括描述GPU上的并行处理的障碍。 BSGP编译器检测与超级步骤相对应的障碍,基于障碍将BSGP程序转换为内核,并将其组合。 在编译期间,编译器将语句中的障碍放在一起,并将相应的超级步骤捆绑在一起。 提供了一个参考构造以允许程序员控制捆绑的方面,例如通过指定块独立语句。 线程处理仿真被提供以透明地模拟线程的创建和破坏,与操作fork和kill。 还提供了用于线程之间有效通信的远程变量访问内在函数和集合原语操作。
-
公开(公告)号:US20090322769A1
公开(公告)日:2009-12-31
申请号:US12146715
申请日:2008-06-26
申请人: Kun Zhou , Hou Qiming , Baining Guo
发明人: Kun Zhou , Hou Qiming , Baining Guo
IPC分类号: G06T1/00
摘要: Described is a technology in a computing environment comprising a programming language for general purpose computation on a graphics processing unit (GPU), along with an associated compiler. A Bulk-Synchronous GPU Programming (BSGP) program is programmed to include barriers to describe parallel processing on GPUs. A BSGP compiler detects barriers corresponding to supersteps, converts BSGP programs to kernels based on the barriers, and combines them. During compilation, the compiler aligns barriers in the statements and bundles the corresponding supersteps together. A par construct is provided to allow the programmer to control aspects of bundling, e.g., by specifying a block independent statements. Thread manipulation emulation is provided to transparently emulate thread creation and destruction, with operations fork and kill. Also provided is remote variable access intrinsics for efficient communications between threads, and collective primitive operations.
摘要翻译: 描述了一种计算环境中的技术,包括用于图形处理单元(GPU)上的通用计算的编程语言以及相关联的编译器。 批量同步GPU编程(BSGP)程序被编程为包括描述GPU上的并行处理的障碍。 BSGP编译器检测与超级步骤相对应的障碍,基于障碍将BSGP程序转换为内核,并将其组合。 在编译期间,编译器将语句中的障碍放在一起,并将相应的超级步骤捆绑在一起。 提供了一个参考构造以允许程序员控制捆绑的方面,例如通过指定块独立语句。 线程处理仿真被提供以透明地模拟线程的创建和破坏,与操作fork和kill。 还提供了用于线程之间有效通信的远程变量访问内在函数和集合原语操作。
-
公开(公告)号:US08928658B2
公开(公告)日:2015-01-06
申请号:US12241046
申请日:2008-09-30
申请人: Kun Zhou , Hou Qiming , Baining Guo
发明人: Kun Zhou , Hou Qiming , Baining Guo
CPC分类号: G06T17/005 , G06F3/048 , G06T15/50
摘要: Described is a technology by which a GPU-based photon mapping mechanism/algorithm uses a kd-tree to render arbitrary dynamic scenes. For each frame, the mechanism emits and traces a set of photons into the scene. When a photon hits a surface, it can either be reflected, transmitted, or absorbed based on the surface material. Once photon tracing is done, a kd-tree is built for the stored photons. To estimate the radiance value at an arbitrary surface point, the k-nearest photons are located and filtered. The photon tracing and photon kd-tree construction, as well as the radiance estimation using k-nearest neighbor (KNN) searches are performed on graphics hardware, e.g., a GPU. In one example, only caustic photons are traced, whereby a photon is terminated and stored once it hits a diffuse surface.
摘要翻译: 描述了基于GPU的光子映射机制/算法使用kd-tree渲染任意动态场景的技术。 对于每个帧,机制发射并跟踪一组光子到场景中。 当光子撞击表面时,它可以根据表面材料进行反射,透射或吸收。 光子跟踪完成后,为存储的光子建立一个kd树。 为了估计任意表面点处的辐射值,定位和过滤k个最近的光子。 在图形硬件(例如GPU)上执行光子跟踪和光子kd-tree构造以及使用k-最近邻(KNN)搜索的辐射估计。 在一个示例中,仅追踪苛性光子,由此一旦光子撞击漫射表面,就终止并存储光子。
-
公开(公告)号:US08581914B2
公开(公告)日:2013-11-12
申请号:US12241045
申请日:2008-09-30
申请人: Kun Zhou , Hou Qiming , Baining Guo
发明人: Kun Zhou , Hou Qiming , Baining Guo
CPC分类号: G06F17/30961
摘要: Described is a technology for constructing kd-trees on GPUs, in a manner that is sufficiently fast to achieve real-time performance by exploiting GPU-based parallelism during the kd-tree construction. Tree nodes are built in breadth-first search order, e.g., to use a thread for each node at each level. For large nodes at upper tree levels, computations are parallelized over geometric primitives (instead of nodes). To this end, large nodes are split into child nodes by cutting off empty space based until an empty space ratio is achieved, and thereafter performing spatial splitting. Small nodes are split based on split candidate costs, e.g., computed by a surface area heuristic or a voxel volume heuristic (VVH).
摘要翻译: 描述了一种用于在GPU上构建kd-tree的技术,其方法通过在kd-tree构造期间利用基于GPU的并行性足以快速实现实时性能。 树节点以宽度优先的搜索顺序构建,例如为每个级别的每个节点使用线程。 对于较高的树级别的大节点,计算是通过几何基元(而不是节点)并行化的。 为此,通过切断空白空间,直到实现空白比例,然后执行空间分割,将大型节点分割为子节点。 基于分组候选成本,例如由表面积启发式或体素体验启发式(VVH)计算的小节点被拆分。
-
公开(公告)号:US20100082704A1
公开(公告)日:2010-04-01
申请号:US12241045
申请日:2008-09-30
申请人: Kun Zhou , Hou Qiming , Baining Guo
发明人: Kun Zhou , Hou Qiming , Baining Guo
IPC分类号: G06F17/30
CPC分类号: G06F17/30961
摘要: Described is a technology for constructing kd-trees on GPUs, in a manner that is sufficiently fast to achieve real-time performance by exploiting GPU-bsaed parallelism during the kd-tree construction. Tree nodes are built in breadth-first search order, e.g., to use a thread for each node at each level. For large nodes at upper tree levels, computations are parallelized over geometric primitives (instead of nodes). To this end, large nodes are split into child nodes by cutting off empty space based until an empty space ratio is achieved, and thereafter performing spatial splitting. Small nodes are split based on split candidate costs, e.g., computed by a surface area heuristic or a voxel volume heuristic (VVH).
摘要翻译: 描述了一种用于在GPU上构建kd-tree的技术,其方式通过在kd-tree构造期间利用GPU-bsaed并行性足够快地实现实时性能。 树节点以宽度优先的搜索顺序构建,例如为每个级别的每个节点使用线程。 对于较高的树级别的大节点,计算是通过几何基元(而不是节点)并行化的。 为此,通过切断空白空间,直到实现空白比例,然后执行空间分割,将大型节点分割为子节点。 基于分组候选成本,例如由表面积启发式或体素体验启发式(VVH)计算的小节点被拆分。
-
公开(公告)号:US20100079452A1
公开(公告)日:2010-04-01
申请号:US12241046
申请日:2008-09-30
申请人: Kun Zhou , Hou Qiming , Baining Guo
发明人: Kun Zhou , Hou Qiming , Baining Guo
CPC分类号: G06T17/005 , G06F3/048 , G06T15/50
摘要: Described is a technology by which a GPU-based photon mapping mechanism/algorithm uses a kd-tree to render arbitrary dynamic scenes. For each frame, the mechanism emits and traces a set of photons into the scene. When a photon hits a surface, it can either be reflected, transmitted, or absorbed based on the surface material. Once photon tracing is done, a kd-tree is built for the stored photons. To estimate the radiance value at an arbitrary surface point, the k-nearest photons are located and filtered. The photon tracing and photon kd-tree construction, as well as the radiance estimation using k-nearest neighbor (KNN) searches are performed on graphics hardware, e.g., a GPU. In one example, only caustic photons are traced, whereby a photon is terminated and stored once it hits a diffuse surface.
摘要翻译: 描述了基于GPU的光子映射机制/算法使用kd-tree渲染任意动态场景的技术。 对于每个帧,机制发射并跟踪一组光子到场景中。 当光子撞击表面时,它可以根据表面材料进行反射,透射或吸收。 光子跟踪完成后,为存储的光子建立一个kd树。 为了估计任意表面点处的辐射值,定位和过滤k个最近的光子。 在图形硬件(例如GPU)上执行光子跟踪和光子kd-tree构造以及使用k-最近邻(KNN)搜索的辐射估计。 在一个示例中,仅追踪苛性光子,由此一旦光子撞击漫射表面,就终止并存储光子。
-
-
-
-
-
-
-