Giter Site home page Giter Site logo

jitbench's People

Contributors

davmason avatar hoyosjs avatar josephtremoulet avatar kichalla avatar lt72 avatar rynowak avatar sbomer avatar

Watchers

 avatar

jitbench's Issues

Loading assembly base in dynamic assembly loading

Currently dynamically loading assemblies broke the build as it finds the report base assembly with the error

'Could not load type 'Microsoft.ETWLogAnalyzer.Abstractions.ReportBase' from assembly 'Microsoft.ETWLogAnalyzer.Abstractions

Rename namespaces

The namespaces are called MusicStore. The tool should be a bit more generic

[fix] ASP.NET binaries are being used

Currently the fix branch uses ASP.NET binaries and not the crossgen libraries with the following warning

ASP.NET loaded from bin. This is a bug if you wanted crossgen

This might be a problem if our aim is to make it JIT as much as possible. I suspect the binaries are most likely optimized.

Local package usage for TraceEvent

We had to modify TraceEvent to surface the ReJit version to add support for tiered jitting. While the change has been merged on the PerfView repo - where TraceEvent lives - the package won't get updated on NuGet until it gets signed.

To work around this a Nuget.config file points to a package with the updated library locally. These should be removed when TraceEvent gets updated on NuGet to version 1.0.42.

Report API needs revision

There should be no need for two different API calls. One would allow for less memory consumption (no need to cache, just persist on the run) and better error reporting.

Frozen JitBench Version

Given that JitBench keeps breaking, I've decided to freeze the version of dotnet and JitBench until the testing of fresh CoreCLR/CoreFX and ASP.NET releases becomes priority 0.

Handle how to map the data for BenchView

A lot of data is not relevant and a whole bunch of other data points are not relevant to our (we don't want to generate a visualization per method for example.

[fix] Make the scripts path agnostic

To future proof the current data collection scripts it might be a good idea to clean them up to be path agnostic. This might prove to be useful for future parts of the project.

[fix] Unfreeze preview version to enable most recent build

Given that our current priority is generating a log that jits as much as possible and its collection is automated, the fix branch achieved not performing cross-gen by freezing the versions fetched. However, given that we want automation and it should fetch the latest version of ASP.NET and the CoreCLR, we should find a way to make the libraries fetched from the master channel available to PerfView for the log generation.

IO Attribution

Look into how to attribute IO events relevant to dotnet that are not identified to any thread or process we have logged.

DefaultResult is potentially a bug

Currently we are checking against DefaultResult to check if a result was generated, but for numberical values the default of 0 might be a perfectly reasonable answer

Automate whole process of data collection

This should be simple. The only thing missing is the NuGet package restore to be able to run the analysis without opening visual studio. This should be straightforward using MSBuild.

Metric Relaxation assumptions

  • Quantum efficiency is being calculated as CS_out - CS_in for the active interval times
  • Lifetime is taken as Last CS_out - Thread start

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.