All Projects → scaidermern → audria

scaidermern / audria

Licence: GPL-3.0 license
audria - A Utility for Detailed Ressource Inspection of Applications

Programming Languages

C++
36643 projects - #6 most used programming language
Gnuplot
187 projects
Makefile
30231 projects
c
50402 projects - #5 most used programming language

Projects that are alternatives of or similar to audria

cpu monitor
ROS node that publishes all nodes' CPU and memory usage
Stars: ✭ 52 (+48.57%)
Mutual labels:  cpu, memory, cpu-monitoring, memory-usage, cpu-usage, memory-monitoring
profiling
Non-discriminatory profiling of Ruby code leveraging the ruby-prof gem
Stars: ✭ 12 (-65.71%)
Mutual labels:  profiler, memory, profiling
nodejs
Node.js in-process collectors for Instana
Stars: ✭ 66 (+88.57%)
Mutual labels:  cpu, memory, profiling
Unityheapexplorer
A Memory Profiler, Debugger and Analyzer for Unity 2019.3 and newer.
Stars: ✭ 179 (+411.43%)
Mutual labels:  profiler, memory, analyzer
Myperf4j
High performance Java APM. Powered by ASM. Try it. Test it. If you feel its better, use it.
Stars: ✭ 2,281 (+6417.14%)
Mutual labels:  monitor, profiler, profiling
Pm2 Server Monit
Monitor server CPU / Memory / Process / Zombie Process / Disk size / Security Packages / Network Input / Network Output
Stars: ✭ 247 (+605.71%)
Mutual labels:  cpu, monitor, memory
Scalene
Scalene: a high-performance, high-precision CPU, GPU, and memory profiler for Python
Stars: ✭ 4,819 (+13668.57%)
Mutual labels:  cpu, profiler, profiling
Iglance
Free system monitor for OSX and macOS. See all system information at a glance in the menu bar.
Stars: ✭ 1,358 (+3780%)
Mutual labels:  cpu, monitor, memory
Sympact
🔥 Stupid Simple CPU/MEM "Profiler" for your JS code.
Stars: ✭ 439 (+1154.29%)
Mutual labels:  cpu, memory, resources
Ios Monitor Platform
📚 iOS 性能监控 SDK —— Wedjat(华狄特)开发过程的调研和整理
Stars: ✭ 2,316 (+6517.14%)
Mutual labels:  cpu, monitor, memory
ModernOperatingSystems AndrewTanenbaum
My notes after reading 'Modern Operating Systems' book by Andrew Tanenbaum and Herbert Bos.
Stars: ✭ 71 (+102.86%)
Mutual labels:  cpu, io, threads
doc
Get usage and health data about your Node.js process.
Stars: ✭ 17 (-51.43%)
Mutual labels:  cpu, memory
hardware
Get CPU, Memory and Network informations of the running OS and its processes
Stars: ✭ 70 (+100%)
Mutual labels:  cpu, memory
rh
Resource Harvester - a tool to gather low-level system data and make it easy to use programmatically
Stars: ✭ 18 (-48.57%)
Mutual labels:  cpu-monitoring, memory-monitoring
VisualProfiler-Unity
The Visual Profiler provides a drop in solution for viewing your mixed reality Unity application's frame rate, scene complexity, and memory usage.
Stars: ✭ 120 (+242.86%)
Mutual labels:  profiler, profiling
PerformanceAnalyzer
Under the iOS platform, the analyzer is a tool which statistics CPU, FPS, Memory, Loading-Time and provides the output of statistical data. And contain SQL execution time monitor base on FMDatabase and UI refresh in main thread monitor
Stars: ✭ 42 (+20%)
Mutual labels:  monitor, analyzer
pylaprof
A Python sampling profiler for AWS Lambda functions (and not only).
Stars: ✭ 12 (-65.71%)
Mutual labels:  profiler, profiling
profiler
Continuous profiling based on pprof
Stars: ✭ 221 (+531.43%)
Mutual labels:  profiler, profiling
read-process-memory
Read memory from another process
Stars: ✭ 100 (+185.71%)
Mutual labels:  memory, inspection
kotary
Managing Kubernetes Quota with confidence
Stars: ✭ 85 (+142.86%)
Mutual labels:  cpu, memory

audria - A Utility for Detailed Resource Inspection of Applications

audria is a little tool designed to read various program statistics from the /proc filesystem, including:

  • current and average CPU usage
  • virtual memory usage (peak, resident set, swap etc.)
  • IO load (current/total read/writes with and without buffers)
  • time spent in user/system mode
  • page faults
  • and other information

audria can be used to monitor a single process, a group of processes or all currently running processes. Furthermore it is possible to specify a command to execute in order to watch a process directly from startup. In contrast to some other tools, audria is designed to run in batch mode at very short intervals. This allows very detailed inspections of the resource usage of a process.

Usage

audria has several command line arguments:

PID(s)    PID(s) to monitor
-a        monitor all processes
-d delay  delay in seconds between intervals (default: 0.5), specify '-1' to use
          2 * kernel clock tick rate (2 * 1/100 on most systems), note: values equal or below
          the kernel clock tick rate will lead to bogus values for the 'CurCPUPerc' field
-e cmd    program to execute and watch, all remaining arguments will be forwarded
-f fields names of fields to show, separated by comma (default: all)
-k        show kernel threads (default: false)
-n num    number of iterations before quitting (default: unlimited)
-o file   file to write output to instead of stdout, will append to existing files,
          if file is '-' then output will be written to stdout (default)
-r        acquire real-time priority (lowest niceness, highest scheduling priority),
          usually requires root privileges or the CAP_SYS_NICE capability
-s        include self in list of processes to monitor
-h        print this help and exit

Example Usage

Usually it is sufficient to just pass the PID you want to monitor and optionally the name of the output file:

audria $(pidof myProgram) -o data.txt

For deeper inspections you might want to watch the program directly from startup and at a higher interval:

audria -d -1 -o data.txt -e myProgram -myProgramArgument

You can also specify which fields to show:

audria -f Name,CurCPUPerc,Threads,VmSizekB,CurReadBytesPerSec,CurWrittenBytesPerSec -a

Plotting

audria generates a CSV-like output which is suitable for plotting. For the gnuplot software you can use the example file example.plot as a start. It will plot several graphs based on the generated data, assuming this data has been stored as data.txt. Just install gnuplot and run gnuplot example.plot to generate the graphs.

Example Plots

These are some example plots created with gnuplot from audria's output. A firefox process was monitored right from the start:

The first plot shows the CPU (current + average) and memory (allocated + actually used) usage. Seems like IO is the bottleneck at startup as the CPU is only occasionally active: firefox CPU + memory usage

The second plot visuializes the IO load, especially the current number of read/written bytes/s and read/write calls: firefox IO usage

In the last plot we can see the relative time the process spend in user and kernel mode, as well as the current number of threads: firefox user/system time + threads

License

GPL v3 (c) Alexander Heinlein

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].