From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: Profiling Ada applications using gprof
Date: Wed, 5 Dec 2018 18:27:50 +0100
Date: 2018-12-05T18:27:50+01:00 [thread overview]
Message-ID: <pu91qn$ndu$1@gioia.aioe.org> (raw)
In-Reply-To: 27bf087a-d64d-4e9f-89b8-e7a7df70f917@googlegroups.com
On 2018-12-05 17:05, joakimds@kth.se wrote:
> When Writing code oneself one could use select-statements to discover long running entry calls like:
>
> procedure Work is
> begin
> select
> delay 1.0;
> Ada.Text_IO.Put_Line ("Calling A.Stop takes too long time!");
> then abort
> A.Stop;
> end select;
> end Work;
>
> But again, it would be cool if there was a way to discover long running entry calls by profiling (for example gprof).
This is not an entry call, it is asynchronous transfer of control (RM
9.7.4).
Regarding entry calls, a long running call of a protected entry is a
bug, protected actions must be instant, nothing to profile. For a task
entry, it is maybe not a quite bug, but suspicious nonetheless. Though,
I presume that both must be detectable by the profiler.
I guess you mean something completely different - times spent by a task
in a queue of an entry, multiple entries if requeue happens. That would
be a quite cool feature indeed.
The total time of an entry call as observed by the caller is
time spent in the queues + execution time of the entry body
--
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de
next prev parent reply other threads:[~2018-12-05 17:27 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-12-04 15:04 Profiling Ada applications using gprof joakimds
2018-12-04 19:41 ` Dennis Lee Bieber
2018-12-05 14:13 ` Petter Fryklund
2018-12-05 15:32 ` joakimds
2018-12-05 16:05 ` joakimds
2018-12-05 17:27 ` Dmitry A. Kazakov [this message]
2018-12-05 20:11 ` Dennis Lee Bieber
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox