Memprof - A Ruby gem for memory profiling

  •        4957

Memprof is a Ruby level memory profiler that can help you find reference leaks in your application. Memprof can also do very lightweight function call tracing to help you figure out which system calls, and library calls your code causes. Ruby memory profiler similar to bleak_house, but without patches to the Ruby VM.

It uses various binary rewriting techniques to insert hooks into the running Ruby process, allowing you to collect data without having to run a patched Ruby installation. Currently, memprof provides data about object allocation, garbage collection, and full dumps of the Ruby heap.

http://memprof.com/ is a hosted service to analyze dumps and it will be free during beta period.

http://github.com/ice799/memprof

Tags
Implementation
License
Platform

   




Related Projects

Memorylogic - Memory usage logger

  •    Ruby

Adds in proccess id and memory usage in your rails logs, great for tracking down memory leaks.

Ruby-Prof - fast code profiler for Ruby

  •    Ruby

ruby-prof is a fast code profiler for Ruby.

php-memory-profiler - Memory usage profiler for PHP

  •    C

php-memprof profiles memory usage of PHP scripts, and especially can tell which function has allocated every single byte of memory currently allocated.In script 1, a before/after approach would designate file_get_contents() as huge memory consumer, while the memory it allocates is actually freed quickly after it returns. When dumping the memory usage after a() returns, the memprof approach would show that file_get_contents() is a small memory consumer since the memory it allocated has been freed at the time memprof_dump_array() is called.

Valgrind

  •    C

Valgrind is an award-winning instrumentation framework for building dynamic analysis tools. There are Valgrind tools that can automatically detect many memory management and threading bugs, and profile your programs in detail. You can also use Valgrind to build new tools.


stackimpact-python - StackImpact Python Profiler - Production-Grade Performance Profiler: CPU, memory allocations, blocking calls, exceptions, metrics, and more

  •    Python

StackImpact is a production-grade performance profiler built for both production and development environments. It gives developers continuous and historical code-level view of application performance that is essential for locating CPU, memory allocation and I/O hot spots as well as latency bottlenecks. Included runtime metrics and error monitoring complement profiles for extensive performance analysis. Learn more at stackimpact.com. Learn more on the features page (with screenshots).

Alleyoop

  •    GTK

Alleyoop is a graphical front-end to the increasingly popular Valgrind memory checker for the x86 and x86_64 flavors of Linux using the Gtk+ widget set and other GNOME libraries for the X-Windows environment.

sympact - 🔥 Simple stupid CPU/MEM "Profiler" for your JS code.

  •    Javascript

🔥 An easy way to calculate the 'impact' of running a task in Node.JS Coded with ❤️ by Simone Primarosa. Sympact runs a script and profiles its execution time, CPU usage, and memory usage. Sympact then returns an execution report containing the averages of the results.

memprof - A Ruby gem for memory profiling

  •    C

This project is no longer maintained. It does not work for any Ruby version above Ruby 1.8.7. Memprof is a Ruby level memory profiler that can help you find reference leaks in your application.

goappmonitor - Golang application performance data monitoring.

  •    Go

Golang application performance data monitoring.GoAppMonitor is a library which provides a monitor on your golang applications. It contains system level based monitoring and business level monitoring(custom monitoring).Just add the repository into your apps and register what you want to monitoring.

memorylogic - Adds in proccess id and memory usage in your rails logs, great for tracking down memory leaks

  •    Ruby

