From patchwork Thu May 21 14:10:03 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Robert Mader X-Patchwork-Id: 26788 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 55D07BDCBC for ; Thu, 21 May 2026 14:10:37 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id 4271F62E6A; Thu, 21 May 2026 16:10:34 +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="TXFJYh4w"; 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 7547A62E6A for ; Thu, 21 May 2026 16:10:30 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; t=1779372625; cv=none; d=zohomail.com; s=zohoarc; b=QysZDzkEU+Amddz3pHvJnZzvwnEICED7fwpzTXBkVWFMLGN2ePta7EkrEwXcv840oyMHQrz9r2HqWlsxtYZhVgt/3FBQHFH+K2R7u3czPRL8oy6Irv9rIcQR0Yn6V74pAdYEp0w9Qx+SxARf3VKxP9/7+66CUdtdNEBA8juzX/s= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1779372625; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:MIME-Version:Message-ID:Subject:Subject:To:To:Message-Id:Reply-To; bh=XRyvaFWq00A937rxii6ZA5AH06D7LPchYqM+t4Xi7G8=; b=fskb1AQ7GCexKzoEOS195omKpjEcAXKzvdRGN4kq1No3QxycNhWdclVbvN9saxk3fB2U3QJWGxqjzxUOAKn0rceqdSVvSIa8IuMmXcU1IKgg9fsHggDxqUE2Pm1pNC5OMuT4DtWjTokCEpY8a2iPuXpQVMS2yoIY2mouD5HmR2k= 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=1779372625; s=zohomail; d=collabora.com; i=robert.mader@collabora.com; h=From:From:To:To:Cc:Cc:Subject:Subject:Date:Date:Message-ID:MIME-Version:Content-Transfer-Encoding:Message-Id:Reply-To; bh=XRyvaFWq00A937rxii6ZA5AH06D7LPchYqM+t4Xi7G8=; b=TXFJYh4wFhlVMwbELWkWLsTQitmXJ+d0g+HSlVLsNPb7kz+5YVIg+frjJ4vdd1u3 HphlzpjVrBCmyh4UKEhJWGJjWmBIlBbNatziw8m1mqRReR+EJyjqfkQtnwnWzcaNQgo w45QzPFEfSWTXXlHrcMJZTaqDCvMW8ZoHvlkJFQo= Received: by mx.zohomail.com with SMTPS id 1779372623249583.6235797267448; Thu, 21 May 2026 07:10:23 -0700 (PDT) From: Robert Mader To: libcamera-devel@lists.libcamera.org Cc: Robert Mader Subject: [PATCH v1 0/3] debayer_egl: Sync output buffers after processing stats Date: Thu, 21 May 2026 16:10:03 +0200 Message-ID: <20260521141006.101016-1-robert.mader@collabora.com> X-Mailer: git-send-email 2.54.0 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" This series was split out of "software_isp: Implement DMABuf import for input buffers" as the observed performance improvement are significant and suprising enough to deserve a dedicated series. Below are some combined benchmark results, broken down in the two relevant commits. All where done using postmarketOS edge with updates from 21th May 2026 (Mesa 26.1.1). The mentioned pipelines where run five times each, with the mean value included here, which should be quite representive as the variance was rather small. All devices where using the powersave governor. # Pixel 3a ## Front Camera camera cam -c /base/soc@0/cci@ac4a000/i2c-bus@0/camera@1a -s width=1920,height=1080 --capture=60 Before: 47986 us/frame After: 30179 us/frame ## Back camera camera cam -c /base/soc@0/cci@ac4a000/i2c-bus@1/camera@1a -s width=1920,height=1080 --capture=60 Before: 30294 us/frame After: 14304 us/frame # FairPhone 5 ## Front Camera Camera cam -c /base/soc@0/cci@ac4b000/i2c-bus@1/camera@10 -s width=1920,height=1080 --capture=60 Before: 27373 us/frame After: 23312 us/frame ## Back camera camera cam -c /base/soc@0/cci@ac4a000/i2c-bus@1/camera@29 -s width=1920,height=1080 --capture=60 Before: 16339 us/frame After: 14791 us/frame # OnePlus 6 ## Back camera camera (imx376) cam -c /base/soc@0/cci@ac4a000/i2c-bus@1/camera@10 -s width=1920,height=1080 --capture=60 Before: 26206 us/frame After: 23625 us/frame ## Back camera (imx519) cam -c /base/soc@0/cci@ac4a000/i2c-bus@0/camera@10 -s width=1920,height=1080 --capture=60 Before: 43723 us/frame After: 29471 us/frame ## Front Camera cam -c /base/soc@0/cci@ac4a000/i2c-bus@0/camera@1a -s width=1920,height=1080 --capture=60 Before: 23597 us/frame After: 21890 us/frame # Librem 5 ## Front Camera cam -c /base/soc@0/bus@30800000/i2c@30a40000/camera@20 -s width=1280,height=720 --capture=60 Before: 91200 us/frame After: 83233 us/frame ## Back camera cam -c /base/soc@0/bus@30800000/i2c@30a50000/camera@2d -s width=1280,height=720 --capture=60 Before: 76577 us/frame After: 69569 us/frame # PinePhone ## Front Camera cam -c /base/i2c-csi/front-camera@3c -s width=1280,height=720 --capture=60 Before: 188122 us/frame After: 173764 us/frame ## Back camera cam -c /base/i2c-csi/rear-camera@4c -s width=1280,height=720 --capture=60 Before: 193712 us/frame After: 177251 us/frame Robert Mader (3): debayer_egl: Include stats computation into benchmark egl: Call glFlush before glFinish debayer_egl: Sync output buffers after processing stats include/libcamera/internal/egl.h | 1 + src/libcamera/egl.cpp | 13 +++++++++++++ src/libcamera/software_isp/debayer_egl.cpp | 7 ++++--- 3 files changed, 18 insertions(+), 3 deletions(-)