摘要:
A wide hash key, that exceeds the word size of a GPU memory, is used to perform a key-value mapping by using paired hash tables configured in a multi-level tree configuration. The wide hash key is partitioned into segments, where each segment is used as a key into a respective paired hash table. The paired hash table has one hash table that stores an upper portion of an address and another hash table that stores the lower portion of the address. The upper and lower portions are combined to generate either an address to a paired hash table at the next level in the multi-level tree configuration or the address to the location of the value associated with the wide hash key.
摘要:
Systems, apparatus and methods are described including distributing batches of geometric objects to a multi-core system, at each processor core, performing vertex processing and geometry setup processing on the corresponding batch of geometric objects, storing the vertex processing results shared memory accessible to all of the cores, and storing the geometry setup processing results in local storage. Each particular core may then perform rasterization using geometry setup results obtained from local storage within the particular core and from local storage of at least one of the other processor cores.
摘要:
One device generates a first screen by executing some processes including a first process of rendering processing of the screen to be displayed in accordance with the information required to determine the rendered contents. On the other hand, devices except for the one device generates a second screen by executing some processes, which do not include the first process but include a second process different from the first process, of the rendering processing of the screen to be displayed in accordance with that information, and sends the second screen to the one device. Then, the one device receives the second screens generated by the respective devices except for the one device, and generates the screen to be displayed by compositing the first and second screens.
摘要:
The time needed for back-end work can be estimated without actually doing the back-end work. Front-end counters record information for a cost model and heuristics may be used for when to split a tile and ordering work dispatch for cores. A special rasterizer discards triangles and fragments outside a sub-tile.
摘要:
One embodiment of the present invention sets forth a technique for rendering graphics primitives in parallel while maintaining the API primitive ordering. Multiple, independent geometry units perform geometry processing concurrently on different graphics primitives. A primitive distribution scheme delivers primitives concurrently to multiple rasterizers at rates of multiple primitives per clock while maintaining the primitive ordering for each pixel. The multiple, independent rasterizer units perform rasterization concurrently on one or more graphics primitives, enabling the rendering of multiple primitives per system clock.
摘要:
A graphics client receives a frame, the frame comprising scene model data. A server load balancing factor and a prospective rendering factor is set. The frame is partitioned into a plurality of server bands based on the server load balancing factor and the prospective rendering factor. The server bands are distributed to a plurality of compute servers. Processed server bands are received from the compute servers. A processed frame is assembled based on the received processed server bands. The processed frame is transmitted for display to a user as an image.
摘要:
For ray tracing scenes composed of primitives, systems and methods accelerate ray/primitive intersection identification by testing rays against elements of geometry acceleration data (GAD) in a parallelized intersection testing resource. Groups of rays can be described as shared attribute information and individual ray data for efficient ray data transfer between a host processor and the testing resource. The host processor also hosts shading and/or management processes controlling the testing resource and adapting the ray tracing, as necessary or desirable, to meet criteria, while reducing degradation of rendering quality. The GAD elements can be arranged in a graph, and rays can be collected into collections based on whether a ray intersects a given element. When a collection is deemed ready for further testing, it is tested for intersection with GAD elements connected, in the graph, to the given element. The graph can be hierarchical such that rays of a given collection are tested against children of the GAD element associated with the given collection.
摘要:
Techniques and tools for rendering procedural graphics are described (see figure 2). For example, an architecture is provided which allows evaluation of geometric transform texture and shading procedures locally for a given set of procedure parameter values. This evaluation is performed in parallel for different parameter values on a single instruction, multiple data array to allow parallel processing of a procedure set In another example, a sampling controller is described which selects sets of parameter points for evaluation based on information in tag maps, rate maps, and parameter maps.
摘要:
A distributed rendering system with compression of streams of rendering commands. The controlling device (110) fits streams of rendering commands to the rendering devices (120) within the frame duration by distributing compressed streams. Streams are compressed by caching relatively duplicative sequences of rendering commands. To provide additional efficiency, textures that are mapped to 3D objects can be stored at the rendering devices (120) such that they do not need to be sent from a controlling device (110) every time the rendering device (120) needs them. Also, long chains of individual vertex calls can be converted on the fly into vertex arrays.