From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:50324) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bCkPG-0003EN-He for qemu-devel@nongnu.org; Tue, 14 Jun 2016 05:13:14 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bCkPF-0004vq-GY for qemu-devel@nongnu.org; Tue, 14 Jun 2016 05:13:10 -0400 Received: from mail-wm0-x244.google.com ([2a00:1450:400c:c09::244]:33666) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bCkPF-0004vj-9Y for qemu-devel@nongnu.org; Tue, 14 Jun 2016 05:13:09 -0400 Received: by mail-wm0-x244.google.com with SMTP id r5so20777436wmr.0 for ; Tue, 14 Jun 2016 02:13:09 -0700 (PDT) Sender: Paolo Bonzini References: <145641255678.30097.2919142707547689749.stgit@localhost> <145641258612.30097.7127731954660712163.stgit@localhost> <30b46b30-fbc0-31a4-6210-657b205c121f@redhat.com> <87lh29cmip.fsf@fimbulvetr.bsc.es> <878ty9xctp.fsf@fimbulvetr.bsc.es> <20160614083922.GA25111@stefanha-x1.localdomain> From: Paolo Bonzini Message-ID: Date: Tue, 14 Jun 2016 11:13:06 +0200 MIME-Version: 1.0 In-Reply-To: <20160614083922.GA25111@stefanha-x1.localdomain> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 8bit Subject: Re: [Qemu-devel] [PATCH 4/6] trace: Add per-vCPU tracing states for events with the 'vcpu' property List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Stefan Hajnoczi , qemu-devel@nongnu.org, Blue Swirl , Riku Voipio , Eduardo Habkost , =?UTF-8?Q?Andreas_F=c3=a4rber?= On 14/06/2016 10:39, Stefan Hajnoczi wrote: > On Mon, Jun 13, 2016 at 06:39:46PM +0200, Lluís Vilanova wrote: >> Paolo Bonzini writes: >> >>> On 13/06/2016 14:15, Lluís Vilanova wrote: >>>>> That said, I am skeptical about the benefit of the interfaces you are >>>>> adding. They add a lot of complication and overhead (especially >>>>> regarding the memory/cache overhead of the dstate array) without a clear >>>>> use case, in my opinion; all the processing you do at run-time is just >>>>> as well suited for later filtering. >>>> >>>> This should make tracing faster on the future with multi-threaded TCG, as well >>>> as trace files much smaller if you're tracing something like memory >>>> accesses. Also, bear in mind this series was split from a much larger one for >>>> simplicity. The follow-up one provides much larger performance benefits by >>>> avoiding the generation of TCG code to call the tracing backend when a vCPU is >>>> not traced. >> >>> This still assumes that tracing only some VCPUs is a common use case. >>> Is it?... >> >> I use it for code profiling by sampling across vCPUs, or only on vCPUs I know >> run processes of my interest. The profiles can then be used for analyzing the >> application/system behaviour. >> >> Also, with the fast-path checks already in place ('trace_events_enabled_count'), >> performance when not tracing should never be worse with this series. >> >> If this feature does not look useful to overall QEMU I will fold it into my >> other out-of-tree patches. > > I think the per-vcpu tracing feature is reasonable for qemu.git as long > as it does not introduce performance regressions for existing users. I'm okay with it if the dstate array is changed to uint16_t. Thanks, Paolo