SmartProfiler.CLI
1.0.1
There is a newer version of this package available.
See the version list below for details.
See the version list below for details.
dotnet tool install --global SmartProfiler.CLI --version 1.0.1
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest
dotnet tool install --local SmartProfiler.CLI --version 1.0.1
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=SmartProfiler.CLI&version=1.0.1
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
nuke :add-package SmartProfiler.CLI --version 1.0.1
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
SmartProfiler.CLI ๐
A blazing-fast, intelligent C# CLI tool for measuring execution time, memory consumption, and detecting performance bottlenecks in .NET assemblies.
๐ Features
- ๐ ๏ธ Profile Any Static Method: Just point to your compiled DLL.
- โฑ๏ธ Precise Execution Timing: Average, min, max durations per run.
- ๐ง Memory Consumption Insights: Detect memory leaks and GC pressure.
- ๐ Async/Sync Friendly: Handles both synchronous and asynchronous methods seamlessly.
- ๐ Export to CSV: Easy-to-analyze structured output.
- โก Cross-Platform: Windows, MacOS, and Linux supported.
- ๐ Performance Regression Detector (Coming Soon ๐ง).
๐ Quick Start
1. Clone the Repository
- git clone https://github.com/your-github-username/SmartProfiler.CLI.git
- cd SmartProfiler.CLI
2. Build the Project
- dotnet build
๐๏ธ How It Works
- Loads your .dll dynamically at runtime.
- Locates the fully qualified static method.
- Executes the method multiple times (default 10).
- Measures:
- Execution time (min/avg/max)
- Memory usage (before/after/peak)
- Exports detailed CSV reports for analysis.
- Supports async and Task-returning methods out of the box. No extra configuration needed.
๐ฆ Installation
Install SmartProfiler.CLI globally using the .NET CLI: (Requires .NET 6.0 SDK or higher installed.)
- dotnet tool install --global SmartProfiler.CLI
โก Quick Start
Profile the execution time and memory consumption of your C# methods easily.
Example command: smartprofiler --method YourNamespace.YourClass.YourMethod
- method: Fully qualified method name you want to profile (e.g., MyApp.Services.MathService.AddNumbers).
- assembly: (Optional) Specify the path to your DLL if not in the working directory.
๐ฏ Future Enhancements
- ๐ฅ๏ธ Real-time memory graph visualization (Blazor frontend)
- ๐ Multiple method comparison in a single run
- ๐ฅ Performance regression alerts
- ๐พ Database integration for long-term storage
- ๐งช Built-in stress/load testing module
๐ Acknowledgements
Inspired by the need for developer-first profiling tools that bridge the gap between brilliant code and high-performing applications.
๐ License
MIT License. Use freely. Contribute back. Grow the ecosystem. ๐ฑ
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
This package has no dependencies.