From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from firstgate.proxmox.com (firstgate.proxmox.com [212.224.123.68]) by lore.proxmox.com (Postfix) with ESMTPS id E19801FF17A for ; Mon, 5 Aug 2024 11:24:39 +0200 (CEST) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id B95B01DF7; Mon, 5 Aug 2024 11:24:47 +0200 (CEST) From: Dominik Csapak To: pbs-devel@lists.proxmox.com Date: Mon, 5 Aug 2024 11:24:09 +0200 Message-Id: <20240805092414.1178930-1-d.csapak@proxmox.com> X-Mailer: git-send-email 2.39.2 MIME-Version: 1.0 X-SPAM-LEVEL: Spam detection results: 0 AWL 0.015 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DMARC_MISSING 0.1 Missing DMARC policy KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment RCVD_IN_VALIDITY_CERTIFIED_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to Validity was blocked. See https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more information. RCVD_IN_VALIDITY_RPBL_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to Validity was blocked. See https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more information. RCVD_IN_VALIDITY_SAFE_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to Validity was blocked. See https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more information. SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record Subject: [pbs-devel] [PATCH proxmox-backup v3 0/5] improve compression throughput X-BeenThere: pbs-devel@lists.proxmox.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Proxmox Backup Server development discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: Proxmox Backup Server development discussion Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: pbs-devel-bounces@lists.proxmox.com Sender: "pbs-devel" in my tests (against current master) it improved the throughput if the source/target storage is fast enough (tmpfs -> tmpfs): Type master (MiB/s) with my patches (MiB/s) .img file ~614 ~767 pxar one big file ~657 ~807 pxar small files ~576 ~627 (these results are also in the relevant commit message) It would be great, if someone else can cross check my results here. Note: the the pxar code being faster than the img code seems to stem from better multithreading pipelining in that code or in tokio (pxar codepath scales more directly with more cores than the .img codepath) changes from v2: * use zstd_safe instead of zstd so we have access to the underlying error code * add test for the error code handling since that's not part of the public zstd api, only an implementation detail (albeit one that's not likely to change soon) * seperated the tests for the decode(encode()) roundtrip so a failure can more easily assigned to a specific codepath changes from v1: * reorder patches so that the data blob writer removal is the first one * add tests for DataBlob that we can decode what we encoded (to see that my patches don't mess up the chunk generation) * add new patch to cleanup the `encode` function a bit Dominik Csapak (5): remove data blob writer datastore: test DataBlob encode/decode roundtrip datastore: data blob: add helper and test for checking zstd_safe error code datastore: data blob: increase compression throughput datastore: DataBlob encode: simplify code Cargo.toml | 1 + pbs-datastore/Cargo.toml | 1 + pbs-datastore/src/data_blob.rs | 193 ++++++++++++++++------- pbs-datastore/src/data_blob_writer.rs | 212 -------------------------- pbs-datastore/src/lib.rs | 2 - tests/blob_writer.rs | 105 ------------- 6 files changed, 144 insertions(+), 370 deletions(-) delete mode 100644 pbs-datastore/src/data_blob_writer.rs delete mode 100644 tests/blob_writer.rs -- 2.39.2 _______________________________________________ pbs-devel mailing list pbs-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pbs-devel