Giter Club home page Giter Club logo

percept2's Introduction

Percept2 -- A Concurrency Erlang Profiling Tool

================================

Percept2 is an enhanced version of the Percept (see http://www.erlang.org/doc/man/percept.html) profiling tool from the Erlang/OTP distribution. Percept2 extends Percept in both functionality and scalability. Among the new functionalities added are:

  • scheduler activity: the number of active schedulers at any time during the profiling;

  • process migration information: the migration history of a process between run queues;

  • statistics data about message passing between processes: the number of messages, and the average message size, sent/received by a process;

  • accumulated runtime per-process: the accumulated time when a process is in a running state;

  • process tree: the hierarchy structure indicating the parent-child relationships between processes;

  • dynamic calling-context-aware function call graph;

  • active functions: the functions that are active during a specific time interval

  • inter-node message passing: the sending of messages from one node to another, and

  • the view of soure code.

How to build Percept2

Build and install the software in the usual way:

   $ ./configure 
   
   $ make 
   
   $ (sudo) make install

By default Percept2 is installed under the directory /usr/local; to install Percept2 in a different directory, you need to explicitly specify the directory using the '--prefix=...' flag of 'configure'.

NOTE: percept2 uses the `graphviz' tool to generate the graph representation of process tree and dynamic function callgraph. While we are trying to remove this dependence, please make sure graphviz is installed on your machine for now.

Documentation

Percept2 online documentation is available from http://RefactoringTools.github.com/percept2

Papers

H. Li and S. Thompson. Multicore Profiling for Erlang Programs Using Percept2. In Proceedings of the Twelfth ACM SIGPLAN Workshop on Erlang, pages 33-42, September 2013. ACM Press.

P. Rodgers, R. Baker, S. Thompson and H. Li. Multi-level Visualization of Concurrent and Distributed Computation in Erlang. In Visual Languages and Computing (VLC) in The 19th International Conference o n Distributed Multimedia Systems (DMS 2013), August 2013.

percept2's People

Contributors

robbaker292 avatar robertoaloi avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.