Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme...

95
Die Welt im Browser Die Welt im Browser Das 3D-Internet der Zukunft Das 3D-Internet der Zukunft Die Welt im Browser Die Welt im Browser Das 3D-Internet der Zukunft Das 3D-Internet der Zukunft Philipp Slusallek German Research Center for Artificial Intelligence (DFKI) Intel Visual Computing Institute, Saarland University Saarland University, Computer Graphics Group Visual Computing Institute

Transcript of Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme...

Page 1: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

Die Welt im BrowserDie Welt im BrowserDas 3D-Internet der ZukunftDas 3D-Internet der ZukunftDie Welt im BrowserDie Welt im BrowserDas 3D-Internet der ZukunftDas 3D-Internet der Zukunft

Philipp SlusallekGerman Research Center for Artificial Intelligence (DFKI)

Intel Visual Computing Institute, Saarland University

Saarland University, Computer Graphics Group

VisualComputingInstitute

Page 2: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

OverviewOverview● IntroIntro● Past researchPast research● Three main research topicsThree main research topics

– Intelligent Simulated RealityIntelligent Simulated Reality– 3D Internet: Interactive 3D-Graphics in the Browser3D Internet: Interactive 3D-Graphics in the Browser– Exploiting high-performance many-core hardwareExploiting high-performance many-core hardware

● ResultsResults● Brief conclusionsBrief conclusions

Page 3: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

Computer ScienceComputer Scienceat the Saarland Campusat the Saarland Campus

VisualComputingInstitute

MultimodalComputingandInteraction

Page 4: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

What is the IntelWhat is the IntelVisual Computing Institute?Visual Computing Institute?● An open and collaborative research instituteAn open and collaborative research institute

– Targeting basic research in Visual ComputingTargeting basic research in Visual Computing– Special emphasis on many-core hardwareSpecial emphasis on many-core hardware

● A research institute of Saarland UniversityA research institute of Saarland University– Funded by industry (Intel) and public agenciesFunded by industry (Intel) and public agencies– Partners: Intel, UdS, DFKI, MPI-INF, MPI-SWSPartners: Intel, UdS, DFKI, MPI-INF, MPI-SWS– Headed by two university professorsHeaded by two university professors

● Open for other members (industry and research)Open for other members (industry and research)– European Hub for Visual Computing researchEuropean Hub for Visual Computing research

Page 5: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

What will we be doing?What will we be doing?● Covering Entire Visual Computing PipelineCovering Entire Visual Computing Pipeline

– Digital Signal and Media ProcessingDigital Signal and Media Processing– Markerless Geometry, Motion, Appearance CaptureMarkerless Geometry, Motion, Appearance Capture– Visual Simulation & ProcessingVisual Simulation & Processing– Virtual Humans & Intelligent BehaviorVirtual Humans & Intelligent Behavior– Advanced Rendering and VisualizationAdvanced Rendering and Visualization– Protocols for 3D Internet & Media NetworkingProtocols for 3D Internet & Media Networking– Affective & Context-Based Visual InteractionAffective & Context-Based Visual Interaction– High-Performance Parallel ComputingHigh-Performance Parallel Computing

Some of the hottest topics in the fieldSome of the hottest topics in the field

Page 6: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

Where can this be applied?Where can this be applied?● Research & Development Research & Development

– Testing and evaluating more options quickerTesting and evaluating more options quicker● Deployment & MaintenanceDeployment & Maintenance

– Efficiently build, run, and maintain complex systemsEfficiently build, run, and maintain complex systems● CollaborationCollaboration

– Jointly work on projects from different places and timesJointly work on projects from different places and times● Training and TeachingTraining and Teaching

– Provide effective and safe learning environmentsProvide effective and safe learning environments● Entertainment and MarketingEntertainment and Marketing

– Create more convincing and exciting experiencesCreate more convincing and exciting experiences

Page 7: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

How does this help? (cont'd)How does this help? (cont'd)● Advantages for ResearchersAdvantages for Researchers

– Even more interesting research topicsEven more interesting research topics– Enlarged research & industry networkEnlarged research & industry network

● Advantages for StudentsAdvantages for Students– More jobs during the study and after the MasterMore jobs during the study and after the Master

● Advantages for Intel and Industry PartnersAdvantages for Intel and Industry Partners– Access to top research results & excellent talentAccess to top research results & excellent talent– New ideas, efficient algorithms, optimized systemsNew ideas, efficient algorithms, optimized systems

● Advantages for the RegionAdvantages for the Region– Strengthening the region as center for IT researchStrengthening the region as center for IT research– Many additional well-paid, high-tech jobsMany additional well-paid, high-tech jobs

Page 8: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

DFKI:DFKI:Combining Graphics and AICombining Graphics and AI

Agents and Simulated RealityPhilipp Slusallek

Intelligent Simulated RealityHilko Hoffmann

Living Lab: SaarlandVisualization Center

Georg Demme

Multimodal Computingand Interaction (TP7)Cluster of Excellence

Computer Graphics GroupSaarland University

