Presentation is loading. Please wait.

Presentation is loading. Please wait.

Msdevcon.ru#msdevcon. ИЗ ПЕРВЫХ РУК: КАК СДЕЛАТЬ ВАШ КОД БЫСТРЫМ ПРОФАЙЛИНГ КЛИЕНТСКИХ И СЕРВЕРНЫХ ПРИЛОЖЕНИЙ В VISUAL STUDIO 2012 MAXIM GOLDIN Senior.

Similar presentations


Presentation on theme: "Msdevcon.ru#msdevcon. ИЗ ПЕРВЫХ РУК: КАК СДЕЛАТЬ ВАШ КОД БЫСТРЫМ ПРОФАЙЛИНГ КЛИЕНТСКИХ И СЕРВЕРНЫХ ПРИЛОЖЕНИЙ В VISUAL STUDIO 2012 MAXIM GOLDIN Senior."— Presentation transcript:

1 msdevcon.ru#msdevcon

2 ИЗ ПЕРВЫХ РУК: КАК СДЕЛАТЬ ВАШ КОД БЫСТРЫМ ПРОФАЙЛИНГ КЛИЕНТСКИХ И СЕРВЕРНЫХ ПРИЛОЖЕНИЙ В VISUAL STUDIO 2012 MAXIM GOLDIN Senior Developer, Microsoft

3 Agenda  ASP.NET Profiling in Production  Profiler installation  Command line tools  Profiling of Client Applications  Remote Profiling  HTML UI Responsiveness  Visual Studio JavaScript Instrumentation Profiler  Performance Analyzer for HTML5 Apps  JavaScript Memory Profiler

4 Challenges in Production  Can’t reproduce the issue in a development environment  Can’t run Visual Studio on the production machine  Possibly very limited developer access to production machines  Want to minimize impact to the server  Performance  Availability  Security

5 ASP.NET Profiling in production  Remote Tools  http://www.microsoft.com/en-us/download/details.aspx?id=38184 http://www.microsoft.com/en-us/download/details.aspx?id=38184  Standalone Profiler  Installation media: vs_profiler.exe  Installed VS:

6 DEMO ASP.NET INSTRUMENTATION PROFILING IN PRODUCTION

7 ASP.NET Profiling in production  Install Profiler  Remote Tools or Standalone Profiler  Use command line tools to collect data  vsinstr.exe, VSPerfASPNetCmd.exe  Bring results back and analyze in VS

8 Agenda  ASP.NET Profiling in Production  Profiler installation  Command line tools  Profiling of Client Applications  Remote Profiling  HTML UI Responsiveness  Visual Studio JavaScript Instrumentation Profiler  Performance Analyzer for HTML5 Apps  JavaScript Memory Profiler

9 DEMO REMOTE PROFILING WINDOWS STORE APPS

10 Remote Profiling  Support for Windows Store Applications  Auto-deployment of the app  Requires elevation approval

11

12 HTML UI Responsiveness tool  Shows work being done by subsystems of Internet Explorer related to UI  Helps to identify app startup performance and low frames per second caused by  Content loading  Layouts/CSS calculation  Script execution/garbage collection  Network latency  Overdrawing  Being added in VS 2012 Update #2

13 DEMO HTML UI RESPONSIVENESS TOOL

14 Visual Studio JavaScript Profiler  Instrumentation-based profiling  Records how long every method takes to execute  Records exact counts of method calls  Only shows JavaScript execution time  Does not show work done by other systems (e.g., rendering or layout)

15 Profiler Terminology  Inclusive time: The total amount of time from when the function was entered until the function exited  Includes the total time spent in all child functions  Exclusive time: The amount of time spent executing code in just the function body  Does NOT include time spent in child function

16 Inclusive and Exclusive time function Alpha() { Beta(); } function Beta() { } 30 ms 50 ms Alpha3080 Beta50

17 DEMO JAVA SCRIPT PRPOFILER

18 Performance Analyzer for HTML5 Apps  Walks you through testing your application  Generates a report measuring 13 tenets of performance  Installs with the Windows 8 SDK Activation timeMemory leaks UI responsivenessIdle state CPU usage Layout passesSuccessful suspend Synchronous XMLHttpRequest on UI threadMemory reduction when suspended Image scalingApp memory growth Memory footprintRuntime broker memory growth Runtime broker memory reference set

19 DEMO PERFORMANCE ANALYZER FOR HTML5 APPS

20 JavaScript Memory Profiler  Identify unintentionally retained memory and inefficient use of memory  Snapshot-based tool  Shows JavaScript and DOM elements  Size  Counts  Reference graph

21 Memory terminology  Size: How large the object is in memory  Retained Size: The amount of memory that the object is preventing the garbage collector from reclaiming  Includes the size of the object  Includes the size of all referenced objects (and any objects they reference) that the current object is the only parent of in the memory graph

22 Size and retaines size Object A Object B Object C Object D 500 KB 100 KB 600 KB Object A (100 KB) Object B (500 KB) Object C (50 KB) Object D (100 KB) 50 KB 100 KB 50 KB 100 KB Object A (100 KB) Object B (500 KB) 600 KB

23 DEMO JAVA SCRIPT MEMORY PROFILER

24 Agenda  ASP.NET Profiling in Production  Profiler installation  Command line tools  Profiling of Client Applications  Remote Profiling  HTML UI Responsiveness  Visual Studio JavaScript Instrumentation Profiler  Performance Analyzer for HTML5 Apps  JavaScript Memory Profiler

25 More Info, Request Features Maxim Goldin : mgoldin@microsoft.com ALM Team Blog: http://blogs.msdn.com/b/visualstudioalm http://blogs.msdn.com/b/visualstudioalm Uservoice site: http://visualstudio.uservoice.comhttp://visualstudio.uservoice.com

26 © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.


Download ppt "Msdevcon.ru#msdevcon. ИЗ ПЕРВЫХ РУК: КАК СДЕЛАТЬ ВАШ КОД БЫСТРЫМ ПРОФАЙЛИНГ КЛИЕНТСКИХ И СЕРВЕРНЫХ ПРИЛОЖЕНИЙ В VISUAL STUDIO 2012 MAXIM GOLDIN Senior."

Similar presentations


Ads by Google