Giter Site home page Giter Site logo

kae7in / perfview Goto Github PK

View Code? Open in Web Editor NEW
2.0 2.0 0.0 174.14 MB

PerfView is a performance-analysis tool that helps isolate CPU- and memory-related performance issues.

Home Page: http://channel9.msdn.com/Series/PerfView-Tutorial

License: MIT License

C# 78.99% C++ 0.36% C 0.25% Groff 3.71% Assembly 0.01% Batchfile 0.01% Smalltalk 0.12% HTML 9.50% CSS 1.25% JavaScript 5.16% ApacheConf 0.01% PHP 0.64%

perfview's People

Contributors

adityamandaleeka avatar brianrob avatar daklimek avatar jeffschwmsft avatar kae7in avatar leculver avatar mjsabby avatar northtyphoon avatar pharring avatar vancem avatar weng5e avatar

Stargazers

 avatar

Watchers

 avatar  avatar

perfview's Issues

numNodes restriction needs to be changeable

In stackDelegate.js there is a property called numNodes (self.numNodes at the top of the StackDelegate class) that specifies an upper bound for the number of nodes that can be returned for any given request. There should be a text input (maybe next to the filter inputs) to specify this. However, an issue with this is that, once you specify numNodes in a request, the service seems to stick with that, even if you specify different values for numNodes in subsequent requests. Note: numNodes must be appended to the url as a query string (&numNodes=1000)

BasicContext context menu (node) library not working in Electron.

Right clicking on the Tree View (as a test) results in the following error being emitted in the console:

C:\Users\t-kahoop\AppData\Roaming\npm\node_modules\electron-prebuilt\dist\resources\electron.asar\r…:63 Uncaught TypeError: Cannot read property 'name' of undefinedvalueToMeta @ C:\Users\t-kahoop\AppData\Roaming\npm\node_modules\electron-prebuilt\dist\resources\electron.asar\r…:63valueToMeta @ C:\Users\t-kahoop\AppData\Roaming\npm\node_modules\electron-prebuilt\dist\resources\electron.asar\r…:70valueToMeta @ C:\Users\t-kahoop\AppData\Roaming\npm\node_modules\electron-prebuilt\dist\resources\electron.asar\r…:70valueToMeta @ C:\Users\t-kahoop\AppData\Roaming\npm\node_modules\electron-prebuilt\dist\resources\electron.asar\r…:70valueToMeta @ C:\Users\t-kahoop\AppData\Roaming\npm\node_modules\electron-prebuilt\dist\resources\electron.asar\r…:70valueToMeta @ C:\Users\t-kahoop\AppData\Roaming\npm\node_modules\electron-prebuilt\dist\resources\electron.asar\r…:70valueToMeta @ C:\Users\t-kahoop\AppData\Roaming\npm\node_modules\electron-prebuilt\dist\resources\electron.asar\r…:70valueToMeta @ C:\Users\t-kahoop\AppData\Roaming\npm\node_modules\electron-prebuilt\dist\resources\electron.asar\r…:70valueToMeta @ C:\Users\t-kahoop\AppData\Roaming\npm\node_modules\electron-prebuilt\dist\resources\electron.asar\r…:70valueToMeta @ C:\Users\t-kahoop\AppData\Roaming\npm\node_modules\electron-prebuilt\dist\resources\electron.asar\r…:70valueToMeta @ C:\Users\t-kahoop\AppData\Roaming\npm\node_modules\electron-prebuilt\dist\resources\electron.asar\r…:70valueToMeta @ C:\Users\t-kahoop\AppData\Roaming\npm\node_modules\electron-prebuilt\dist\resources\electron.asar\r…:70wrapArgs @ C:\Users\t-kahoop\AppData\Roaming\npm\node_modules\electron-prebuilt\dist\resources\electron.asar\r…:92remoteMemberFunction @ C:\Users\t-kahoop\AppData\Roaming\npm\node_modules\electron-prebuilt\dist\resources\electron.asar\r…:111(anonymous function) @ index.html:215

Error Line

Best commit to replicate error from

To run project:
Navigate to {user path}\perfview\src\HtmlJs\perfview in Windows PowerShell (or other) and simply type 'electron .'

To replicate error:
Right-click (contextmenu event) anywhere on the Tree View. The menu is, right now, designed to trigger if a contextmenu triggers on that tree view div. Error is visible in electron console output.

In by-name-list double click event, deep copy of node is not working correctly

I've commented the logic out for now, but around line 517, in the by-name-list double click event listener, we are grabbing the node that was double clicked on and making it the new focus node. This focus node is then used as the root node in the Callers and Callees tab. However, before it's used in those tabs, we need to switch its Exc% and Exc columns with the Inc% and Inc columns, since they are in reverse order in all other tabs (look at the table headers/names or the real PerfView for reference). The ISSUE with this is that when you switch those values, they get switched in the by-name-list tree table as well. This is because I'm undesirably holding a pointer to that node instead of a true clone.

Route "stackviewer/node" (GetNode) is not including Exc%, Exc, or Fold in the node data returned

This results in the ROOT node in CallTree showing 0 for the Exc%, Exc, and Fold columns. By focusing on the ROOT node (double click on ROOT in By Name tab), you'll see that the ROOT node actually has non-zero values for these properties.

The request takes the following path:
(DataController.cs) GetNode() --> (StackViewerController.cs) Node() --> (CallTreeDataProvider.cs) GetNode()

It's in this last GetNode() call in CallTreeDataProvider.cs that the implementation for actually getting a single node begins.

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.