21
Remote Ray Tracing for Mobile Applications Gregory Fotiades

Gregory Fotiades. Global illumination techniques are highly desirable for realistic interaction due to their high level of accuracy and photorealism

Embed Size (px)

Citation preview

Page 1: Gregory Fotiades.  Global illumination techniques are highly desirable for realistic interaction due to their high level of accuracy and photorealism

Remote Ray Tracing for Mobile

ApplicationsGregory Fotiades

Page 2: Gregory Fotiades.  Global illumination techniques are highly desirable for realistic interaction due to their high level of accuracy and photorealism

Global illumination techniques are highly desirable for realistic interaction due to their high level of accuracy and photorealism

Mobile devices are typically too weak in terms of computational abilities to perform global illumination techniques

Introduction

Page 3: Gregory Fotiades.  Global illumination techniques are highly desirable for realistic interaction due to their high level of accuracy and photorealism

For real time performance we need rendering speeds in the order of < 40ms (25fps)

Low powered devices by their nature do not have access to high performance hardware

Introduction – Cont.

Page 4: Gregory Fotiades.  Global illumination techniques are highly desirable for realistic interaction due to their high level of accuracy and photorealism

Pre-rendering the scene using tools such as “RenderMan on Demand”[5] is not feasible as we do not know what commands the user will send

Lorio et al.[6] did work in using cloud computational power to model urban environments in a realistic time frame

Background

Page 5: Gregory Fotiades.  Global illumination techniques are highly desirable for realistic interaction due to their high level of accuracy and photorealism

Low powered device will offload intensive global illumination computations to the cloud

Cloud will perform computations on distributed parallel architecture

Rendered scenes will be sent back to client

Solution

Page 6: Gregory Fotiades.  Global illumination techniques are highly desirable for realistic interaction due to their high level of accuracy and photorealism

Solution

Smart phone/PDA

Tablet

Real Time RenderingSystem(s)

Low Powered Laptop

Commands

Renderings

RenderingsCommands

Renderings

Commands

Page 7: Gregory Fotiades.  Global illumination techniques are highly desirable for realistic interaction due to their high level of accuracy and photorealism

Renderer in cloud must perform operations real time (< 40ms) – even less

Renderer will be hardware accelerated to achieve said real time

Renderer will need to scale in future works

Solution - Renderer

Page 8: Gregory Fotiades.  Global illumination techniques are highly desirable for realistic interaction due to their high level of accuracy and photorealism

Solution - Renderer

Page 9: Gregory Fotiades.  Global illumination techniques are highly desirable for realistic interaction due to their high level of accuracy and photorealism

RAW formats are too large even if we use convert colorspaces to make use of subsampling

Solution – Network Communication

Height Width Format Bytes Per Pixel (BPP)

Frames per Second (FPS)

Required Bandwidth

432 432 RGBA 4 24 137Mbps1080 1920 RGBA 4 24 1519Mbps432 432 YUV444 3 24 103Mbps432 432 YUV420 1.5 24 52Mbps432 432 YUV420 1.5 20 43Mbps1080 1920 YUV420 1.5 20 475Mbps

Page 10: Gregory Fotiades.  Global illumination techniques are highly desirable for realistic interaction due to their high level of accuracy and photorealism

Video compression must be utilized◦ Compression codec is rather irrelevant, but

VP8/VP9 come to mind first[29][30]

Real time encoding/decoding in software is very common (ie. video conferencing)

Network transmission takes a lot of time

Solution – Network Communication

Page 11: Gregory Fotiades.  Global illumination techniques are highly desirable for realistic interaction due to their high level of accuracy and photorealism

Renderer is the ray tracing core Renderer makes use of Nvidia GTX 280 GFX CUDA API[24] is used for HW acceleration 432x432 resolution used

◦ 16x16 threads used across 27x27 blocks Only modified objects updated to lower

overhead (copy scene to GPU) QT Toolkit[27] used for UI

Implementation - Renderer

Page 12: Gregory Fotiades.  Global illumination techniques are highly desirable for realistic interaction due to their high level of accuracy and photorealism

Recursion not supported by GFX card◦ No stack pointer or concept of frames◦ Iterative conversion done

Static frame stack implemented and used◦ Recursion supported on newer HW, future work

may investigate possible port to recursion Stack/recursion depth of 8 used

◦ Higher than 8 had no noticeable improvement Some basic optimizations performed, but all

trivial

Implementation – Ray Tracer

Page 13: Gregory Fotiades.  Global illumination techniques are highly desirable for realistic interaction due to their high level of accuracy and photorealism

Triangle intersection detection not implemented, so complex meshes cannot be rendered◦ This is topic to analyze in future work as triangular

meshes will drastically increase render time◦ Multiple client implementation may be necessary

Ray tracer based on CG2 ray tracer, so lacks advanced shading techniques

Ray tracer uses static scene intersection detection, needs some form of dynamic detection in future

Implementation – Ray Tracer Cont.

Page 14: Gregory Fotiades.  Global illumination techniques are highly desirable for realistic interaction due to their high level of accuracy and photorealism

Implementation video compression is outside the scope of project

RDP clients fill niche of transmission assuming they perform well enough for UX to be smooth as they also handle cmds to server

Kinoni Remote Desktop[33] used for transmission

Future work should explore its own compression or direct compression control and color space conversion

Implementation – Network Communication

Page 15: Gregory Fotiades.  Global illumination techniques are highly desirable for realistic interaction due to their high level of accuracy and photorealism

Implementation – Network Communication Cont.

Page 16: Gregory Fotiades.  Global illumination techniques are highly desirable for realistic interaction due to their high level of accuracy and photorealism

Results

CPU GPUMin Render Time 87.177 14.089Max Render Time 92.629 17.576Avg Render Time 89.441 15.989

Rendering speedup of ~5.6x◦ More important than speedup is scalability

Page 17: Gregory Fotiades.  Global illumination techniques are highly desirable for realistic interaction due to their high level of accuracy and photorealism

200Kbits/sec bandwidth usage

4.4Mbit/sec download easily feasible over 4g◦ Not enough for raw transfers

Results – Cont.

Commands to server Rendering to ClientAvg bytes / second 2454 26967Avg Kbits / second 19.172 210.680Avg Mbits / second 0.019 0.206

Upload DownloadAvg bytes / second 919.62 577540.72Avg Kbits / second 7.185 4512.037Avg Mbits / second 0.007 4.406

Page 18: Gregory Fotiades.  Global illumination techniques are highly desirable for realistic interaction due to their high level of accuracy and photorealism

Real time interactive global illumination is feasible if parallel resources and a network connection are available

Video compression is necessary to transmit images

Conclusions

Page 19: Gregory Fotiades.  Global illumination techniques are highly desirable for realistic interaction due to their high level of accuracy and photorealism

Scalability across multiple systems and multiple GPUs

Implement triangular mesh intersection detection

Implement dynamic object management In-house video compression

Future Work Summary

Page 20: Gregory Fotiades.  Global illumination techniques are highly desirable for realistic interaction due to their high level of accuracy and photorealism

Demo

Page 21: Gregory Fotiades.  Global illumination techniques are highly desirable for realistic interaction due to their high level of accuracy and photorealism

Q&A