Skip Menu |
 

Preferred bug tracker

Please visit the preferred bug tracker to report your issue.

This queue is for tickets about the devel-nytprof CPAN distribution.

Report information
The Basics
Id: 50766
Status: resolved
Priority: 0/
Queue: devel-nytprof

People
Owner: Nobody in particular
Requestors: adamk [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: Wishlist
Broken in: (no value)
Fixed in: (no value)



Subject: Provide an equivalent of dprofpp -T
MIME-Version: 1.0
X-Mailer: MIME-tools 5.427 (Entity 5.427)
Content-Type: text/plain
Charset: utf8
Content-Disposition: inline
Content-Transfer-Encoding: binary
X-RT-Original-Encoding: utf-8
Content-Length: 431
Download (untitled) / with headers
text/plain 431b
One of the most useful features of DProf was that for any profiling run, you could run a -T on it to get a complete space-indented function trace for the entire application run. The file sizes it spat out tended to be huge, but the information was invaluable for seeing what the hell an application was doing (particularly in the case of watching apps explode in slow motion). I'd very much like to see an equivalent for NYTProf.
MIME-Version: 1.0
X-Mailer: MIME-tools 5.427 (Entity 5.427)
Content-Disposition: inline
Charset: utf8
Content-Type: text/plain
Message-ID: <rt-3.6.HEAD-3617-1256301067-1556.50766-0-0 [...] rt.cpan.org>
Content-Transfer-Encoding: binary
X-RT-Original-Encoding: utf-8
Content-Length: 286
Download (untitled) / with headers
text/plain 286b
The subroutine profiler is currently in-memory only, so the *individual calls* are not available. An output something a little like dprofpp -S could be generated from the aggregated call tree data. What specific use-cases do you have? What questions do you want to be able to answer?
CC: adamk [...] cpan.org
MIME-Version: 1.0
X-Spam-Status: No, hits=0.0 required=8.0 tests=DK_SIGNED,SPF_PASS
In-Reply-To: <rt-3.6.HEAD-3617-1256301067-1556.50766-6-0 [...] rt.cpan.org>
References: <RT-Ticket-50766 [...] rt.cpan.org> <rt-3.6.HEAD-3617-1256301067-1556.50766-6-0 [...] rt.cpan.org>
Reply-To: adam [...] ali.as
Message-ID: <b8cb49a40910240130i41ec1c82m92adfc33e644ec51 [...] mail.gmail.com>
Content-Type: text/plain; charset="utf-8"
X-RT-Original-Encoding: utf-8
Received: from la.mx.develooper.com (x1.develooper.com [207.171.7.70]) by diesel.bestpractical.com (Postfix) with SMTP id 5628019B82E2 for <bug-devel-nytprof [...] rt.cpan.org>; Sat, 24 Oct 2009 04:30:28 -0400 (EDT)
Received: (qmail 16795 invoked by uid 103); 24 Oct 2009 08:30:27 -0000
Received: from x16.dev (10.0.100.26) by x1.dev with QMQP; 24 Oct 2009 08:30:27 -0000
Received: from mail-pz0-f171.google.com (HELO mail-pz0-f171.google.com) (209.85.222.171) by 16.mx.develooper.com (qpsmtpd/0.80) with ESMTP; Sat, 24 Oct 2009 01:30:26 -0700
Received: by pzk1 with SMTP id 1so158183pzk.33 for <bug-devel-nytprof [...] rt.cpan.org>; Sat, 24 Oct 2009 01:30:23 -0700 (PDT)
Received: by 10.142.149.37 with SMTP id w37mr916120wfd.142.1256373023416; Sat, 24 Oct 2009 01:30:23 -0700 (PDT)
Delivered-To: cpan-bug+devel-nytprof [...] diesel.bestpractical.com
Subject: Re: [rt.cpan.org #50766] Provide an equivalent of dprofpp -T
Domainkey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:reply-to:in-reply-to:references:date:message-id :subject:from:to:cc:content-type; b=UNDX0ICn6b/qxSdagiATy2VQTFJvKewm85G8NN3E9CbxfkpFejGMpKXVk8Ju2irZ8C tdFHOoFkT7mEbiTIfsY/cl8TFpDfT1jkmqYI2jWTmdvmL2E+h4KAipEaJfVfrDHwSQxP Wi0qB/RLoiGv55dZArypWbodTR9GZmoZpconA=
Return-Path: <adamkennedybackup [...] gmail.com>
Dkim-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:reply-to:in-reply-to :references:date:message-id:subject:from:to:cc:content-type; bh=XUbOKrLIKlp+W6mMkOrI4G67xIdxKPZkp+Zmy5Rlml4=; b=XIxhGEQrXTysUkPv0PGEEk5LQDkUtBSIxZXk1j77KALabFBoKSaTbTrASWU9Q8cm0c pWKW3ZW9AiGvB7F4IVmnEsMsmaHLAtQcZLo+3KMvY9AHdVTZp7k0/Z+zhuWOW2gi+88m iThb/mxi7WjUfM0wnSO81OoRrDmPbJNR5jJ4o=
X-Spam-Check-BY: 16.mx.develooper.com
X-Original-To: bug-devel-nytprof [...] rt.cpan.org
Date: Sat, 24 Oct 2009 19:30:23 +1100
X-Spam-Level: *
To: bug-devel-nytprof [...] rt.cpan.org
From: Adam Kennedy <adamkennedybackup [...] gmail.com>
RT-Message-ID: <rt-3.6.HEAD-3617-1256373038-1045.50766-0-0 [...] rt.cpan.org>
Content-Length: 626
Download (untitled) / with headers
text/plain 626b
"How and when, specifically, did my code explode" I normally start at the end of the function trace, and work backwords through the explosion to find the precise place where the problems started. Adam K 2009/10/23 Tim_Bunce via RT <bug-devel-nytprof@rt.cpan.org>: Show quoted text
> <URL: https://rt.cpan.org/Ticket/Display.html?id=50766 > > > The subroutine profiler is currently in-memory only, so the *individual calls* are not available. > > An output something a little like dprofpp -S could be generated from the aggregated call tree > data. > > What specific use-cases do you have? What questions do you want to be able to answer? >
MIME-Version: 1.0
X-Mailer: MIME-tools 5.427 (Entity 5.427)
Content-Disposition: inline
Charset: utf8
Content-Type: text/plain
Message-ID: <rt-3.6.HEAD-3617-1256393307-781.50766-0-0 [...] rt.cpan.org>
Content-Transfer-Encoding: binary
X-RT-Original-Encoding: utf-8
Content-Length: 499
Download (untitled) / with headers
text/plain 499b
So you definitely need the sub calls streamed to the data file as they happen (not aggregated into a single call graph and dumped at the end, which is what happens currently). It wouldn't be much work to get the info into the data file. Making use of it on the reporting side would be more work, but perhaps Devel::NYTProf::ReadStream would suffice for you. [The reporting code is a complete mess. Ought to be refactored into a rough MVC core and plugins with a single ntprof command frontend.]
MIME-Version: 1.0
X-Mailer: MIME-tools 5.427 (Entity 5.427)
Content-Disposition: inline
Charset: utf8
Content-Type: text/plain
Message-ID: <rt-3.6.HEAD-3617-1256597519-1837.50766-0-0 [...] rt.cpan.org>
Content-Transfer-Encoding: binary
X-RT-Original-Encoding: utf-8
Content-Length: 349
Download (untitled) / with headers
text/plain 349b
You can already get a view of How and when, specifically, did my code explode" from Devel::NYTProf::ReadStream. It's line-by-line rather than call-by-call, but for your use-case that would be even better. Also, more generally, NYTProf isn't a debugger or even an execution tracer - there are other modules on CPAN that are targeting those areas.
MIME-Version: 1.0
X-Mailer: MIME-tools 5.427 (Entity 5.427)
Content-Disposition: inline
Content-Type: text/plain; charset="UTF-8"
Message-ID: <rt-3.8.HEAD-12687-1268412616-521.50766-0-0 [...] rt.cpan.org>
Content-Transfer-Encoding: binary
X-RT-Original-Encoding: utf-8
Content-Length: 88
I'm going to close this wishlist item as I've noted the requirement in the HACKING file.


This service is sponsored and maintained by Best Practical Solutions and runs on Perl.org infrastructure.

Please report any issues with rt.cpan.org to rt-cpan-admin@bestpractical.com.