the university of north carolina at chapel hill a view-independent graphics rendering architecture...

30
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL A View-Independent Graphics Rendering Architecture Jason Stewart, Eric P. Bennett, and Leonard McMillan Presented by Anselmo Lastra University of North Carolina at Graphics Hardware 2004 Grenoble, France PixelVie w

Upload: blaise-wilkinson

Post on 12-Jan-2016

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL A View-Independent Graphics Rendering Architecture Jason Stewart, Eric P. Bennett, and Leonard McMillan

The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL

A View-Independent Graphics Rendering

Architecture

Jason Stewart, Eric P. Bennett, and Leonard McMillan

Presented by Anselmo Lastra

University of North Carolina at Chapel Hill

Graphics Hardware 2004 Grenoble, France

Graphics Hardware 2004 Grenoble, France

PixelView

Page 2: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL A View-Independent Graphics Rendering Architecture Jason Stewart, Eric P. Bennett, and Leonard McMillan

The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL

Why View-Independence?

Why View-Independence?

Decouples Rendering from Viewing

Eliminates latencyProvides uniform frameratesAllows increased shading complexity

Needed for future applicationsShared multi-user virtual environmentsTrue three-dimensional (Autostereo) displays

Page 3: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL A View-Independent Graphics Rendering Architecture Jason Stewart, Eric P. Bennett, and Leonard McMillan

The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL

True 3-Dimensional Displays

True 3-Dimensional Displays

Promising 3-D Display Technologies

Lenticular, and fly’s-eye opticsBarrier-based methodsReflective opticsHolographic optics

Matusik’s lenticular 3D display

Benton’s holographic 3D display

Technology is MaturingProblem:

How to generatethe content?Requires 1000’s of simultaneous views

Isaksen’s fly’s-eye display

Page 4: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL A View-Independent Graphics Rendering Architecture Jason Stewart, Eric P. Bennett, and Leonard McMillan

The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL

Using Today’s ArchitectureUsing Today’s Architecture

I guess you could… buy 1024 GPUs10 years of Moore’s law would yield…

4 doublings in performance (only need 64 GPUs)At least 2 doublings in power (only needs 10 KW)

There has to be a better wayTraditional graphics architectures are inefficient for view-independent graphics

resourceswasted

power moreyInefficenc

Page 5: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL A View-Independent Graphics Rendering Architecture Jason Stewart, Eric P. Bennett, and Leonard McMillan

The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL

Previous WorkPrevious Work

Low Latency Rendering3D Light field Viewing H/W [Regan 99] Frameless Redering [Bishop 94 ]Just-in-time Pixels [Mine & Bishop 93]

View-Independent RenderingMultiple viewpoint rendering [Halle 98]

4D ParameterizationLight Field [Levoy & Hanrahan 96], Lumigraph [Gortler 96]

Micropolygon RasterizationReyes [Cook 87]Reyes streaming H/W pipeline [Owens 02]

Page 6: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL A View-Independent Graphics Rendering Architecture Jason Stewart, Eric P. Bennett, and Leonard McMillan

The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL

Rearchitecting the Pipeline

Rearchitecting the Pipeline

Classic “view-dependent” pipeline

Geometry RasterizeVertex

Processing

FragmentProcessing

Visibility 2DFramebuffer

Scanout

View Specification Sampling

Page 7: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL A View-Independent Graphics Rendering Architecture Jason Stewart, Eric P. Bennett, and Leonard McMillan

The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL

Rearchitecting the Pipeline

Rearchitecting the Pipeline

Proposed “view-independent” pipeline

GeometryFragment

ProcessingSubdivideinto points

Point-Casting

Scatter 4DFramebuffer

Scanout

View Specification

Sampling

Hardware Prototype

Host PC

Page 8: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL A View-Independent Graphics Rendering Architecture Jason Stewart, Eric P. Bennett, and Leonard McMillan

The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL

PixelView PrototypePixelView Prototype

Page 9: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL A View-Independent Graphics Rendering Architecture Jason Stewart, Eric P. Bennett, and Leonard McMillan

The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL

PixelView PrototypePixelView Prototype

100 Mhz XILINX SpartanII-E FPGA300k Gates16MB100MHzSDRAM5000 lines of Verilog6000 linesof C# onhost PC

Page 10: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL A View-Independent Graphics Rendering Architecture Jason Stewart, Eric P. Bennett, and Leonard McMillan

The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL

PixelView DemoPixelView Demo

Page 11: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL A View-Independent Graphics Rendering Architecture Jason Stewart, Eric P. Bennett, and Leonard McMillan

The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL

System PartitioningSystem Partitioning

The prototype pipeline implementation

GeometryFragment

ProcessingSubdivideinto points

Point-Casting

Scatter 4DFramebuffer

Scanout

View Specification

Sampling

Hardware Prototype

Host PC

Page 12: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL A View-Independent Graphics Rendering Architecture Jason Stewart, Eric P. Bennett, and Leonard McMillan

The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL

PixelView 4D FramebufferPixelView 4D Framebuffer

16 MBytes of Framebuffer memory

Reconfigurable (ex. 8x8x256x256x(rgb + z))16 bits (5/6/5) rgb16 bits z

Page 13: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL A View-Independent Graphics Rendering Architecture Jason Stewart, Eric P. Bennett, and Leonard McMillan

The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL

View SelectionView Selection

Every view is just a 2D planar slice through the 4D framebufferWhich, after some simplifying assumptions,reduces to:

vvv

uuu

ttt

sss

CjBiAjiv

CjBiAjiu

CjBiAjit

