Abstract:
Vertex shader and pixel shader are the newest programmable units of graphics processing unit. According to their architecture and Direct3D9 application execution flow on single machine, transparent shader-based Direct3D9 application running on graphics cluster parallelization strategy is proposed. Graphics cluster can be divided into rendering resource distributing node and rendering resource rendering node. Among them, distributing node is responsible for converting Direct3D9 application to six kinds of rendering resource, including command stream, vertex shader, pixel shader, vertex stream, index stream and texture stream. Rendering node is responsible for reconstructing Direct3D9 rendering command based on the description information and resource data of rendering resource. All of the rendering nodes reserve the entire rendering resource and distribute rendering task through computing the bounding box of multi-stream based scene data in the screen space. Experimental results show that this strategy can realize transparent shader-based Direct3D9 application parallelization. In contrast to single machine rendering, parallel graphics rendering based on graphics cluster can not only promote rendering performance but also achieve higher rendering speedup.