forked from dotnet/BenchmarkDotNet
-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merge from original repo. #1
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
* Support of --profiler NativeMemory command line argument * Add information about exported files * Rename NativeMemoryDiangoser to NativeMemoryProfiler * Small fix
* Plots with a double dash (--) in the names (#1183) #1183 * Plots with a double dash (--) in the names (#1183) remove "Default" * Plots with a double dash (--) in the names (#1183) fix assignment operations * Plots with a double dash (--) in the names (#1183) replace assignments operator * Plots with a double dash (--) in the names (#1183) #1212
… attributes to define multiple runtime jobs (#1188) * CoreRT no longer publishes to MyGet, update the comment and property name * introduce TargetFrameworkJobAttribute which requires the users to provide TFM in explicit way it's going to help us avoid a lot of confusion and issues in the future * make ClrJobAttribute, CoreJobAttribute, CoreRtJobAttribute obsolete * make DryClrJobAttribute, DryCoreJobAttribute, DryCoreRtJobAttribute obsolete * the intro to fluent config should be using fluent API only, not attributes * simplify the sample from the welcome page to make sure our users don't get any errors about missing runtimes * rename Netcoreapp to NetCoreApp * improve error messages * add .NET Core 3.1 and 5.0 support * use enum where possible * improve the docs * add error handling for the missing SDK * explain Version compatibility in the .NET Framework in the docs * make current .NET Core version detection more robust and future proof
* implement tests * fix: cast to parameter/argument type, not to argument value type
* implement tests * implement the diagnoser * make the tests pass * make it work for CoreRT * add console line argument and new attribute * make it a warning, not error (to support -f netcoreapp2.x --runtimes netcoreapp3.0) * add docs * update release docs * avoid "No data found" exception for dotnet test -f netcoreapp2.1 * code review fixes
* further runtime detection improvements * Testing local builds of Full .NET Framework is supported only on Windows * improve .NET Core version detection fixes #995
* fix iteration cleanup bug
- Extract CreateSummary method for benchmarks with metrics - Extract FakeMetricDescriptor into separate file
- CsvExporter now prints '0' instead of '-' in the report - Add PrintZeroValuesInContent option in SummaryStyle to control it (by default it is false) - Add tests to cover changed behavior Closes #1168
…nts to a wrong location
* Add "dotnet new" benchmark project template * Add multi-framework support * Add VB.NET and F# template Fix typos. Align accordingly to PR feedback * Fix Fsharp template * Adjusted accordingly to the PR review * One nuget package for all templates * No floating version for nuget references * --no-restore instead of skipRestore * `BenchmarkDotNet.Diagnostics.Windows` only on Windows * Sync template version with BenchmarkDotNet version * Adds documentation for BenchmarkDotNet templates * Fixes all author information * Add <Configuration>Release</Configuration> * Add --console-app as template parameter * --console-app is an optional template parameter to create a console app project. * Minor fixes and better default names. * Updating docs
* Executor should set WorkingDirectory for WASM * print .NET Core (Mono) {version} instead of just "Wasm" * introduce new Architecture enum value * don't display RyuJIT as JIT info when using Wasm * rename WASM -> Wasm * add samples * add docs * mention Wasm (and other architectures) in the main README.md file
* Update BenchmarkDotNet.Disassembler.x64.csproj * Update BenchmarkDotNet.Disassembler.x86.csproj * Update BenchmarkDotNet.csproj * Replace obsoletes
…1507) * Change mono-config format to new version, support icu for internationalization. * Added timezone information to virtual file system. Co-authored-by: Symbai <[email protected]>
Force `MeasurementsStatistics` to never allocate on the heap
* netcoreapp5.0 -> net5.0 (I love it.... NOT) * don't display "Core" for the >= 5.0 Runtimes, don't display CoreFx and CoreCLR versions (they are the same since repos got merged): - .NET Core 5.0.0 (CoreCLR 5.0.20.36102, CoreFX 5.0.20.36102), X64 RyuJIT +.NET 5.0.0 (5.0.20.36102), X64 RyuJIT * .NET 6.0 * make sure CoreRT toolchain is aware of .NET 6.0 * rename .NET Core SDK => .NET SDK
* Add BuildResult to DiagnoserResults * Update Microsoft.Diagnostics.Tracing.TraceEvent * Improve common.props * Fix NativeMemoryProfiler for .Net Framework * Fix NativeMemoryProfiler for .Net Core
Co-authored-by: Adam Sitnik <[email protected]>
…g running benchmarks (#1547)
* make sure that TraceLogParser populates IP to hardware counter dictionary * make EtwProfiler implement the property required by InstructionPointerExporter * improve the exported file name so it contains runtime ID and arch info
* we should consider trace file extension as part of the name * add failing test case * don't use long paths for file names, even if the Windows feature is enabled, fixes #1544 * update TraceEvent to the latest version * nit: user Assert.Range that gives a clear error message instead of a very general Assert.True * handle one more edge case
* new versions of .NET Core should not use "netcoreapp" word in the target framework moniker example: .NET Core 6.0 is just .NET 6 and has a "net6.0" moniker * add tests that ensure that new Platform-specific TFMs are recognized by BenchmarkPartitioner * recognize Platform-specific apps using... reflection ;) * make sure that a platform-specific TFM creates corresponding toolchain that is equatable with other instances * extend console args support with the platform-specific monikers
* don't remove the auto-generated files when the build fails * print a nice error with a link to troubleshooting guide * update the troubleshooting guide
…nting the results (#1571) * add test * dispose unused dispsable parameters * stop the benchmark process output stream processing after receiving the last signal * don't try to read the standard error as it might also hang the benchmark process is catching all exceptions and writing to standard output, so it's OK (this is what the class Executor does already) * kill benchmarking process if it does not quit within 250ms after finishing benchmarking * exit code can be != 0 for benchmarks that have executed fine but hanged after printing the results * some benchmarks might be using parameters that have locking finalizers so we need to dispose them after we are done running the benchmarks see #1383 and dotnet/runtime#314 for more
* remove the source code of the Tool * Update the how-to-run doc * remove the mentions of the tool from the docs * fix the CI build errors * removing projects manually from solution file was a bad idea
…n lasts longer than IterationTime (#1573) * add the test * if the Jitting took more than IterationTime but still less than 1s (a magic number based on observations of the reported bug) we call it one more time to see if Jitting itself has not dominated the first invocation if it did, it shoud NOT be a single invocation engine (fixes #837, fixes #1337 and fixes #1338)
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Merge from original repo to update my forked repo.