a seminar on 1 . content 2 the stream programming model the stream programming model-ii advantage...

Post on 18-Jan-2016

221 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

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

top related