Git Product home page Git Product logo

ants-profiler-demos's Introduction

ANTS Demos

This collection of demos highlights common .NET performance and memory problems. All these demos should be rebuilt on the machine where they will be profiled.

TicketDesk

This MVC app experiences around a dozen performance and memory issues, which can be identified with ANTS Performance Profiler and ANTS Memory Profiler. There are also a couple of rendering performance issues, which can identified with the Chrome dev tools or with Glimpse.

Issue Feature How to surface
Slow startup due to multiple sql queries APP sql profiling
APP timeline
Log in and view any ticket page (eg /TicketCenter)
Unnecessary repeated SQL queries due to lazy loading in EF APP sql profiling Log in and view any ticket page (eg /TicketCenter)
Slow web requests APP web req profiling
APP viewing header information
Refresh homepage with 1 second (/)
Unnecessary web requests due to inefficient API use APP web req profiling
APP call tree filtering
APP integrated decompilation
View Live Support page (/Home/LiveHelp)
Misuse of string concatenation APP line-level timing
APP call tree filtering
Log in and search for 'imported'
Leaked dynamic assemblies AMP loaded assemblies info Run load against /Home/Status using tinyget .bat file
Multiple view engines loaded Glimpse view tab View about page
No time delay for ajax autocomplete Glimpse hud ajax count Create new ticket and type in tag field
Slow corner rendering for large search results Glimpse hud time split
Chrome dev tools rendering analysis
Log in and search for 'imported'
Compression not enabled Page Speed Test Run against any page

See Demos/TicketDesk/README.md for more complete instructions.

LibraryManager

This WinForms app may be preferable to the TicketDesk MVC site for those working with desktop applications.

Issue Feature How to surface
Slow startup due to initializing EF APP call tree filtering
APP timeline
Start the app, select initial CPU spike
EF n+1 lazy loading APP sql profiling
APP line-level timings
Search for members in London with loan filtering ticked
Slow loading of user details APP web request profiling Select any member in search results
Slow searching due to rendering APP call tree filtering Search for books called Monster
Slow searching due to missing index APP execution plan view Advanced search for books called Monster by John

See /Demos/LibraryManager/README.md for more complete instructions.

Other demos

Bouncing Ball

Basic introduction to ANTS Performance Profiler, showing the value of line level timings to identify an O(n^2) algorithm.

Async File Access

Show APP's Async code profiling while copying a directory of files asynchronously. There is no performance issue in this application.

Query Bee

A WinForms event handler leak, keeping a form containing database strings in memory.

Pattern Generator

The same event handler leak as QueryBee, but with no need to connect to a database.

Colorizer

A WinForms event handler leak per QueryBee and Pattern Generator, but which leaks unmanaged images. This can be used to understand how to profile unmanaged memory usage using ANTS Memory Profiler.

Pdf Converter

Shows ANTS Memory Profiler's unmanaged profiling when an unmanaged pdf generation library doesn't get cleaned up properly because of a blocked finalizer.

Dynamic Assemblies

A demonstration of AMP's 'loaded assemblies' functionality.

ants-profiler-demos's People

Contributors

alex-yates avatar bcemmett avatar mark-raymond avatar mnaw avatar xerif avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.