Object visibility control for ray tracing
    11.
    发明授权
    Object visibility control for ray tracing 有权
    光线跟踪的对象可见性控制

    公开(公告)号:US07479960B2

    公开(公告)日:2009-01-20

    申请号:US11244417

    申请日:2005-10-04

    Inventor: Aaftab A. Munshi

    CPC classification number: G06T15/40 G06T15/06

    Abstract: A computer graphics method and apparatus allows designer control over the rendering of objects and scenes, in a rendering system using ray tracing for example. A modeling system is adapted to accept rules for controlling how certain objects affect the appearance of certain other objects. In a ray tracing implementation, rules are specified by ray type and can be specified as either “including” all but certain objects or “excluding” specific objects for any given object. A rendering system extracts these rules from a bytestream or other input including other graphics data and instructions, and populates lists for internal use by other components of the rendering system. A ray tracer in the rendering system is adapted to consult the list when performing ray tracing, so as to enforce the rendering control specified by the content creator when the objects and scene are rendered.

    Abstract translation: 计算机图形方法和装置允许设计者在使用例如光线跟踪的渲染系统中对对象和场景的渲染进行控制。 建模系统适于接受用于控制某些对象如何影响某些其他对象的外观的规则。 在光线跟踪实现中,规则由射线类型指定,并且可以被指定为除了某些对象之外的所有对象或者“排除”任何给定对象的特定对象。 渲染系统从字节流或包括其他图形数据和指令的其他输入中提取这些规则,并填充列表以供呈现系统的其他组件内部使用。 渲染系统中的光线跟踪器适于在执行光线跟踪时参考列表,以便在渲染对象和场景时强制内容创建者指定的渲染控制。

    MULTI-DIMENSIONAL THREAD GROUPING FOR MULTIPLE PROCESSORS
    12.
    发明申请
    MULTI-DIMENSIONAL THREAD GROUPING FOR MULTIPLE PROCESSORS 有权
    多处理器的多维螺纹组

    公开(公告)号:US20090307704A1

    公开(公告)日:2009-12-10

    申请号:US12264894

    申请日:2008-11-04

    CPC classification number: G06F9/4843 G06F9/5044 G06F2209/5017 G06F2209/509

    Abstract: A method and an apparatus that determine a total number of threads to concurrently execute executable codes compiled from a single source for target processing units in response to an API (Application Programming Interface) request from an application running in a host processing unit are described. The target processing units include GPUs (Graphics Processing Unit) and CPUs (Central Processing Unit). Thread group sizes for the target processing units are determined to partition the total number of threads according to a multi-dimensional global thread number included in the API request. The executable codes are loaded to be executed in thread groups with the determined thread group sizes concurrently in the target processing units.

    Abstract translation: 描述了响应于来自在主机处理单元中运行的应用的API(应用程序编程接口)请求,确定用于目标处理单元从单个源编译的并行执行可执行代码的总线程数的方法和装置。 目标处理单元包括GPU(图形处理单元)和CPU(中央处理单元)。 根据API请求中包含的多维全局线程号,确定目标处理单元的线程组大小以分配总线程数。 可执行代码被加载以在目标处理单元中并发确定的线程组大小的线程组中执行。

    APPLICATION PROGRAMMING INTERFACES FOR DATA PARALLEL COMPUTING ON MULTIPLE PROCESSORS
    13.
    发明申请
    APPLICATION PROGRAMMING INTERFACES FOR DATA PARALLEL COMPUTING ON MULTIPLE PROCESSORS 有权
    用于多个处理器的数据并行计算的应用编程接口

    公开(公告)号:US20090307699A1

    公开(公告)日:2009-12-10

    申请号:US12264896

    申请日:2008-11-04

    Abstract: A method and an apparatus for a parallel computing program calling APIs (application programming interfaces) in a host processor to perform a data processing task in parallel among compute units are described. The compute units are coupled to the host processor including central processing units (CPUs) and graphic processing units (GPUs). A program object corresponding to a source code for the data processing task is generated in a memory coupled to the host processor according to the API calls. Executable codes for the compute units are generated from the program object according to the API calls to be loaded for concurrent execution among the compute units to perform the data processing task.

    Abstract translation: 描述了用于在主处理器中调用API(应用程序编程接口)并行计算程序的方法和装置,以在计算单元之间并行地执行数据处理任务。 计算单元耦合到主处理器,包括中央处理单元(CPU)和图形处理单元(GPU)。 根据API调用在与主机处理器耦合的存储器中产生与数据处理任务的源代码相对应的程序对象。 计算单元的可执行代码根据要在计算单元之间并行执行的API调用从程序对象生成以执行数据处理任务。

    Method and apparatus for high-speed block transfer of compressed and