The reason I created this was to help track down a memory leak. It worked very well because it adds the process id and memory usage in with EVERY single line logged and at the end of each rails request. By every line, I mean every line in your log will end with “ (mem #{memory_usage})”. This way, if you have a cluster, you can monitor each process and scroll through your logs and watch the memory. If it suddenly starts to jump you can look at the request and at least you have a starting point. You can checkout the code for that specific controller action and try to narrow it down.

LeakCanary - A memory leak detection library for Android and Java

  •    Kotlin

LeakCanary is a memory leak detection library for Android. LeakCanary’s knowledge of the internals of the Android Framework gives it a unique ability to narrow down the cause of each leak, helping developers dramatically reduce OutOfMemoryError crashes.

scalene - Scalene: a high-performance, high-precision CPU, GPU, and memory profiler for Python

  •    Python

by Emery Berger, Sam Stern, and Juan Altmayer Pizzorno. Scalene is a high-performance CPU, GPU and memory profiler for Python that does a number of things that other Python profilers do not and cannot do. It runs orders of magnitude faster than other profilers while delivering far more detailed information.

bwa - Burrow-Wheeler Aligner for short-read alignment (see minimap2 for long-read alignment)

  •    C

Note: minimap2 has replaced BWA-MEM for PacBio and Nanopore read alignment. It retains all major BWA-MEM features, but is ~50 times as fast, more versatile, more accurate and produces better base-level alignment. BWA is a software package for mapping DNA sequences against a large reference genome, such as the human genome. It consists of three algorithms: BWA-backtrack, BWA-SW and BWA-MEM. The first algorithm is designed for Illumina sequence reads up to 100bp, while the rest two for longer sequences ranged from 70bp to a few megabases. BWA-MEM and BWA-SW share similar features such as the support of long reads and chimeric alignment, but BWA-MEM, which is the latest, is generally recommended as it is faster and more accurate. BWA-MEM also has better performance than BWA-backtrack for 70-100bp Illumina reads.

node-memory-leak-tutorial - A tutorial for debugging memory leaks in node

  •    Javascript

This is a quick tutorial for debugging memory leaks in node.js.First of all, you need to install the v8-profiler module. Without that required from within your app, you will not be able to take heap snapshots in the debugger.

OOMDetector - OOMDetector is a memory monitoring component for iOS which provides you with OOM monitoring, memory allocation monitoring, memory leak detection and other functions

  •    Objective-C++

OOMDetector is a memory monitoring component for iOS which provides you with OOM monitoring, memory allocation monitoring, memory leak detection and other functions.

async-profiler - Sampling CPU and HEAP profiler for Java featuring AsyncGetCallTrace + perf_events

  •    C++

This project is a low overhead sampling profiler for Java that does not suffer from Safepoint bias problem. It features HotSpot-specific APIs to collect stack traces and to track memory allocations. The profiler works with OpenJDK, Oracle JDK and other Java runtimes based on HotSpot JVM.There are two operating modes: CPU profiling and HEAP profiling.

JVM Monitor - Java profiler integrated with Eclipse

  •    Java

JVM Monitor is a Java profiler integrated with Eclipse to monitor CPU, threads and memory usage of Java applications. JVM Monitor would be useful to quickly inspect Java applications without preparing any launch configuration beforehand. JVM Monitor automatically finds the running JVMs on local host and you can easily start monitoring them. It is also supported to monitor Java applications on remote host by giving hostname and port number.

uprofiler - [NOT MAINTAINED ANYMORE] Lightweight profiler for PHP (based on facebook/xhprof) -- use Blackfire instead

  •    PHP

WARNING: This project is not maintained anymore and does not work on PHP 7+. If you are looking for a PHP profiler, you can have a look at https://blackfire.io/ (the free version has more features and a better UI than the ones provided by this project). uprofiler is a hierarchical profiler for PHP. It reports function-level call counts and inclusive and exclusive metrics such as wall (elapsed) time, CPU time and memory usage. A function's profile can be broken down by callers or callees. The raw data collection component is implemented in C as a PHP Zend extension called uprofiler. uprofiler has a simple HTML based user interface (written in PHP). The browser based UI for viewing profiler results makes it easy to view results or to share results with peers. A callgraph image view is also supported.

ruby-prof - ruby-prof: a code profiler for MRI rubies

  •    Ruby

Speed - it is a C extension and therefore many times faster than the standard Ruby profiler. Modes - Ruby prof can measure a number of different parameters, including call times, memory usage and object allocations.






We have large collection of open source products. Follow the tags from Tag Cloud >>


Open source products are scattered around the web. Please provide information about the open source projects you own / you use. Add Projects.