1. Percept

1 Percept

Percept, or Percept - Erlang Concurrency Profiling Tool, utilizes trace informations and profiler events to form a picture of the processes's and ports runnability.

1.1 Introduction

Percept uses erlang:trace/3 and erlang:system_profile/2 to monitor events from process states. Such states are,

  • waiting
  • running
  • runnable
  • free
  • exiting

There are some other states too, suspended, hibernating, and garbage collecting (gc). The only ignored state is gc and a process is considered to have its previous state through out the entire garbage collecting phase. The main reason for this, is that our model considers the gc as a third state neither active nor inactive.

A waiting or suspe