Optimizing your Arc GIS Runtime Apps for Performance

  • Slides: 14
Download presentation
Optimizing your Arc. GIS Runtime Apps for Performance Dan O’Neill Gagandeep Singh Jen Trieu

Optimizing your Arc. GIS Runtime Apps for Performance Dan O’Neill Gagandeep Singh Jen Trieu

Agenda • What is the Arc. GIS Runtime? • Determine your app/map pattern •

Agenda • What is the Arc. GIS Runtime? • Determine your app/map pattern • Dynamic vs static rendering of graphics • Data consideration • Tips and tricks

Arc. GIS Runtime Rendering Engine . NET Java Android APIs Qt Objective C What

Arc. GIS Runtime Rendering Engine . NET Java Android APIs Qt Objective C What you do Here JNI . NET Interop Runtime Core Affects what Happens here Hardware Abstraction Layer Rendering Engine Direct. X 11 Direct. X 9 Open. GL ES Open. GL ARB

Map vs Map-less Apps

Map vs Map-less Apps

Rendering mode • • Static - Tiled Layer, Dynamic Map Service Layer, Feature Layer,

Rendering mode • • Static - Tiled Layer, Dynamic Map Service Layer, Feature Layer, Graphics Layer/Overlay (option) - Textures are rendered on GPU Dynamic - Graphics Layer/Overlay (option), Labels, GPS Layer - Symbols are converted to textures - Geometries are converted to triangles and texturized at render time

Static Rendering Mode For Graphics • Rendering primarily done through CPU • Designed for

Static Rendering Mode For Graphics • Rendering primarily done through CPU • Designed for cartographic quality - Whole graphic is rendered as a path • Scales up well • Can be system memory intensive • Can drain your battery • Updates to graphic require a redraws of the image • View changes require full or partial updated to image System Memory GPU Memory

Demo Static Rendering Mode

Demo Static Rendering Mode

Dynamic Rendering Mode For Graphics • Entire graphic representation lives on the GPU •

Dynamic Rendering Mode For Graphics • Entire graphic representation lives on the GPU • Some graphic changes can be applied directly to the GPU state - For example moving or animating • Number and complexity of graphics can impact GPU resources • Symbology could look a little different • Performance is the priority System Memory GPU Memory

Demo Dynamic Rendering Mode

Demo Dynamic Rendering Mode

Static vs Dynamic Rendering Mode Summary • • Static Mode - Designed for cartographic

Static vs Dynamic Rendering Mode Summary • • Static Mode - Designed for cartographic quality - Only regenerate textures when we need to - Increasing or decreasing the number of graphics within a layer does not affect number of textures on the GPU Dynamic Mode - Entire graphic representation lives on the GPU - No CPU update required when panning, zooming, or rotating the map - Some graphic changes can be applied directly to the GPU state - Graphics can remain screen aligned while map is rotating

Data consideration

Data consideration

Demo Raster vs Vector

Demo Raster vs Vector

Demo Online vs Offline

Demo Online vs Offline

Tips and tricks

Tips and tricks