XAML Performance: Techniques for Maximizing Universal Windows

20
700
18.4
18
12.6
12.5
12
8
6
4
7.5
7
510
500
Time in ms
Dynamic in MB
14
10
609
600
16
400
300
663
511
345
277
200
4.2
100
2
0
0
Hello World (M)
Dialer (M)
8.1
10
Calc (PC)
CPU - 15% to 30%
Working Set - 25% to 45%
Hello World (M)
Dialer (M)
8.1
10
Calc (PC)
Profiler
VS Timeline
x:DeferLoadStrategy="Lazy"
In-progress UI
Reducing element count
x:Defer
Checklist
 Total Startup
 App Activity
 Idle
 Large Layout
 Large layout Element count
 Memory
x:DataType=
{x:Bind
Enable UI Virtualization
Optimize data templates
Use x:Bind
Checklist
 Total Startup
 App Activity
 Idle
 Large Layout
 Large layout Element count
 Memory
bi.DecodePixelHeight = 120;
bi.DecodePixelWidth = 180;
Checklist
 Total Startup
 App Activity
 Idle
 Large Layout
 Large layout Element count
 Memory