CjBiAjis

),(

),(

),(

),(

Page 14: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL A View-Independent Graphics Rendering Architecture Jason Stewart, Eric P. Bennett, and Leonard McMillan

The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL

Linear Expression Evaluators

Linear Expression Evaluators

Simple datapath replicated for each ofs, t, u, and vPixel rateTrivialH/W costEasy toparallelizeDrop inreplacement for traditional scanout

+

BiAiACCrow ACCcol

Page 15: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL A View-Independent Graphics Rendering Architecture Jason Stewart, Eric P. Bennett, and Leonard McMillan

The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL

Memory Access PatternsMemory Access Patterns

For each view the LEE generates:s(i,j), t(i,j), u(i,j), v(i,j)

S (5.7 format)

U (10.6 format)

T (5.7 format)

V (10.6 format)

Page 16: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL A View-Independent Graphics Rendering Architecture Jason Stewart, Eric P. Bennett, and Leonard McMillan

The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL

Scan out PerformanceScan out Performance

Typical < 10% Memory bandwidth required for scan out 640x480 VGA100 MHz SDRAM, and order of magnitude behind the state of the art (DDR @ 500MHz)Can easily support multiple simultaneous “views”

Page 17: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL A View-Independent Graphics Rendering Architecture Jason Stewart, Eric P. Bennett, and Leonard McMillan

The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL

Filling the FramebufferFilling the Framebuffer

Elemental Rendering Primitive is the Outgoing Radiance from a Point

Page 18: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL A View-Independent Graphics Rendering Architecture Jason Stewart, Eric P. Bennett, and Leonard McMillan

The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL

Point CastingPoint Casting

Instead of the natural “planar” radiance parameterizationabout each pointWe align with parameterization planesSimplifies mapping ),,(),,()(

),,(),,()(

zyxBtzyxAtr

zyxBszyxAsq

PrPr

PqPq

Page 19: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL A View-Independent Graphics Rendering Architecture Jason Stewart, Eric P. Bennett, and Leonard McMillan

The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL

In Other Words…In Other Words…

Parameterize outgoing radiance on fixed planes and resample it.

q

Page 20: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL A View-Independent Graphics Rendering Architecture Jason Stewart, Eric P. Bennett, and Leonard McMillan

The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL

Unexplored View Coherence

Unexplored View Coherence

Outgoing radiance from a point is smoother than spatial variationsToday’s architectures do not exploit thisStill amplespatial coherenceWe support 2formats

Uniform colorSpatially varying

Page 21: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL A View-Independent Graphics Rendering Architecture Jason Stewart, Eric P. Bennett, and Leonard McMillan

The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL

Unexplored CoherenceUnexplored Coherence

Outgoing radiance from a point is smoother than spatial variationsToday’s architectures do not exploit this

Lambertian

View-dependency

Occlusion

Page 22: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL A View-Independent Graphics Rendering Architecture Jason Stewart, Eric P. Bennett, and Leonard McMillan

The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL

Geometry SubdivisionGeometry Subdivision

Subdivide until primitive is “point-sized”Backward compatibility with polygonsReminiscent of Reyes rendering pipeline

Every primitive requires a world-spacesubdivision methodHowever, Reyes subdivision is view-dependent (the stopping criterion is based on pixel grid)

Probably better methods

Page 23: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL A View-Independent Graphics Rendering Architecture Jason Stewart, Eric P. Bennett, and Leonard McMillan

The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL

Prototype LimitationsPrototype Limitations

Points are transferred via USB 1.1Achieved 80,000 points/second (which means 5,120,000 rays/second)Each pointcast requires at least 64 readsRequires 17% of memory B/WCould easily include 4 or more parallel point-casting unitsEntire design uses 23% of chip

Page 24: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL A View-Independent Graphics Rendering Architecture Jason Stewart, Eric P. Bennett, and Leonard McMillan

The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL

A Practical PixelView System

A Practical PixelView System

The prototype demonstrates feasibility, but what would a real system entail?Improve:

ScalabilityField of ViewSubdivision TechniquesOutput Bandwidth

Page 25: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL A View-Independent Graphics Rendering Architecture Jason Stewart, Eric P. Bennett, and Leonard McMillan

The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL

Distributing the Frame Buffer

Distributing the Frame Buffer

Page 26: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL A View-Independent Graphics Rendering Architecture Jason Stewart, Eric P. Bennett, and Leonard McMillan

The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL

Expanding Field of ViewExpanding Field of View

6 Slabs @ 64x64x1024x1024x(8+8) = 64 GBytes

But … 1MB was huge for a 64k PDP-11

Page 27: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL A View-Independent Graphics Rendering Architecture Jason Stewart, Eric P. Bennett, and Leonard McMillan

The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL

Addressing Output Bandwidth

Addressing Output Bandwidth

Currently we can support only a handful of dynamic views out of the framebufferAn Autostereoscopic Displays would require every pixel on every frameHigh-speed interconnects are available >5GHz per pin without compression

Page 28: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL A View-Independent Graphics Rendering Architecture Jason Stewart, Eric P. Bennett, and Leonard McMillan

The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL

Improving SubdivisionImproving Subdivision

Our conservative subdivision methods oversample by a factor of 4 or more after factoring out depth complexity Fast, on-the-fly, hardware friendly, uniform subdivision would be great

Page 29: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL A View-Independent Graphics Rendering Architecture Jason Stewart, Eric P. Bennett, and Leonard McMillan

The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL

ConclusionsConclusions

PixelView simultaneously supports low latency and complex shadingPixelView supports a wide range of primitives and IBR data structuresPixelView is scalable to:

A full field of viewHigh resolutionsMulti-user environments

PixelView can power the next generation of display technologies

Page 30: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL A View-Independent Graphics Rendering Architecture Jason Stewart, Eric P. Bennett, and Leonard McMillan

The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL

Thank You – Questions?Thank You – Questions?

A View-Independent Graphics Rendering

Architecture

PixelView