Performance optimization in software development is a very important issue for programmers . A small problem can become a bottleneck for a large system. But it is very difficult for programmers to optimize their code by themselves. Fortunately, there are some great tools that can help programmers with code analysis and performance testing, making it much easier for programmers to optimize their code performance. The issue of ". NET Code Analysis tools and Technology" was released by MSDN magazine in July 2011, and the vast majority of programmers have reaped a lot. Four years later, these tools have made a lot of improvements, and more choices have emerged. For more application code security tools, click:http://t.cn/zQ6JvmN
AMD Codexl
AMD Codeanalyst Performance Analyzer , released in 2011, has now been replaced by AMD Codexl . The main purpose of AMD CODEXL is to help developers make better use of CPU, GPU and APU computing performance, with powerful GPU debugging, CPU and GPU code analysis, and static OpenCL kernel performance analysis and other capabilities.
AMD provides a stand-alone CODEXL analysis tool that supports Windows 7, Windows 8, and Linux systems. There is also an extended version of AMD Codexl on Visual Studio 2010,2012 and 2013, which integrates the debugging and analysis capabilities of the GPU and APU in the Visual Studio development environment. The old AMD codeanalyst performance Analyzer extension is still available.
JetBrains dottrace
jetbrains dottrace has evolved over the past four years and is now a suite of code execution tracking tools and performance analysis tools. It includes dottrace performance and dottrace memory two tools, dottrace performance to analyze code performance, such as function execution time, number of calls, time-consuming ratio, etc., Dottrace Memory Typically used to analyze memory usage. You can track, sample, or row-by-line analysis of your code on both local and remote systems. Dottrace's support for the Microsoft. NET Framework has been up to 4.5.2, and can also be used to analyze SILVERLIGHT4 or 5 of stand-alone desktop applications, WEB applications, Windows Communication Foundation (WCF) services, and so on. New features include timeline analysis (timeline profiling) and SQL query analysis.
The dottrace extension Visual Studio Gallery Web page provides a very clear and concise product Overview. By reading the overview if you are interested in the product, you can go to the JetBrains website and decide to download or purchase it.
JetBrains currently offers a free trial with a time limit and several licensing options, such as the ReSharper Ultimate package, which includes resharper,dotcover,dottrace,dotmemory, and ReSharper C + +, all packages require only one license.
Redgate ANTS
redgate ANTS Performance analysis Tools and ANTS memory analysis Tools are another set of business tools that can be used to analyze. NET executable files, ASP. Development servers, SharePoint 2007 or 2010 packages, Silverlight applications, Windows services, and COM + applications.
The ANTS profiling tool (Figure 1) can help analyze any. NET supported code base, as well as HTTP requests, storage IO, and support for SQL server, oracle,mysql,mariadb,postgresql data access.
Figure 1. Red Gate ANTS Performance analysis tool
The ANTS memory analysis tool makes. NET memory analysis easier, and ANTS memory analysis tools can be used to find memory leaks, optimize applications, make them highly memory-efficient, and check the health of your code to analyze any. NET applications, including ASP. Web applications.
Two tools supported from. NET1.0 version to 4.5 versions of the framework for any language, as well as Visual Studio 2005, 2008, 2010, 2012, and 2013. You can view the trial version and pricing on the Redgate website. There is also a free version of ANTS Profiler Visual Studio add-in extension, which gives you direct access to profiling tools and memory analysis tools on Visual Studio.
Telerik Justtrace
In 2013, Telerik was Eqatec, so the Eqatec analysis tool is now part of Telerik justtrace. NET Memory and performance analysis tools . Justtrace provides two modes of performance analysis, a sample analysis tool for lightweight analysis, and a tracking tool for more in-depth analysis of the collection of CLR events. It also has the ability to capture memory analysis of a. NET instance allocation snapshot.
Justtrace integrates Visual Studio 2013,2012,2010 and 2008, and can be used as a stand-alone analysis tool. Telerik offers a 30-day trial period, while Justtrace is also available as part of the Devcraft tool kit.
Visual Studio Quality and Diagnostic center
In addition to the analysis tools described above, Visual Studio itself has built-in excellent analysis and debugging tools, all in the quality and Diagnostic center of Visual Studio.
In addition to the familiar Visual Studio Profiling Tools, the quality and Diagnostic center includes a number of new tools that include JavaScript memory analysis, HTML UI responsiveness Analysis, and XAML UI responsiveness analysis for Windows store apps, and energy consumption, CP U use, Memory usage analysis, and so on. In addition, the JavaScript function time and Performance Wizard in Visual Studio 2012 has also been updated to include the new quality and diagnostics center. Because these tools are now available in the hub, you can run multiple tools in a separate analysis session and get the results of a combination and cross-analysis.
You can also run profiling Tools on the Performance and Diagnostics page of Visual Studio 2015 . Some of the debugging and diagnostic features in Visual Studio are enhanced, including support for JavaScript-based Apache Cordova projects, and cross-platform debugging of C #-based Xamarin and Android projects
Other improvements include step through lambda expressions in the Watch window, run, debug, and test programs on other computers through Visual Studio Remote Tools, Network Diagnostics for built-in HTTP traffic data, and more.
Many of these new tools are placed together with the powerful Visual Studio 2015 Diagnostic Tool Debugger window and combine the Output window, IntelliTrace historical data, and the performance and diagnostic center tools.
Other performance analysis tools
In addition to the code profiling Tools described above, there are other professional code performance analysis tools, many of which are developed by programmers like you and are available for free use.
CLR Heap Allocation Analyzer extension is a Roslyn-based C #堆分配诊断分析工具 that can be used to view clear allocations, boxing allocations, closure captures, and so on. You can run the analysis tool as a stand-alone application or as a code-aid tool inside Visual Studio.
Visual Leak Detector for Visual C + + is an open source Visual C + + memory leak detection system that works with the visual Studio debugger. Originally developed by Dan Moulding, the project is currently maintained by Arkadiy Shapkin.
Frans Bouma's ORM Profiler extension(Figure 2) gives you real-time insight into the Entity Framework data access code to discover performance issues and quickly navigate to them. It has online and offline two product analysis modes that can be navigated directly from the analysis results to the relevant code in the project.
Figure 2 Debugging the Entity Framework data access using ORM Profiler
To examine and optimize the static resources in the project, Mads Kristensen's Image Optimizer extension Add a context menu to any folder and icon in Solution Explorer to help automatically optimize all PNG in the folder, GIF and JPEG files.
Finally, there is the Xamarin Profiler, which is a cross-platform development framework. Within this framework, developing Android and IOS apps can continue to use C # with the. NET framework in Visual Studio without having to go to Eclipse or purchase additional Macs and use Xcode.
This article provides a brief introduction to some of the most popular performance analysis tools currently available in Visual Studio, and in fact there are a number of tools to choose from. But for programmers, the most important thing is to adapt to their own programming habits and the characteristics of the project to make their own choices.
Copyright NOTICE: This article for Bo Master original article, without Bo Master permission not reproduced.
11 Visual Studio Code Performance analysis Tools