a seminar on 1 . content 2 the stream programming model the stream programming model-ii advantage...
TRANSCRIPT
A SEMINAR ON
1
www.engineersportal.in
CONTENT2
The Stream Programming Model
The Stream Programming Model-II
Advantage of Stream Processor
Imagine’s Performance
Implementation on the Stream Processor
www.engineersportal.in
The Stream Programming Model
Programmable Kernel
Stream 4datadatadatadatadata
Stream 3datadatadatadatadata
Stream 2datadatadatadatadata
Stream 1datadatadatadatadata
The Main Idea
3
www.engineersportal.in
The Stream Programming Model
Programmable Kernel
Stream 4datadatadatadatadata
Stream 3datadatadatadatadata
Stream 2datadatadatadatadata
Stream 1transformed datatransformed datatransformed datatransformed datatransformed data
The Main Idea
4
www.engineersportal.in
The Stream Programming Model
Programmable Kernel
Stream 4datadatadatadatadata
Stream 3datadatadatadatadata
Stream 2 data data data data data
Stream 1transformed datatransformed datatransformed datatransformed datatransformed data
The Main Idea
5
www.engineersportal.in
The Stream Programming Model
Programmable Kernel
Stream 4datadatadatadatadata
Stream 3 data data data data data
Stream 2 data data data data data
Stream 1transformed datatransformed datatransformed datatransformed datatransformed data
The Main Idea
6
www.engineersportal.in
The Stream Programming Model
Programmable Kernel
Stream 4 data data data data data
Stream 3 data data data data data
Stream 2 data data data data data
Stream 1transformed datatransformed datatransformed datatransformed datatransformed data
The Main Idea
7
www.engineersportal.in
The Stream Programming Model
Transform
Chaining Kernels Example: The Geometry Stage of the OpenGL Pipeline
InputVertexes
Shade Assemble
CullProjectToward
Rasterization Stage
8
www.engineersportal.in
The Stream Programming Model
Hardware Implementation: the Imagine Stream Processor
Communicate with host and issueoperations.
9
www.engineersportal.in
The Stream Programming Model
Hardware Implementation: the Imagine Stream Processor
Transfer databetween parts ofthe chip.
10
www.engineersportal.in
The Stream Programming Model
Hardware Implementation: the Imagine Stream Processor Local storage and
reuse of intermediatestreams.
11
www.engineersportal.in
The Stream Programming Model
Hardware Implementation: the Imagine Stream Processor
Store kernel code.
12
www.engineersportal.in
The Stream Programming Model
Hardware Implementation: the Imagine Stream Processor
Execute one kernel at a time.
13
www.engineersportal.in
The Stream Programming Model
Hardware Implementation: the Imagine Stream Processor
Connection withother Imagine chips.
14
www.engineersportal.in
Advantages of a Stream Processor
Programmability
Efficient Shading
Example: OpenGL Inefficiency
15
www.engineersportal.in
Advantages of a Stream Processor
Programmability
Efficient Shading
Example: OpenGL Inefficiency
1. Draw the plane.
16
www.engineersportal.in
Advantages of a Stream Processor
Programmability
Efficient Shading
Example: OpenGL Inefficiency
1. Draw the plane.2. Draw the cube.
17
www.engineersportal.in
Advantages of a Stream Processor
Programmability
Efficient Shading
Example: OpenGL Inefficiency
1. Draw the plane.2. Draw the cube.3. Redraw the cube.
18
www.engineersportal.in
Advantages of a Stream Processor
Programmability
Efficient Shading
Example: OpenGL Inefficiency
1. Draw the plane.2. Draw the cube.3. Redraw the cube.
Redraw the complete scene to obtain correct shadow on one object.
19
www.engineersportal.in
Advantages of a Stream Processor
Programmability
Efficient Shading
Hardware Implementation of New API
API Example:
Pixar’s Renderman
(Reyes Image Rendering Architecture)
20
www.engineersportal.in
Advantages of a Stream Processor
Producer - Consumer Locality Capture
Example: OpenGL Pipeline Inefficiency
GeometryStage
RasterizationStage
CompositeStage
Vertexes
21
www.engineersportal.in
Advantages of a Stream Processor
Producer - Consumer Locality Capture
Example: OpenGL Pipeline Inefficiency
GeometryStage
RasterizationStage
CompositeStage
VertexesAssembled Triangles
Fragments Pixels
22
www.engineersportal.in
Advantages of a Stream Processor
Producer - Consumer Locality Capture
Example: OpenGL Pipeline Inefficiency
GeometryStall
RasterizationStage
CompositeStage
VertexesAssembled Triangles
Fragments Pixels
23
www.engineersportal.in
Advantages of a Stream Processor
Producer - Consumer Locality Capture
Example: OpenGL Stream Inplementation
VertexStreams
FragmentStreams
PixelStreams
RasterizationKernels
CompositeKernels
GeometryKernels
Triangle Streams
24
www.engineersportal.in
Advantages of a Stream Processor
Producer - Consumer Locality Capture
Example: OpenGL Stream Inplementation
VertexStreams
FragmentStreams
PixelStreams
RasterizationKernels
CompositeKernels
GeometryKernels
Triangle Streams
25
www.engineersportal.in
Advantages of a Stream Processor
Flexible Resource Allocation
Example: OpenGL Pipeline Inefficiency
GeometryStage
RasterizationStall
CompositeStall
Vertexes
Waste of hardware capacity.
26
www.engineersportal.in
Advantages of a Stream Processor
Flexible Resource Allocation
Example: OpenGL Stream Implementation
VertexStreams
RasterizationKernels
CompositeKernels
GeometryKernels
No waste: kernels are pieces of coderunning on the same hardware!
27
www.engineersportal.in
Advantages of a Stream Processor
Pipeline Reordering
Example: Blending off in the OpenGL Pipeline
Part of Rasterization - Composite Stage
TextureKernel
BlendingKernel
DepthKernel
Fragments
28
www.engineersportal.in
Advantages of a Stream Processor
Pipeline Reordering
Example: Blending off in the OpenGL Pipeline
Part of Rasterization - Composite Stage
TextureKernel
BlendingKernel
DepthKernel
Fragments
Many fragments are needlessly textured
29
www.engineersportal.in
Advantages of a Stream Processor
Pipeline Reordering
Example: Blending off in the OpenGL Pipeline
Part of the Rasterization/Composite Stage
TextureKernel
DepthKernel
Fragments
We can reorder the pipeline.
30
www.engineersportal.in
Advantages of a Stream Processor
Obvious Scalability
Data Level Parallelism
TextureKernel
TextureKernel
TextureKernel
Fragments
31
www.engineersportal.in
Advantages of a Stream Processor
Obvious Scalability
Functional Parallelism
TextureKernel
BlendingKernel
DepthKernel
32
www.engineersportal.in
Imagine’s Performance
That looks great!
33
www.engineersportal.in
Imagine’s Performance
“Interaction between host processor and graphics subsystem not modeled” in Imagine.
“Many hardware-accelerated systems are limited by the bus between the processor and the graphics subsystem”.
34
www.engineersportal.in
Imagine’s Performance
“Imagine clocks rate is also significantly higher (500MHz vs. 120 MHz)”.
35
www.engineersportal.in
Imagine’s Performance36
www.engineersportal.in
Imagine’s Performance
But the comparison is still “instructive”. “Running our tests on commercial systems gives a sens
of relative complexity”.
Frame RateNormalized to the Sphere Test
NVIDIA Quadro and Imagine RelativePerformance
37
www.engineersportal.in
Implementation on the Stream Processor
Frame Speed
FrameComplexity/ Quality
OpenGL Reyes
38
www.engineersportal.in
Implementation on the Stream Processor
Frame Speed
FrameComplexity/ Quality
Enhanced OpenGLImplementation
Degraded ReyesImplementation
39
www.engineersportal.in
Implementation on the Stream Processor
OpenGLImplementation
ReyesImplementation
Isim Simulator Models complete Imagine architecture.
Idebug Simulator Do not model kernel stalls Do not model cluster occupancy effects Increased size of dynamically addressable memory
How to compare the results?
40
www.engineersportal.in
Results41
www.engineersportal.in
Conclusion
“When comparing graphics algorithms, [the lack of specialization] does make Imagine performance-neutral to the algorithms employed”.
“Our Reyes implementation made slight changes to the simulated Imagine hardware [...] Having a larger [size of addressable memory] was vital for kernel efficiency”.
“Imagine is an appropriate platform for comparing different rendering algorithms toward an eventual goal of high-performance hardware implementation.”
42
www.engineersportal.in
43
www.engineersportal.in
?44
www.engineersportal.in