1 / 26

MAXIM GOLDIN Senior Developer, Microsoft

ИЗ ПЕРВЫХ РУК: КАК СДЕЛАТЬ ВАШ КОД БЫСТРЫМ ПРОФАЙЛИНГ КЛИЕНТСКИХ И СЕРВЕРНЫХ ПРИЛОЖЕНИЙ В VISUAL STUDIO 2012. MAXIM GOLDIN Senior Developer, Microsoft. Agenda. ASP.NET Profiling in Production Profiler installation Command line tools Profiling of Client Applications Remote Profiling

Download Presentation

MAXIM GOLDIN Senior Developer, Microsoft

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


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

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

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

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

  5. ASP.NET INSTRUMENTATION PROFILINGIN PRODUCTION

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

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

  8. REMOTE PROFILINGWINDOWS STORE APPS

  9. Remote Profiling • Support for Windows Store Applications • Auto-deployment of the app • Requires elevation approval

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

  11. HTML UI RESPONSIVENESS TOOL

  12. 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)

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

  14. Inclusive and Exclusive time function Alpha() { Beta(); } function Beta() { } 30 ms 50 ms

  15. JAVA SCRIPT PRPOFILER

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

  17. PERFORMANCE ANALYZER FOR HTML5 APPS

  18. JavaScript Memory Profiler • Identify unintentionally retained memoryand inefficient use of memory • Snapshot-based tool • Shows JavaScript and DOM elements • Size • Counts • Reference graph

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

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

  21. JAVA SCRIPT MEMORY PROFILER

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

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

More Related