From patchwork Tue May 26 08:06:38 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Robert Mader X-Patchwork-Id: 26800 Return-Path: X-Original-To: parsemail@patchwork.libcamera.org Delivered-To: parsemail@patchwork.libcamera.org Received: from lancelot.ideasonboard.com (lancelot.ideasonboard.com [92.243.16.209]) by patchwork.libcamera.org (Postfix) with ESMTPS id 5DA54BDCBC for ; Tue, 26 May 2026 08:07:06 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id E63FB6302B; Tue, 26 May 2026 10:07:05 +0200 (CEST) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (1024-bit key; unprotected) header.d=collabora.com header.i=robert.mader@collabora.com header.b="K+k4E8dA"; dkim-atps=neutral Received: from sender4-pp-f112.zoho.com (sender4-pp-f112.zoho.com [136.143.188.112]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 6CF226175A for ; Tue, 26 May 2026 10:07:01 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; t=1779782816; cv=none; d=zohomail.com; s=zohoarc; b=AI8z/5gWftw8xFg8FT85vlwIzhJKGflpKKTjuglUtkDbvm9WxgDeBDSuIfiQ97H0010xAw8yVrMs/EUo0LGnBIfkEKVXC2uOBx0mI26Ei/ZVSr9V7YHoA9/ft0H7/3e/TeOwLtPl4Pwwn/PCdwDFKoer9toJmIXd1Por2m3pBXE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1779782816; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:MIME-Version:Message-ID:References:Subject:Subject:To:To:Message-Id:Reply-To; bh=zrn3YtvF1NVPRdbcOFt2bYRvJ/D6YRJ3hzZo9/flw4k=; b=oDuS0JaH4jNHGpscLKElXWzaSP5ls7m6jomEFCsqSiies4dVDoLLdIno/QJooHnu/JnDrQaCyEVHyvm1F3ma3FM1wPqsxwkGjilfbQdNPWUud9fEVlX+l/7DHIhSmmEJSZPWLK5KsANUDzmHIIGaE86jB/W8eS0g/e3boEBxN/0= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass header.i=collabora.com; spf=pass smtp.mailfrom=robert.mader@collabora.com; dmarc=pass header.from= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1779782816; s=zohomail; d=collabora.com; i=robert.mader@collabora.com; h=From:From:To:To:Cc:Cc:Subject:Subject:Date:Date:Message-ID:In-Reply-To:References:MIME-Version:Content-Transfer-Encoding:Message-Id:Reply-To; bh=zrn3YtvF1NVPRdbcOFt2bYRvJ/D6YRJ3hzZo9/flw4k=; b=K+k4E8dAtAz/csxLtw7OQnHRzgJzjqQMGcFz2OryNAbo2ODSFq9UMpSl0pfFY/Bi rKvmpdzpbLQ24RjlfndZyC6kxtuBBxlS+w1PS9YJukKAR4GhCt+Aa7UvNYtqNm/DMXC Iq0jQYR82ejQlcotA96NupsB5lqOSWoCQpddkVJ0= Received: by mx.zohomail.com with SMTPS id 1779782815693751.1100383216194; Tue, 26 May 2026 01:06:55 -0700 (PDT) From: Robert Mader To: libcamera-devel@lists.libcamera.org Cc: Robert Mader Subject: [PATCH v2 1/2] debayer_egl: Include stats computation into benchmark Date: Tue, 26 May 2026 10:06:38 +0200 Message-ID: <20260526080639.70173-2-robert.mader@collabora.com> X-Mailer: git-send-email 2.54.0 In-Reply-To: <20260526080639.70173-1-robert.mader@collabora.com> References: <20260526080639.70173-1-robert.mader@collabora.com> MIME-Version: 1.0 X-BeenThere: libcamera-devel@lists.libcamera.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libcamera-devel-bounces@lists.libcamera.org Sender: "libcamera-devel" The following commit will allow debayering on the GPU and stats computation on the CPU to happen in parallel, requiring this change in order to keep the benchmark meaningful. Do the change first in order to make before/after comparisons simpler. Signed-off-by: Robert Mader Reviewed-by: Kieran Bingham Reviewed-by: Bryan O'Donoghue --- src/libcamera/software_isp/debayer_egl.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/libcamera/software_isp/debayer_egl.cpp b/src/libcamera/software_isp/debayer_egl.cpp index eae4c57f4..ed9a68013 100644 --- a/src/libcamera/software_isp/debayer_egl.cpp +++ b/src/libcamera/software_isp/debayer_egl.cpp @@ -552,14 +552,14 @@ void DebayerEGL::process(uint32_t frame, FrameBuffer *input, FrameBuffer *output goto error; } - bench_.finishFrame(); - metadata.planes()[0].bytesused = output->planes()[0].length; /* Calculate stats for the whole frame */ stats_->processFrame(frame, 0, input); dmaSyncers.clear(); + bench_.finishFrame(); + outputBufferReady.emit(output); inputBufferReady.emit(input);