Optimizing your Arc GIS Runtime Apps for Performance














- Slides: 14

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 • Dynamic vs static rendering of graphics • Data consideration • Tips and tricks

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

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 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

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

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

Demo Raster vs Vector

Demo Online vs Offline

Tips and tricks