Safe and Secure SoftwareWerner Stephan

Multiagent SystemsK. Fischer/M. Klusch

Page 9: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

Multi Agents:Multi Agents:Steel Mill „Saarstahl“ Steel Mill „Saarstahl“

Page 10: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

Multi Agents:Multi Agents:Steel Mill „Saarstahl“ Steel Mill „Saarstahl“

Iron from blast furnaceSteel converters

RefinementPre

pro

c ess

ing

Continuous Casting

S t e e l w o r kS t e e l w o r k

Further processing

Page 11: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

Agents in Games:Agents in Games:Intelligent Traffic BehaviorIntelligent Traffic Behavior

xaitment GmbH

Page 12: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

NMM: Network-Integrated NMM: Network-Integrated Multimeda MiddlewareMultimeda Middleware● Mapping flow graphs to distributed systemsMapping flow graphs to distributed systems

Page 13: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

NMM: Network-Integrated NMM: Network-Integrated Multimeda MiddlewareMultimeda Middleware

Host A Host B

● Mapping flow graphs to distributed systemsMapping flow graphs to distributed systems

NMM {

Page 14: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

NMM: Network-Integrated NMM: Network-Integrated Multimeda MiddlewareMultimeda Middleware● Main FeaturesMain Features

– Motto: “The Network is the (Multimedia) Computer”Motto: “The Network is the (Multimedia) Computer”– Small core with many plugins (> 70)Small core with many plugins (> 70)

● Messaging, pluggable protocols, distributed sync, …Messaging, pluggable protocols, distributed sync, …● Generic, but focus on multi-media & entertainmentGeneric, but focus on multi-media & entertainment

– Many servicesMany services● Registry, seamless hand-over, parallel binding, app-level Registry, seamless hand-over, parallel binding, app-level

flexible sensor and adaptation mechanisms, QoS, ...flexible sensor and adaptation mechanisms, QoS, ...– Fully multi-threaded & native support for many-coreFully multi-threaded & native support for many-core– Commercial supported by spin-off Motama GmbHCommercial supported by spin-off Motama GmbH

● Dual licensed: open source and commercial Dual licensed: open source and commercial

Page 15: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

Graphics Research ResultsGraphics Research Results

Page 16: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

RealtimeRealtimeRay TracingRay Tracing

Scientific AmericanIssue August 2006

● Realtime Ray TracingRealtime Ray Tracing– Now in theNow in the

main streammain stream● Fierce competitionFierce competition

– Intel, Nvidia, ...Intel, Nvidia, ...– Building best HWBuilding best HW

for ray tracingfor ray tracing– New many-core HWNew many-core HW

announcedannounced

Page 17: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

Intel Larrabee Intel Larrabee Announcement @ IDF 2009Announcement @ IDF 2009

Page 18: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

Intelligent Simulated RealityIntelligent Simulated Reality

Page 19: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

Intelligent Simulated Reality Intelligent Simulated Reality ● RealityReality

– Large-scale 3D models, highly detailed & realistic, ...Large-scale 3D models, highly detailed & realistic, ...● SimulatedSimulated

– Illumination, acoustics, traffic, character animation, ...Illumination, acoustics, traffic, character animation, ...● IntelligentIntelligent

– Semantics as a core featureSemantics as a core feature– Multiagent systems, planning, speech, ...Multiagent systems, planning, speech, ...

● Systems Oriented Research & ToolsSystems Oriented Research & Tools– Build it from the ground up – reusing existing SWBuild it from the ground up – reusing existing SW

● Basis for the Future 3D InternetBasis for the Future 3D Internet

Page 20: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

SemanticWorld Model

P2P Middleware

MultiagentSimulation

TrafficSimulation

HumanSimulation

OntologyServices

AnimationGenerator

SensorNetworks

HybridVerification

AcousticSimulation

LightingSimulation

Realistic Realtime Rendering,3D-GUI, Semantic Interaction,

Tracking, and Immersive Visualization

USER

ISReal: System OverviewISReal: System Overview

Network

Page 21: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

SemanticWorld Model

P2P Middleware

MultiagentSimulation

TrafficSimulation

HumanSimulation

OntologyServices

AnimationGenerator

VirtualHuman

HybridVerification

AcousticSimulation

LightingSimulation

Realistic Realtime Rendering,3D-GUI, Semantic Interaction,

Tracking, and Immersive Visualization

USER

ISReal: System OverviewISReal: System Overview

Network

Page 22: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

New 3D PlatformNew 3D Platform● LightningLightning

– Immersive user interface Immersive user interface ● RTSGRTSG

– X3D based realtime scene graphX3D based realtime scene graph– Fastest X3D browserFastest X3D browser

● RTfactRTfact– Flexibility PLUS high-performanceFlexibility PLUS high-performance

● New Programming ModelsNew Programming Models– High-performance many-core computingHigh-performance many-core computing

RTSGSemantic X3D-based

Scene Graph

LightningImmersive Interaction

Raster.-Backend

RTfactRealtime

HWCPU, Cell, GPU, LRB

Page 23: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

RTSG:RTSG:Performance ComparisonPerformance Comparison

Page 24: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

RTfact: Realtime Ray Tracing RTfact: Realtime Ray Tracing Engine – Performance Engine – Performance

Page 25: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

SemanticWorld Model

P2P Middleware

MultiagentSimulation

TrafficSimulation

HumanSimulation

OntologyServices

AnimationGenerator

VirtualHuman

HybridVerification

AcousticSimulation

LightingSimulation

Realistic Realtime Rendering,3D-GUI, Semantic Interaction,

Tracking, and Immersive Visualization

USER

ISReal: System OverviewISReal: System Overview

Network

Page 26: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

Use Case:Use Case:DFKI Smart Factory DFKI Smart Factory

Page 27: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

Use Case:Use Case:DFKI Smart Factory DFKI Smart Factory ● Abstract modelAbstract model

of initial use caseof initial use case

Page 28: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

Use Case:Use Case:DFKI Smart Factory DFKI Smart Factory

Belt

● Geometric ModelGeometric Model

xend

xstart

Page 29: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

Use Case:Use Case:DFKI Smart Factory DFKI Smart Factory

·Carriage

Belt

● Geometric ModelGeometric Model

xend

xstart

xcarriage

Page 30: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

Use Case:Use Case:DFKI Smart Factory DFKI Smart Factory

·

Belt:

velocity [out]x_start [out]x_end [out]

XML3DObject:

Carriage:

position [in]

XM3DObject:

● Simple XML3D ModelSimple XML3D Model

xend

xstart

xcarriage

Page 31: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

Use Case:Use Case:DFKI Smart Factory DFKI Smart Factory

CarriageScript:

velocity [in]stop/go [in]where [in, out]running [out]

·

XML3DScript:

Belt:

velocity [out]

Carriage:

position [in]

xend

xstart

xcarriage

● Simple X3D ModelSimple X3D Model– With X3D script node for animationWith X3D script node for animation

XML3DObject:

XM3DObject:

Page 32: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

Use Case:Use Case:DFKI Smart Factory DFKI Smart Factory

CarriageScript:

velocity [in]stop/go [in]where [in, out]running [out]

·

Belt:

velocity [out]

Carriage:

position [in]

e.g. Java (via SAI)

xend

xstart

xcarriage

public voidreadableFieldChanged(X3DFieldEvent evt) { float delta_t= ..... if (!stop) where.setValue(where + velocity * delta_t);}

XML3DScript:

XML3DObject:

XM3DObject:

Page 33: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

Use Case:Use Case:DFKI Smart Factory DFKI Smart Factory

CarriageAgent:

velocity [in]stop/go [in]where [in, out]running [out]

·

Belt:

velocity [out]

Carriage:

position [in]

Agent-Behavior:

xend

xstart

xcarriage

e.g. FSM

plus● PDE,● Code to be executed,● ...

XML3DScript:

XML3DObject:

XM3DObject:

Page 34: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

Use Case:Use Case:DFKI Smart Factory DFKI Smart Factory

CarriageAgent:

velocity [in]stop/go [in]where [in, out]running [out]

·

Belt:

velocity [out]

Carriage:

position [in]

Agent-Behavior:

xend

xstart

xcarriage

e.g. FSM

plus● PDE,● Code to be executed,● ...

XML3DScript:

XML3DObject:

XM3DObject:

Page 35: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

Use Case:Use Case:DFKI Smart Factory DFKI Smart Factory

CarriageAgent:

velocity [in]stop/go [in]where [in, out]running [out]

·

Belt:

velocity [out]

Carriage:

position [in]

Agent-Behavior:

xend

xstart

xcarriage

PIM4AgentMetamodel

e.g. FSM

plus● PDE,● Code to be executed,● ...

XML3DScript:

XML3DObject:

XM3DObject:

Page 36: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

Use Case:Use Case:DFKI Smart Factory DFKI Smart Factory

CarriageAgent:

velocity [in]stop/go [in]where [in, out]running [out]

·

Verification View:

Belt:

velocity [out]

Carriage:

position [in]

Agent-Behavior:

xend

xstart

xcarriage

PIM4AgentMetamodel

e.g. FSM

plus● PDE,● Code to be executed,● ...

XML3DScript:

XML3DObject:

XM3DObject:

Page 37: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

Use Case:Use Case:DFKI Smart Factory DFKI Smart Factory

CarriageAgent:

velocity [in]stop/go [in]where [in, out]running [out]

·

Verification View:

Belt:

velocity [out]

Carriage:

position [in]

Agent-Behavior:

xend

xstart

xcarriage

PIM4AgentMetamodel

HybridSystemVerifyer

e.g. FSM

plus● PDE,● Code to be executed,● ...

Elimination Approach

Integrated with● VSE● DocTIP

XML3DScript:

XML3DObject:

XM3DObject:

Page 38: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

SemanticWorld Model

P2P Middleware

MultiagentSimulation

TrafficSimulation

BiologicalSimulation

OntologyServices

AnimationGenerator

VirtualHuman

HybridVerification

AcousticSimulation

LightingSimulation

Realistic Realtime Rendering,3D-GUI, Semantic Interaction,

Tracking, and Immersive Visualization

USER

ISReal: System OverviewISReal: System Overview

Network

Page 39: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

ISRealISRealIntelligent Simulated RealityIntelligent Simulated Reality● Where are we?Where are we?

– Development of base technology (ISReal, BMBF)Development of base technology (ISReal, BMBF)– Application to aerospace (Vision, EU, EADS)Application to aerospace (Vision, EU, EADS)– VR and functional descriptions in the cockpit (EADS)VR and functional descriptions in the cockpit (EADS)– Application to automotive (AvilusPlus, BMBF)Application to automotive (AvilusPlus, BMBF)– Applications to GIS (Stadtmitte am Fluss, Saarlouis)Applications to GIS (Stadtmitte am Fluss, Saarlouis)– Applications to Architecture (DFKI)Applications to Architecture (DFKI)

Page 40: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

3D-Internet3D-Internet

Page 41: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

3D Internet3D Internet● Internet: THE communication networkInternet: THE communication network

– Web browser: most used application, open all dayWeb browser: most used application, open all day– Everything converges to IP & Open NetworksEverything converges to IP & Open Networks

● Everything?Everything?– There is still hardly any 3D content on the Web !!There is still hardly any 3D content on the Web !!

● Does it matter?Does it matter?– 3D-HW: The other Mega-Trend of the last decade3D-HW: The other Mega-Trend of the last decade– Interactive 3D is the driving force for HW technologyInteractive 3D is the driving force for HW technology– All PCs/mobiles will contain many-core processorsAll PCs/mobiles will contain many-core processors– Immersive 3D display for consumers (→ IFA)Immersive 3D display for consumers (→ IFA)

● Ok, so what could we do with it?Ok, so what could we do with it?

Page 42: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

3D Internet: An Opportunity3D Internet: An Opportunity● New Markets: From gamers to all Web usersNew Markets: From gamers to all Web users

– Interactive 3D graphics as a core Web data type Interactive 3D graphics as a core Web data type – Industrial-strength common 3D middleware platformIndustrial-strength common 3D middleware platform

● Some interesting areasSome interesting areas– High-quality interactive presentationsHigh-quality interactive presentations

● Real materials, real lighting, real animation/behavior, ...Real materials, real lighting, real animation/behavior, ...● Applications: advertising, shopping, information, …Applications: advertising, shopping, information, …

– Interactive Collaboration & Communicating WorldsInteractive Collaboration & Communicating Worlds● Integration of digital media processing (e.g. through NMM)Integration of digital media processing (e.g. through NMM)● Collaborative engineering, serious games, training, ...Collaborative engineering, serious games, training, ...

– Entertainment & Social ExperienceEntertainment & Social Experience● Web-games, Online Worlds, interactive movies, ...Web-games, Online Worlds, interactive movies, ...

Page 43: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

What Can We Do With It?What Can We Do With It?● Integrate 3D Engine into Browser DirectlyIntegrate 3D Engine into Browser Directly

– Allow 3D graphics in any HTML page (e.g. XML3D)Allow 3D graphics in any HTML page (e.g. XML3D)– Starting with Firefox, expanding to WebKit, …Starting with Firefox, expanding to WebKit, …– Use runtime technology also as an SDK for appsUse runtime technology also as an SDK for apps

● Put Scene in DOM, Reuse Scripting and EventsPut Scene in DOM, Reuse Scripting and Events– Web is driven by content, not functions (libraries)Web is driven by content, not functions (libraries)– All Web developers can directly reuse their skillsAll Web developers can directly reuse their skills– Integrate semantic technology (e.g. RDFa)Integrate semantic technology (e.g. RDFa)

● Generic & Scalable Update ProtocolsGeneric & Scalable Update Protocols– Enable interacting 3D environments & simulationEnable interacting 3D environments & simulation– Efficient realtime interaction and streamingEfficient realtime interaction and streaming

Page 44: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

What Can We Do With It?What Can We Do With It?● Server-Based Rendering and Digital MediaServer-Based Rendering and Digital Media

– Bridging the performance, scalability, and IP gapBridging the performance, scalability, and IP gap– Full integration of realtime digital media !!!Full integration of realtime digital media !!!

● Using Realtime Ray Tracing for RenderingUsing Realtime Ray Tracing for Rendering– Fully automatic, robust, and physically-basedFully automatic, robust, and physically-based– Portable appearance & unified shading technologyPortable appearance & unified shading technology– Compiler as a tool for applicationsCompiler as a tool for applications

● Common Platform for Sensors & Simulations Common Platform for Sensors & Simulations – Multi-modal: 3D audio, physics, AI, animation, …Multi-modal: 3D audio, physics, AI, animation, …

● Common Interaction Widgets and MetaphorsCommon Interaction Widgets and Metaphors– Plug&Play for users and developersPlug&Play for users and developers

Page 45: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

What Can We Do With It?What Can We Do With It?● New networking and protocol approachesNew networking and protocol approaches

– Representations: From video to 3D geometryRepresentations: From video to 3D geometry– Durability: From persistent to quickly expiringDurability: From persistent to quickly expiring– Reliability: From error sensitive to error resilienceReliability: From error sensitive to error resilience– Persistence: From DVD downloads to AJAXPersistence: From DVD downloads to AJAX– Caching: From 50 MB to 100s of GigabytesCaching: From 50 MB to 100s of Gigabytes– Broadcasting: Just for efficient cache filling?Broadcasting: Just for efficient cache filling?

● Many new opportunitiesMany new opportunities– New research, development, products, and marketsNew research, development, products, and markets

Page 46: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

Firefox with XML3DFirefox with XML3D

Page 47: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

Firefox with XML3DFirefox with XML3D

Page 48: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

Firefox with XML3DFirefox with XML3D

Page 49: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

Exploiting Many-Core HardwareExploiting Many-Core Hardware

Page 50: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

Hardware has Changed !!!Hardware has Changed !!!

Nvidia Fermi Architecture

Intel Larrabee Architecture

Future Processor Chips

Massively parallelmany-core processors

„CPU“

Page 51: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

Programming IssuesProgramming Issues● HW architecture details are getting importantHW architecture details are getting important

– SIMD width, cache sizes & policies, mem latency, …SIMD width, cache sizes & policies, mem latency, …– Have to change algorithms to matchHave to change algorithms to match

● Inadequate programming languagesInadequate programming languages– Too low level: E.g. memory layout is fixed in C++Too low level: E.g. memory layout is fixed in C++– Too high level: No memory control in JavaToo high level: No memory control in Java

● Compilers know too little to generate good codeCompilers know too little to generate good code– Automatic vectorization has large failed (for us)Automatic vectorization has large failed (for us)– No information about memory and communicationNo information about memory and communication– We do not know how to describe this, either !!We do not know how to describe this, either !!

Page 52: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

OptionsOptions● Keep doing the low-level workKeep doing the low-level work

– No really an optionNo really an option● Domain specific languagesDomain specific languages

– Possible, but really, really hard – not recommendedPossible, but really, really hard – not recommended– Split-brain dilemma: working in multiple domainsSplit-brain dilemma: working in multiple domains– Tend to become full languages anywayTend to become full languages anyway

● Object-oriented designObject-oriented design– Has almost all the abstractions that we needHas almost all the abstractions that we need– But need to improve efficiency and performanceBut need to improve efficiency and performance

● Working on two approaches: RTfact and AnySLWorking on two approaches: RTfact and AnySL

Page 53: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

● Experience with OpenRT ray tracing engineExperience with OpenRT ray tracing engine– Difficult to make changes (both algorithms or data)Difficult to make changes (both algorithms or data)– Hard to modify for new technologyHard to modify for new technology– Inefficient for highly dynamic scenesInefficient for highly dynamic scenes

● Existing ray tracing systemsExisting ray tracing systems– Trade-offs between flexibility and performanceTrade-offs between flexibility and performance

● Fast hand-coded low-level optimizationsFast hand-coded low-level optimizations● Slow object-oriented designsSlow object-oriented designs

● Ideally: Need both flexibility AND performanceIdeally: Need both flexibility AND performance– RTfact: How far we can push existing technologyRTfact: How far we can push existing technology

RTfact:RTfact:Flexibility vs. PerformanceFlexibility vs. Performance

Page 54: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

● Generic building blocks in C++Generic building blocks in C++– Composable at design/compile time (templates)Composable at design/compile time (templates)– Decoupling of algorithms and data structuresDecoupling of algorithms and data structures– Multi-level abstractions using “C++ concepts”Multi-level abstractions using “C++ concepts”

● Pragmatic and Compatible ApproachPragmatic and Compatible Approach– Integrates with existing C++ tools and other SWIntegrates with existing C++ tools and other SW– Known limitations: e.g. templates & virtual functionsKnown limitations: e.g. templates & virtual functions

● High performanceHigh performance– Code morphing through Template Meta ProgrammingCode morphing through Template Meta Programming– Generation of fast code from large inlined blocksGeneration of fast code from large inlined blocks

RTfact:RTfact:General ApproachGeneral Approach

Page 55: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

RTfact:RTfact:Generic InfrastructureGeneric Infrastructure

Page 56: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

PinholeCamera camera; // initialization omitted // initialization omittedOpenGLFrameBuffer fb; // initialization omitted // initialization omitted

BasicScene<Triangle> scene; // initialization omittedBVH<Triangle> tree;BVHBuilder builder;BVHIntersector<PlueckerTriangleIntersector> intersector;RayTracingRenderer<PixelCenterSampler, DirectIlluminationIntegrator> renderer;

builder.build(tree, scene.prim.begin(), scene.prim.end());

renderer.render<64>(scene, camera, fb, fb.getClipRegion(), tree, intersector);

RTfact:RTfact:Example ApplicationExample Application

Page 57: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

PinholeCamera camera; // initialization omitted // initialization omittedOpenGLFrameBuffer fb; // initialization omitted // initialization omitted

BasicScene<Point> scene; // initialization omittedLoDKdTree<Point> tree;LoDKdTreeBuilder builder;LoDKdTreeIntersector<PointIntersector> intersector;RayTracingRenderer<PixelCenterSampler, LoDIntegrator> renderer;

builder.build(tree, scene.prim.begin(), scene.prim.end());

renderer.render<16>(scene, camera, fb, fb.getClipRegion(), tree, intersector);

RTfact:RTfact:Example ApplicationExample Application

Page 58: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

RTfact:RTfact:ResultsResults

Page 59: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

RTfact:RTfact:ConclusionsConclusions● Great successGreat success

– Most flexible and really fast ray tracing engineMost flexible and really fast ray tracing engine– Solid basis for much of our current workSolid basis for much of our current work

● BMBF Avilus, EU Vision, BMBF ISReal, BioInfo, IVCI, BMBF Avilus, EU Vision, BMBF ISReal, BioInfo, IVCI, FhG 3D Reconstruction, ... FhG 3D Reconstruction, ...

● LimitationsLimitations– Compile-time compositionCompile-time composition– Limited expressiveness of templates and C++Limited expressiveness of templates and C++– Practical issues: Error message, compile time, …Practical issues: Error message, compile time, …

● Need to have more control over the compilerNeed to have more control over the compiler– Higher level abstraction but control mapping to HWHigher level abstraction but control mapping to HW

Page 60: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

AnySL:AnySL:ShadersShaders● Programmable ShadingProgrammable Shading

– Allow to change core rendering featuresAllow to change core rendering features– RenderMan by Pixar [Hanrahan 1990]RenderMan by Pixar [Hanrahan 1990]

● The mother of all shading languagesThe mother of all shading languages– Rasterization:Rasterization:

● Specific to pipeline model (split into vertex and fragment)Specific to pipeline model (split into vertex and fragment)● Cg (Nvidia only), HLSL (DX only), glsl (OpenGL only)Cg (Nvidia only), HLSL (DX only), glsl (OpenGL only)

● Shader: A plugin for the innermost loopsShader: A plugin for the innermost loops– Run for every new ray, surface hit, light sample, …Run for every new ray, surface hit, light sample, …– For volume rendering: For every MADD along rayFor volume rendering: For every MADD along ray– For one-liners to thousands of LOCsFor one-liners to thousands of LOCs

Page 61: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

Example Shader: WoodExample Shader: Wood● Using RenderMan SLUsing RenderMan SL

surfacesurfacewood(float ringscale = 10;wood(float ringscale = 10; color lightwood = color(0.3, 0.12, 0.03),color lightwood = color(0.3, 0.12, 0.03), Darkwood = color(0.05, 0.01, 0.005);Darkwood = color(0.05, 0.01, 0.005); float Ka = 0.2, Kd = 0.4, Ks = 0.6, roughness = 0.1)float Ka = 0.2, Kd = 0.4, Ks = 0.6, roughness = 0.1){{ point NN, V, PP;point NN, V, PP; float y, z, r;float y, z, r;

NN = faceforward(normalize(N), I);NN = faceforward(normalize(N), I); V = -normalize(I);V = -normalize(I); PP = transform("shader", P);PP = transform("shader", P); PP += noise(PP);PP += noise(PP); y = ycomp(PP);y = ycomp(PP); z = zcomp(PP);z = zcomp(PP); r = sqrt(y * y + z * z) * ringscale;r = sqrt(y * y + z * z) * ringscale; r += abs(noise(r));r += abs(noise(r)); r -= floor(r);r -= floor(r); r = smoothstep(0, 0.8, r)r = smoothstep(0, 0.8, r) - smoothstep(0.83, 1.0, r);- smoothstep(0.83, 1.0, r); Ci = mix(lightwood, darkwood, r);Ci = mix(lightwood, darkwood, r); Oi = Os;Oi = Os; Ci = Oi * Ci * (Ka * ambient() + Kd * diffuse(NN))Ci = Oi * Ci * (Ka * ambient() + Kd * diffuse(NN)) + (0.3 * r + 0.7) * Ks * specular(NN, V, roughness);+ (0.3 * r + 0.7) * Ks * specular(NN, V, roughness);}}

Page 62: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

Why Are Shaders Good?Why Are Shaders Good?● PortabilityPortability

– Hide implementation details of the rendering system Hide implementation details of the rendering system from the programmerfrom the programmer

● ConvenienceConvenience– Provide graphics-related language constructs Provide graphics-related language constructs

(illuminance loop, vector/matrix data types)(illuminance loop, vector/matrix data types)● RestrictivenessRestrictiveness

– Prevent the programmer from using obscure Prevent the programmer from using obscure language featureslanguage features

● PerformancePerformance– Code can be customized to rendering systemCode can be customized to rendering system

Page 63: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

From Theory to Practice ...From Theory to Practice ...● PortabilityPortability

– Not really: often tied to a certain rendering modelNot really: often tied to a certain rendering model● ConvenienceConvenience

– Special constructs can be emulatedSpecial constructs can be emulated● Classes, operator overloading, templates, . . .Classes, operator overloading, templates, . . .

● RestrictivenessRestrictiveness– Newer SLs are more and more permissive. Why Newer SLs are more and more permissive. Why

reinvent C++?reinvent C++?● PerformancePerformance

– Mismatch between shader and renderer environment Mismatch between shader and renderer environment – Need to be more tightly integratedNeed to be more tightly integrated

Page 64: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

From Theory to Practice ...From Theory to Practice ...● Existing compilers targeted at one specific Existing compilers targeted at one specific

rendererrenderer– Rasterization (Cg, HLSL, glsl)Rasterization (Cg, HLSL, glsl)– RenderMan (Reyes)RenderMan (Reyes)

● If you build a new renderer and want shader If you build a new renderer and want shader supportsupport

. . . you end up building a compiler. . . you end up building a compiler

Page 65: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

Any SL: From ABIs toAny SL: From ABIs toan Embedded Compileran Embedded Compiler

Data

Code

Renderer

GlueCode

API/

ABI

APISpec

ShaderData

ShaderCode

Shader DSO/DLL

● Traditional ApproachTraditional Approach– Fixed ABI for dynamic loading of code/dataFixed ABI for dynamic loading of code/data– Many issuesMany issues

● Many virtual function calls, indirection, fixed interface, …Many virtual function calls, indirection, fixed interface, …● No common optimization (in inner kernel !!)No common optimization (in inner kernel !!)● No ability to transform code (e.g. packetization)No ability to transform code (e.g. packetization)

Page 66: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

AnySL: From ABIs toAnySL: From ABIs toan Embedded Compileran Embedded Compiler

Data

Code

Renderer

GlueCode

API/

ABI

API/

ABISpec

ShaderData

ShaderCode

Shader DSO/DLL

Data

Code

Renderer

GlueCode

ShaderData

ShaderCode

Compiler (LLVM)

Data

Code

Renderer

OptimizedShader

Compiler (LLVM)

API

Page 67: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

Example:Example:Packet-Based Ray TracingPacket-Based Ray Tracing● Modern ray tracers shoot packets of raysModern ray tracers shoot packets of rays

● Exploit SIMD instructions of modern CPUsExploit SIMD instructions of modern CPUs– Can execute instruction on k ≤ n floats at onceCan execute instruction on k ≤ n floats at once– Current architectures:Current architectures:

● SSE: k = 4SSE: k = 4 AVX: k = 8AVX: k = 8 Larrabee: k = 16Larrabee: k = 16● Shader has to shade n hit points at onceShader has to shade n hit points at once●

Page 68: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

AnySL:AnySL:Packetized ShadersPacketized Shaders● Writing packetized shaders is really HARDWriting packetized shaders is really HARD

– Not an option for any applicationNot an option for any application

● Traditional:Traditional:– A shader is given by a control-flow graph of scalar A shader is given by a control-flow graph of scalar

instructionsinstructions● Needed:Needed:

– A packetized shader is a new shader that executes k A packetized shader is a new shader that executes k instances of the original shader at onceinstances of the original shader at once

● Control flow of instances can diverge!Control flow of instances can diverge!

Page 69: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

Example Control FlowExample Control Flow● Diverging control flow of a shaderDiverging control flow of a shader

– Need to efficiently merge flows again!Need to efficiently merge flows again!

● Shaders are nested in a deep recursionShaders are nested in a deep recursion– Must handle closures and reordering of packetsMust handle closures and reordering of packets

Page 70: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

Packetized ShadersPacketized Shaders● ApproachApproach

– Program transformationProgram transformation– Flatten control flowFlatten control flow– Every instance executesEvery instance executes

all instructionsall instructions– Mask out wrong resultsMask out wrong results– Loops are iterated untilLoops are iterated until

last instance is donelast instance is done– Already exited instancesAlready exited instances

are invalidatedare invalidated– Simulate what GPUs do in HWSimulate what GPUs do in HW

Page 71: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

Packetized ShadersPacketized Shaders● You may not want to do this by handYou may not want to do this by hand

● CompilersCompilers– Cannot optimize well on flattened control flowCannot optimize well on flattened control flow– Optimize scalar version, then packetizeOptimize scalar version, then packetize

Page 72: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

Packetized ShaderPacketized Shader● Results of Master thesis (R. Karrenberg)Results of Master thesis (R. Karrenberg)

– Packet size k = 4Packet size k = 4– Completely automated (LLVM)Completely automated (LLVM)– Shaders written “scalarly”Shaders written “scalarly”– ““Packetized” automaticallyPacketized” automatically– On average 3.2x speedupOn average 3.2x speedup– Sometimes superlinear → localitySometimes superlinear → locality– Not specific to graphicsNot specific to graphics– Can be used whereverCan be used wherever

data parallelism is availabledata parallelism is available

Page 73: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

ResultsResults

Page 74: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

AnySL:AnySL:ConclusionsConclusions● SummarySummary

– Shaders are compiled to platform-independent Shaders are compiled to platform-independent machine codemachine code

– Can be produced from any shading languageCan be produced from any shading language– Or other languages like C++Or other languages like C++– Highly-optimizing JIT compiler within the rendererHighly-optimizing JIT compiler within the renderer– Reduce work for the renderer implementor:Reduce work for the renderer implementor:– Provides API adapters that are optimized awayProvides API adapters that are optimized away– Platform-independent packetizationPlatform-independent packetization– Significant speedup on benchmarks (3.2x )Significant speedup on benchmarks (3.2x )

Page 75: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

AnySL:AnySL:Future WorkFuture Work● Support other hardware targets & platforms:Support other hardware targets & platforms:

– HW: GPUs, Larrabee; HW: GPUs, Larrabee; SW: other front/back endsSW: other front/back ends● Shader debugging & visualizationShader debugging & visualization● Advanced, high-quality features:Advanced, high-quality features:

– Derivatives: Automatic di erentiation of codeffDerivatives: Automatic di erentiation of codeff– Bounds: Generate code for a ne arithmeticffiBounds: Generate code for a ne arithmeticffi

● Ray tracing as stream programming?Ray tracing as stream programming?– Express the renderer as net of shadersExpress the renderer as net of shaders– Exploit more parallelism create more coherence⇒Exploit more parallelism create more coherence⇒

● Adaptive multi-level compilationAdaptive multi-level compilation

Page 76: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

Outlook:Outlook:Beyond GraphicsBeyond Graphics● A new model for efficient pluginsA new model for efficient plugins

– May enable much more interesting appsMay enable much more interesting apps● E.g.: Program your own filters in Photoshop ?E.g.: Program your own filters in Photoshop ?

● Provide Programmer Tool for TransformationsProvide Programmer Tool for Transformations– Library of program transformationsLibrary of program transformations– Democratization of CompilersDemocratization of Compilers

● The programmer knows bestThe programmer knows best● Avoiding Domain Specific LanguagesAvoiding Domain Specific Languages

– They use new syntax to provide new semanticsThey use new syntax to provide new semantics● But: Syntactic expressiveness may be good enoughBut: Syntactic expressiveness may be good enough

– App provides compiler with additional semanticsApp provides compiler with additional semantics

Page 77: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

BALLView: Visualization for BALLView: Visualization for BioinformaticsBioinformatics

Page 78: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

Ongoing ProjectsOngoing ProjectsBioInformatics & Drug DesignBioInformatics & Drug Design

Betablocker docked toBeta-2 GPCR membranemolecule COX-2 with

Aspirin

Page 79: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

Architectural VisualizationArchitectural VisualizationNew DFKIBuilding

Page 80: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e
Page 81: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e
Page 82: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e
Page 83: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

GIS VisualizationGIS Visualization

Page 84: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e
Page 85: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e
Page 86: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e
Page 87: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e
Page 88: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

Ongoing ProjectsOngoing Projects

Page 89: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

ConclusionConclusion● Intelligent Simulated RealityIntelligent Simulated Reality

– Integrate AI, formal methods, and realtime graphicsIntegrate AI, formal methods, and realtime graphics– Solid platform for research and industrySolid platform for research and industry

● Portable and Efficient ShadingPortable and Efficient Shading– New compiler technology embedded in applicationNew compiler technology embedded in application– Allows complex code transformation & optimizationAllows complex code transformation & optimization

● 3D Internet3D Internet– High-quality interactive 3D for everyoneHigh-quality interactive 3D for everyone– Fully integrated with 2D browser technologyFully integrated with 2D browser technology– Completely new applications and business cases Completely new applications and business cases

● We always need good students to helpWe always need good students to help

Page 90: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e
Page 91: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e
Page 92: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e
Page 93: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

Pudget-VideoPudget-Video

Page 94: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

NMM: Network-Integrated NMM: Network-Integrated Multimeda MiddlewareMultimeda Middleware

Host A Host B

• Flow graph for local and distributed media processingFlow graph for local and distributed media processing

NMM {

Page 95: Die Welt im Browser - rw.cdl.uni-saarland.de Welt im Browser ... Visualization Center Georg Demme Multimodal Computing ... Iron from blast furnace Steel converters P Refinement r e

Server-Based Remote Server-Based Remote RenderingRendering• Combining RTRT and NMMCombining RTRT and NMM

– Rendering servers multiplex data to display clients Rendering servers multiplex data to display clients – Compression and streaming of video dataCompression and streaming of video data– Display client can also be a web browserDisplay client can also be a web browser

DisplayClient

DisplayClient

RayTracing Client

RayTracing Client

System Master

… …

Network