MAXIM GOLDIN Senior Developer, Microsoft
-
Upload
gustave-corp -
Category
Documents
-
view
40 -
download
0
description
Transcript of MAXIM GOLDIN Senior Developer, Microsoft
![Page 2: MAXIM GOLDIN Senior Developer, Microsoft](https://reader035.fdocument.pub/reader035/viewer/2022062304/56812cc2550346895d917c58/html5/thumbnails/2.jpg)
ИЗ ПЕРВЫХ РУК: КАК СДЕЛАТЬ ВАШ КОД БЫСТРЫМПРОФАЙЛИНГ КЛИЕНТСКИХ И СЕРВЕРНЫХ ПРИЛОЖЕНИЙ В VISUAL STUDIO 2012
MAXIM GOLDIN
Senior Developer, Microsoft
![Page 3: MAXIM GOLDIN Senior Developer, Microsoft](https://reader035.fdocument.pub/reader035/viewer/2022062304/56812cc2550346895d917c58/html5/thumbnails/3.jpg)
AgendaASP.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
![Page 4: MAXIM GOLDIN Senior Developer, Microsoft](https://reader035.fdocument.pub/reader035/viewer/2022062304/56812cc2550346895d917c58/html5/thumbnails/4.jpg)
Challenges in ProductionCan’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
![Page 5: MAXIM GOLDIN Senior Developer, Microsoft](https://reader035.fdocument.pub/reader035/viewer/2022062304/56812cc2550346895d917c58/html5/thumbnails/5.jpg)
ASP.NET Profiling in productionRemote Tools
http://www.microsoft.com/en-us/download/details.aspx?id=38184
Standalone Profiler Installation media: vs_profiler.exe
Installed VS:
![Page 6: MAXIM GOLDIN Senior Developer, Microsoft](https://reader035.fdocument.pub/reader035/viewer/2022062304/56812cc2550346895d917c58/html5/thumbnails/6.jpg)
DEMO
ASP.NET INSTRUMENTATION PROFILINGIN PRODUCTION
![Page 7: MAXIM GOLDIN Senior Developer, Microsoft](https://reader035.fdocument.pub/reader035/viewer/2022062304/56812cc2550346895d917c58/html5/thumbnails/7.jpg)
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
![Page 8: MAXIM GOLDIN Senior Developer, Microsoft](https://reader035.fdocument.pub/reader035/viewer/2022062304/56812cc2550346895d917c58/html5/thumbnails/8.jpg)
AgendaASP.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
![Page 9: MAXIM GOLDIN Senior Developer, Microsoft](https://reader035.fdocument.pub/reader035/viewer/2022062304/56812cc2550346895d917c58/html5/thumbnails/9.jpg)
DEMO
REMOTE PROFILINGWINDOWS STORE APPS
![Page 10: MAXIM GOLDIN Senior Developer, Microsoft](https://reader035.fdocument.pub/reader035/viewer/2022062304/56812cc2550346895d917c58/html5/thumbnails/10.jpg)
Remote ProfilingSupport for Windows Store Applications
Auto-deployment of the app
Requires elevation approval
![Page 11: MAXIM GOLDIN Senior Developer, Microsoft](https://reader035.fdocument.pub/reader035/viewer/2022062304/56812cc2550346895d917c58/html5/thumbnails/11.jpg)
![Page 12: MAXIM GOLDIN Senior Developer, Microsoft](https://reader035.fdocument.pub/reader035/viewer/2022062304/56812cc2550346895d917c58/html5/thumbnails/12.jpg)
HTML UI Responsiveness toolShows 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
![Page 13: MAXIM GOLDIN Senior Developer, Microsoft](https://reader035.fdocument.pub/reader035/viewer/2022062304/56812cc2550346895d917c58/html5/thumbnails/13.jpg)
DEMO
HTML UI RESPONSIVENESS TOOL
![Page 14: MAXIM GOLDIN Senior Developer, Microsoft](https://reader035.fdocument.pub/reader035/viewer/2022062304/56812cc2550346895d917c58/html5/thumbnails/14.jpg)
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)
![Page 15: MAXIM GOLDIN Senior Developer, Microsoft](https://reader035.fdocument.pub/reader035/viewer/2022062304/56812cc2550346895d917c58/html5/thumbnails/15.jpg)
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
![Page 16: MAXIM GOLDIN Senior Developer, Microsoft](https://reader035.fdocument.pub/reader035/viewer/2022062304/56812cc2550346895d917c58/html5/thumbnails/16.jpg)
Inclusive and Exclusive timefunction Alpha(){
Beta();}
function Beta(){
}
30 ms
50 ms
Exclusive Inclusive
Alpha 30 80
Beta 50 50
![Page 17: MAXIM GOLDIN Senior Developer, Microsoft](https://reader035.fdocument.pub/reader035/viewer/2022062304/56812cc2550346895d917c58/html5/thumbnails/17.jpg)
DEMO
JAVA SCRIPT PRPOFILER
![Page 18: MAXIM GOLDIN Senior Developer, Microsoft](https://reader035.fdocument.pub/reader035/viewer/2022062304/56812cc2550346895d917c58/html5/thumbnails/18.jpg)
Performance Analyzer for HTML5 AppsWalks you through testing your application
Generates a report measuring 13 tenets of performance
Installs with the Windows 8 SDKActivation time Memory leaks
UI responsiveness Idle state CPU usage
Layout passes Successful suspend
Synchronous XMLHttpRequest on UI thread Memory reduction when suspended
Image scaling App memory growth
Memory footprint Runtime broker memory growth
Runtime broker memory reference set
![Page 19: MAXIM GOLDIN Senior Developer, Microsoft](https://reader035.fdocument.pub/reader035/viewer/2022062304/56812cc2550346895d917c58/html5/thumbnails/19.jpg)
DEMO
PERFORMANCE ANALYZER FOR HTML5 APPS
![Page 20: MAXIM GOLDIN Senior Developer, Microsoft](https://reader035.fdocument.pub/reader035/viewer/2022062304/56812cc2550346895d917c58/html5/thumbnails/20.jpg)
JavaScript Memory Profiler Identify unintentionally retained memoryand inefficient use of memory
Snapshot-based tool
Shows JavaScript and DOM elements Size
Counts
Reference graph
![Page 21: MAXIM GOLDIN Senior Developer, Microsoft](https://reader035.fdocument.pub/reader035/viewer/2022062304/56812cc2550346895d917c58/html5/thumbnails/21.jpg)
Memory terminologySize: 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
![Page 22: MAXIM GOLDIN Senior Developer, Microsoft](https://reader035.fdocument.pub/reader035/viewer/2022062304/56812cc2550346895d917c58/html5/thumbnails/22.jpg)
Size and retaines size
Size Retained Size
Object A
Object B
Object C
Object D
500 KB 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
![Page 23: MAXIM GOLDIN Senior Developer, Microsoft](https://reader035.fdocument.pub/reader035/viewer/2022062304/56812cc2550346895d917c58/html5/thumbnails/23.jpg)
DEMO
JAVA SCRIPT MEMORY PROFILER
![Page 24: MAXIM GOLDIN Senior Developer, Microsoft](https://reader035.fdocument.pub/reader035/viewer/2022062304/56812cc2550346895d917c58/html5/thumbnails/24.jpg)
AgendaASP.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
![Page 25: MAXIM GOLDIN Senior Developer, Microsoft](https://reader035.fdocument.pub/reader035/viewer/2022062304/56812cc2550346895d917c58/html5/thumbnails/25.jpg)
More Info, Request Features
Maxim Goldin : [email protected]
ALM Team Blog: http://blogs.msdn.com/b/visualstudioalm
Uservoice site: http://visualstudio.uservoice.com
![Page 26: MAXIM GOLDIN Senior Developer, Microsoft](https://reader035.fdocument.pub/reader035/viewer/2022062304/56812cc2550346895d917c58/html5/thumbnails/26.jpg)
© 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.