word-aligned bitmaps
    14.
    发明授权
    Method and apparatus for high-speed block transfer of compressed and word-aligned bitmaps 失效
    用于压缩和字对齐位图的高速块传输的方法和装置

    公开(公告)号:US6084600A

    公开(公告)日:2000-07-04

    申请号:US619815

    申请日:1996-03-15

    Inventor: Aaftab A. Munshi

    CPC classification number: G09G5/393 G09G2360/121

    Abstract: Graphics display performance is significantly improved by compressing pixel information, by aligning the 8, 16 or 32 bit pixels transferred over a 32-bit Peripheral Component Interface (PCI) bus with the pixels in the display memory, and by avoiding moves of pixel data within display memory. Compression is achieved by not transferring data for pixels that are not modified by the transfer. Rather, a count of unmodified pixel bytes to skip precedes each set of pixel data for contiguous pixels that are modified. Alignment is achieved by ensuring that the boundaries between words within the pixel set transferred matches those within the corresponding target pixels in the display memory. This alignment significantly speeds up modifying pixel data within the display memory. The burden of ensuring this alignment is placed on the applications software that initiates the transfer. For a static image, such as a cockpit, this alignment can be achieved at the time that the image information used by the software is compiled into a bitmap. For a dynamic image, such as a sprite, this alignment can be achieved by compiling all possible word alignments of the sprite's pixel data into different bitmap versions. At run time, the applications software uses the sprite's current location to dynamically select which bitmap version to transfer. In one embodiment, a graphics accelerator interprets the bitmap transferred and updates display memory accordingly. In another embodiment, software executing on the host CPU directly writes pre-aligned pixel data into the display memory.

    Abstract translation: 通过将通过32位外设组件接口(PCI)总线传输的8,16或32位像素与显示存储器中的像素进行对齐,并通过避免像素数据的移动来压缩像素信息,显着提高图形显示性能 显示内存 通过不传输不被传送修改的像素的数据来实现压缩。 相反,要修改的连续像素的每个像素数据集先于未修改像素字节的计数。 通过确保传送的像素集中的字之间的边界与显示存储器中的对应目标像素内的字符之间的边界相匹配来实现对准。 该对准显着地加快了修改显示存储器内的像素数据。 确保此对齐的负担位于启动传输的应用程序软件上。 对于诸如驾驶舱的静态图像,可以在软件使用的图像信息被编译成位图的时候实现该对准。 对于诸如精灵之类的动态图像,可以通过将精灵的像素数据的所有可能的字对齐编译成不同的位图版本来实现。 在运行时,应用软件使用sprite的当前位置动态选择要传输的位图版本。 在一个实施例中,图形加速器解释传送的位图并相应地更新显示存储器。 在另一实施例中,在主机CPU上执行的软件直接将预对准的像素数据写入显示存储器。

    Application programming interfaces for data parallel computing on multiple processors
    15.
    发明授权
    Application programming interfaces for data parallel computing on multiple processors 有权
    用于多个处理器上的数据并行计算的应用程序编程接口

    公开(公告)号:US08286198B2

    公开(公告)日:2012-10-09

    申请号:US12264896

    申请日:2008-11-04

    Abstract: A method and an apparatus for a parallel computing program calling APIs (application programming interfaces) in a host processor to perform a data processing task in parallel among compute units are described. The compute units are coupled to the host processor including central processing units (CPUs) and graphic processing units (GPUs). A program object corresponding to a source code for the data processing task is generated in a memory coupled to the host processor according to the API calls. Executable codes for the compute units are generated from the program object according to the API calls to be loaded for concurrent execution among the compute units to perform the data processing task.

    Abstract translation: 描述了用于在主处理器中调用API(应用程序编程接口)并行计算程序的方法和装置,以在计算单元之间并行地执行数据处理任务。 计算单元耦合到主处理器,包括中央处理单元(CPU)和图形处理单元(GPU)。 根据API调用在与主机处理器耦合的存储器中产生与数据处理任务的源代码相对应的程序对象。 计算单元的可执行代码根据要在计算单元之间并行执行的API调用从程序对象生成以执行数据处理任务。

    SUBBUFFER OBJECTS
    16.
    发明申请
    SUBBUFFER OBJECTS 有权
    SUBBUFFER对象

    公开(公告)号:US20110285729A1

    公开(公告)日:2011-11-24

    申请号:US12892834

    申请日:2010-09-28

    CPC classification number: G09G5/001 G06F9/5044 G06T1/60 G09G2360/127

    Abstract: A method and an apparatus for a parallel computing program using subbuffers to perform a data processing task in parallel among heterogeneous compute units are described. The compute units can include a heterogeneous mix of central processing units (CPUs) and graphic processing units (GPUs). A system creates a subbuffer from a parent buffer for each of a plurality of heterogeneous compute units. If a subbuffer is not associated with the same compute unit as the parent buffer, the system copies data from the subbuffer to memory of that compute unit. The system further tracks updates to the data and transfers those updates back to the subbuffer.

    Abstract translation: 描述了使用子缓冲器在异构计算单元之间并行执行数据处理任务的并行计算程序的方法和装置。 计算单元可以包括中央处理单元(CPU)和图形处理单元(GPU)的异构混合。 系统从多个异构计算单元中的每一个的父缓冲器创建子缓冲器。 如果子缓冲区未与父缓冲区相同的计算单元关联,则系统将数据从子缓冲区复制到该计算单元的存储器。 该系统进一步跟踪数据的更新并将这些更新传送回子缓冲区。

    Method and system for digital rendering over a network
    17.
    发明授权
    Method and system for digital rendering over a network 有权
    通过网络进行数字渲染的方法和系统

    公开(公告)号:US07266616B1

    公开(公告)日:2007-09-04

    申请号:US09925157

    申请日:2001-08-08

    Abstract: Digital rendering over a network is described. Rendering resources associated with a project are stored in a project resource pool at a rendering service site, and for each rendering request received from a client site the project resource pool is compared to current rendering resources at the client site. A given rendering resource is uploaded from the client site to the rendering service only if the project resource pool does not contain the current version, thereby conserving bandwidth. In one embodiment, redundant generation of raw rendering resource files is avoided by only generating those raw rendering resource files not mated with generated rendering resource files. Reducing redundant generation of raw resources is also described, as well as statistically reducing the number of raw resource files required to be uploaded to the rendering service for multi-frame sessions.

    Abstract translation: 描述网络上的数字渲染。 与项目相关联的渲染资源存储在渲染服务站点的项目资源池中,并且对于从客户端站点接收到的每个呈现请求,将项目资源池与客户端站点上的当前呈现资源进行比较。 只有当项目资源池不包含当前版本时,给定的渲染资源才从客户端站点上传到渲染服务,从而节省带宽。 在一个实施例中,通过仅生成与生成的渲染资源文件不匹配的那些原始渲染资源文件来避免原始渲染资源文件的冗余生成。 还描述了减少原始资源的冗余生成,并且统计地减少了上传到多帧会话的呈现服务所需的原始资源文件的数量。

    Method and apparatus for implementing level of detail with ray tracing

    公开(公告)号:US07126605B1

    公开(公告)日:2006-10-24

    申请号:US10681829

    申请日:2003-10-07

    CPC classification number: G06T15/40 G06T15/06 G06T2210/36

    Abstract: The present invention relates to computer graphics applications involving scene rendering using objects modeled at multiple levels of detail. In accordance with an aspect of the invention, a ray tracer implementation allows users to specify multiple versions of a particular object, categorized by LOD ID's. A scene server selects the version appropriate for the particular scene, based on the size of the object on the screen for example, and provides a smooth transition between multiple versions of an object model. In one example, the scene server will select two LOD representations associated with a given object and assign relative weights to each representation. The LOD weights are specified to indicate how to blend these representations together. A ray tracer computes the objects hit by camera rays associated with pixels in the camera window, as well as secondary rays in recursive implementations, and rays striking LOD objects are detected and shaded in accordance with the weights assigned to the different representations. Embodiments are disclosed for level of detail control using both forward ray tracing and backward ray tracing, including handling of camera rays, reflected rays, refracted rays and shadow rays.

Patent Agency Ranking