21 个仓库
Tools for analyzing code performance and identifying bottlenecks.
Explore 21 awesome GitHub repositories matching part of an awesome list · Profiling and Benchmarking. Refine with filters or upvote what's useful.
Hyperfine is a command-line benchmarking tool used to measure the execution time of shell commands through multiple runs and statistical analysis. It functions as a comparative benchmarking utility and a shell performance analyzer, allowing for the evaluation of multiple commands against a reference baseline to determine relative speed. The tool distinguishes itself by isolating actual command performance through shell overhead correction and the ability to bypass the shell entirely using system calls. It supports parameterized execution, enabling benchmarks to run across a range of varying i
Command-line tool for benchmarking arbitrary shell commands.
This project is a collection of educational resources and technical guides focused on Go performance optimization. It provides instruction on improving execution speed and reducing memory usage through code and architectural refinements. The guides cover advanced strategies for low-level programming, including the use of assembly for SIMD instructions and unsafe pointers for direct memory manipulation. It also details concurrency optimization techniques such as lock sharding and cache-line padding to reduce contention and improve hardware utilization. The material encompasses broad capabilit
Provides methods for identifying bottlenecks using CPU/memory profiling and flame graphs.
Bullet is an Active Record performance monitor and query profiler for Ruby on Rails applications. It serves as a diagnostic utility to identify inefficient database access patterns, flag redundant requests, and suggest eager loading strategies to improve response times. The tool specifically detects N+1 queries, missing counter caches, and unused eager loading. It monitors these patterns across both standard web requests and background jobs, identifying records that are fetched but never accessed to reduce memory usage and query overhead. Analysis is supported by a system that intercepts dat
Detects N+1 queries and unused eager loading.
Criterion 是一个基于统计学的 Rust 微基准测试库和性能回归工具。它提供了一个用于隔离和测量小段代码的框架,利用统计分析消除噪声,确保执行速度测量结果的可靠性和可重复性。 该工具通过性能可视化套件脱颖而出,可生成 HTML 报告和图表以跟踪性能趋势和吞吐量。它包含一个将当前执行时间与存储基准进行对比的系统,以识别并防止性能下降。 该库涵盖了异步函数测量、用于输入缩放的参数化基准测试以及代码吞吐量计算。它还支持集成自定义硬件指标和处理器计数器,以在运行期间捕获底层数据。 通过用于基准测试过滤的命令行界面和用于验证持续集成流水线中执行情况的验证模式,该工具提供了完善的自动化支持。
Statistics-driven library for micro-benchmarking.
Bytehound is a Linux memory profiler that utilizes a custom global allocator to intercept memory requests and track allocations and deallocations. It records full call-stack traces for every memory operation to map allocations back to their originating source code. The project features a remote memory profiling system that streams capture data via network sockets to a separate machine, minimizing resource overhead on the target system. Analysis is supported by a specialized domain-specific query language used to automate the detection of memory patterns and anomalies. The tool covers heap al
Memory profiling tool for Linux environments.
这是一个针对使用 Rack 接口的 Ruby 应用程序的性能分析工具。它监控请求执行时间和资源使用情况,作为 Web 应用程序的性能分析器来测量延迟并识别瓶颈。 该工具为数据库查询性能、内存分配和垃圾回收统计提供了专门的分析器。它生成调用栈火焰图 (Flamegraphs) 以可视化方法间的时间分布,并将速度徽章和计时指标直接渲染到 HTML 页面上。 该系统涵盖了更广泛的性能分析功能,包括自定义代码块跟踪、将分析数据导出到远程 URL 以及生产环境性能采样。它包含在不同存储后端之间持久化分析数据的机制,并实现了访问控制以限制谁可以查看敏感的性能指标。
Profiler for development and production Rack apps.
Take a peek into your Rails applications.
Visual status bar for Rails performance metrics.
Sampling CPU profiler for Ruby
Sampling profiler for any running Ruby process.
a sampling call-stack profiler for ruby 2.2+
Sampling call-stack profiler for modern Ruby.
Ruby Tests Profiling Toolbox
Toolbox for profiling Ruby test suites.
A ruby profiler. See https://ruby-prof.github.io for more information.
Code profiler for MRI Ruby implementations.
Provides iteration per second benchmarking for Ruby
Benchmarks code iterations per second.
Quickly find bottlenecks in Rust - one profiler for CPU, time, memory, and async code.
Profiler for identifying execution hotspots and allocations.
Fast and simple benchmarking for Rust projects
Benchmarking library with integrated allocation profiling.
:zap: Powerful tool for avoiding N+1 DB or HTTP queries
Lazy batching to prevent N+1 query issues.
Enterprise-oriented Generic Proxy Solutions
Benchmark tool for HTTP, TLS, and DNS protocols.
🐰 Bencher - Continuous Benchmarking
Continuous benchmarking suite for detecting performance regressions.
An intrusive flamegraph profiling tool for rust.
Intrusive flamegraph generation for performance visualization.
A new profiler for Ruby. With a GUI
Ruby profiler with a graphical interface.
Find code blocking your Tokio workers. eBPF-powered, no instrumentation.
eBPF-based profiler for identifying Tokio runtime blocking.