From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: <ffmpeg-devel-bounces@ffmpeg.org> Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTPS id 1AFD24CF1E for <ffmpegdev@gitmailbox.com>; Tue, 15 Apr 2025 18:15:48 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 7AE8F687D57; Tue, 15 Apr 2025 21:14:48 +0300 (EEST) Received: from relay9-d.mail.gandi.net (relay9-d.mail.gandi.net [217.70.183.199]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 4428D687D29 for <ffmpeg-devel@ffmpeg.org>; Tue, 15 Apr 2025 21:14:39 +0300 (EEST) Received: by mail.gandi.net (Postfix) with ESMTPSA id A080B43969 for <ffmpeg-devel@ffmpeg.org>; Tue, 15 Apr 2025 18:14:38 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=niedermayer.cc; s=gm1; t=1744740878; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=OR36c99TQUO0QjwhuiiC2h8nrI5I0QIi9Slj86px1FA=; b=Jl8nZiMV/WnoU+e8AnFAYPmMLNc+HY7yu9qAmMK8ZAtTpIOMpTi43hWA0gOQOpP8Krp8hs PxeDsjoiKCJjGVILD1cjV9tNl7ZzPb0crOHFP4ruOEn5JtM2e94nbAXSXKtcflVpHW4Bzm drFNsYmEE+iQuP1hzW1xOBZEoM3EO4iuDzTDZd32w4M+H7n7i16RZvntqbN8Qylh/8AT+1 R6eTcjPpr8/ky6EhvM9QhOSfj6EUIs8pdWl4o5UyIBtpuw1dM1rmZVDg+NLzk9FRIp5aGs xCZ0KpSkQPjUeVQclkNX0axoQGUlN6d/BQHH4KT9ApQqZkNeL2gfxVMT7UT5xg== From: Michael Niedermayer <michael@niedermayer.cc> To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org> Date: Tue, 15 Apr 2025 20:14:33 +0200 Message-ID: <20250415181433.530161-6-michael@niedermayer.cc> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250415181433.530161-1-michael@niedermayer.cc> References: <20250415181433.530161-1-michael@niedermayer.cc> MIME-Version: 1.0 X-GND-State: clean X-GND-Score: -70 X-GND-Cause: gggruggvucftvghtrhhoucdtuddrgeefvddrtddtgddvvdegudekucetufdoteggodetrfdotffvucfrrhhofhhilhgvmecuifetpfffkfdpucggtfgfnhhsuhgsshgtrhhisggvnecuuegrihhlohhuthemuceftddunecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenfghrlhcuvffnffculdeftddmnecujfgurhephffvufffkffojghfggfgsedtkeertdertddtnecuhfhrohhmpefoihgthhgrvghlucfpihgvuggvrhhmrgihvghruceomhhitghhrggvlhesnhhivgguvghrmhgrhigvrhdrtggtqeenucggtffrrghtthgvrhhnpedvgfefudeijeetieejkefgfffhtdeludeuffdvfeelieevjeetvedufeetfeejfeenucfkphepgedurdeiiedrieejrdduudefnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehinhgvthepgedurdeiiedrieejrdduudefpdhhvghloheplhhotggrlhhhohhsthdpmhgrihhlfhhrohhmpehmihgthhgrvghlsehnihgvuggvrhhmrgihvghrrdgttgdpnhgspghrtghpthhtohepuddprhgtphhtthhopehffhhmphgvghdquggvvhgvlhesfhhfmhhpvghgrdhorhhg X-GND-Sasl: michael@niedermayer.cc Subject: [FFmpeg-devel] [PATCH v2 6/6] [NOT for git] avutil/tests/map: benchmark code X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches <ffmpeg-devel.ffmpeg.org> List-Unsubscribe: <https://ffmpeg.org/mailman/options/ffmpeg-devel>, <mailto:ffmpeg-devel-request@ffmpeg.org?subject=unsubscribe> List-Archive: <https://ffmpeg.org/pipermail/ffmpeg-devel> List-Post: <mailto:ffmpeg-devel@ffmpeg.org> List-Help: <mailto:ffmpeg-devel-request@ffmpeg.org?subject=help> List-Subscribe: <https://ffmpeg.org/mailman/listinfo/ffmpeg-devel>, <mailto:ffmpeg-devel-request@ffmpeg.org?subject=subscribe> Reply-To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org> Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" <ffmpeg-devel-bounces@ffmpeg.org> Archived-At: <https://master.gitmailbox.com/ffmpegdev/20250415181433.530161-6-michael@niedermayer.cc/> List-Archive: <https://master.gitmailbox.com/ffmpegdev/> List-Post: <mailto:ffmpegdev@gitmailbox.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc> --- libavutil/tests/map.c | 56 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) diff --git a/libavutil/tests/map.c b/libavutil/tests/map.c index 38f0a153e68..72bfafdb4f4 100644 --- a/libavutil/tests/map.c +++ b/libavutil/tests/map.c @@ -26,6 +26,8 @@ #include "libavutil/mem.h" #include "libavutil/map.h" +#include "libavutil/timer.h" +#include "libavutil/dict.h" static void print_set(const AVMap *s) { @@ -37,6 +39,7 @@ static void print_set(const AVMap *s) int main(void) { +#if 0 void *our_cmp[] = { strcmp, av_map_strcmp_keyvalue, @@ -185,6 +188,59 @@ int main(void) av_map_free(&set); av_assert0(!set); } +#else +#define N_ENTRIES 1000 +#define P 4 + for (int runs = 0; runs < 1000; runs++) { + AVMap *map = av_map_new(strcmp, NULL, NULL); + for(int pass = 0; pass < 2; pass++) { + START_TIMER + unsigned r = 5; + for(int i=0; i<N_ENTRIES; i++) { + r = r*123 + 7; + char str[7] = "TEST"; + str[P ] = r; + str[P+1] = r>>8; + if(pass == 0) { + av_map_add(map, str, 7, str, 7, 0); + } else { + av_map_get(map, str, strcmp); + } + } + if (pass) { + STOP_TIMER("av_map_get") + } else { + STOP_TIMER("av_map_add") + } + } + av_map_free(&map); + } + + for (int runs = 0; runs < 1000; runs++) { + AVDictionary *dict = NULL; + for(int pass = 0; pass < 2; pass++) { + START_TIMER + unsigned r = 5; + for(int i=0; i<N_ENTRIES; i++) { + r = r*123 + 7; + char str[7] = "TEST"; + str[P ] = r; + str[P+1] = r>>8; + if(pass == 0) { + av_dict_set(&dict, str, str, 0); + } else { + av_dict_get(dict, str, NULL, 0); + } + } + if (pass) { + STOP_TIMER("av_dict_get") + } else { + STOP_TIMER("av_dict_set") + } + } + av_dict_free(&dict); + } +#endif return 0; } -- 2.49.0 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".