From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from [87.239.111.99] (localhost [127.0.0.1]) by dev.tarantool.org (Postfix) with ESMTP id 46C4016BF2E8; Fri, 26 Dec 2025 12:30:55 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 dev.tarantool.org 46C4016BF2E8 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=tarantool.org; s=dev; t=1766741455; bh=A6fPgBDEbSeIf747fNFCmVi3qYp/2p9cbGcwqM0frMY=; h=To:Date:In-Reply-To:References:Subject:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc: From; b=ZArKrGe+hC7Wj0Rvc1AAXhQtBFErM6geIA1MxG16q1nhHlJiWqU/UjUMM7Bnvv7v5 ymLAeMXqEKYyNZ93G15w0+jTuUpt396zji1Q4sM1n1hX3eUmFXXpGgEir1SmQIWqzz xUtj5X0WccL9Mr1R4aME3UIFQcAwVYxPwbFVBp1M= Received: from send81.i.mail.ru (send81.i.mail.ru [89.221.237.176]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by dev.tarantool.org (Postfix) with ESMTPS id C445B16C6598 for ; Fri, 26 Dec 2025 12:19:13 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 dev.tarantool.org C445B16C6598 Received: by exim-smtp-7b4fb89df9-lft7n with esmtpa (envelope-from ) id 1vZ3ya-000000008Cp-3eJ0; Fri, 26 Dec 2025 12:19:13 +0300 To: Sergey Bronnikov Date: Fri, 26 Dec 2025 12:17:56 +0300 Message-ID: <71046e83d536ea203a7bfaa6e6673d0239c1d694.1766738771.git.skaplun@tarantool.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Mailru-Src: smtp X-4EC0790: 10 X-7564579A: B8F34718100C35BD X-77F55803: 4F1203BC0FB41BD979975AF0D777FEBD136B1DE29D0A141801E96C80D96E6DBF182A05F5380850400F9A8340743DEF633DE06ABAFEAF67050629A562DF133960B4FA2C6BBBE99EF900FA531A9826DDA8 X-7FA49CB5: FF5795518A3D127A4AD6D5ED66289B5278DA827A17800CE75DF2B1F23425CAE5EA1F7E6F0F101C67BD4B6F7A4D31EC0BCC500DACC3FED6E28638F802B75D45FF8AA50765F7900637F88016AB904663428638F802B75D45FF914D58D5BE9E6BC1A93B80C6DEB9DEE97C6FB206A91F05B26471B0FFFFF0EF992E070BE324C7D3C49ADB5224CF42AF3BF6B57BC7E64490618DEB871D839B73339E8FC8737B5C2249A50BD5087FBFCDAACC7F00164DA146DAFE8445B8C89999729449624AB7ADAF37F6B57BC7E64490611E7FA7ABCAF51C92176DF2183F8FC7C0DCF4F0DC832992758941B15DA834481F9449624AB7ADAF372E808ACE2090B5E14AD6D5ED66289B5259CC434672EE63711DD303D21008E298D5E8D9A59859A8B6B372FE9A2E580EFC725E5C173C3A84C3CE9959E2676FD87735872C767BF85DA2F004C90652538430E4A6367B16DE6309 X-C1DE0DAB: 0D63561A33F958A51E89DD16FAE433515002B1117B3ED6966B617D2B1EDB2BBE4869453249F34FA4823CB91A9FED034534781492E4B8EEAD6804EF05EF4ADF2AF36E2E0160E5C55395B8A2A0B6518DF68C46860778A80D548E8926FB43031F38 X-C8649E89: 1C3962B70DF3F0AD73CAD6646DEDE191716CD42B3DD1D34CAB70F9BE574AE9C625B6776AC983F447FC0B9F89525902EE6F57B2FD27647F25E66C117BDB76D659E74D0CF4105E0CFC8CA184EFDA64F021C7212D164E8DAD88E546BC4AAFAA9D2F1F6D273BB8C5A54DB8341EE9D5BE9A0A6EBFCC4CCE27C56505D8439B09F6DFF06E3030458924D5576536EB022892E5344C41F94D744909CECFA6C6B0C050A61A8CAF69B82BA93681CD72808BE417F3B9E0E7457915DAA85F X-D57D3AED: 3ZO7eAau8CL7WIMRKs4sN3D3tLDjz0dLbV79QFUyzQ2Ujvy7cMT6pYYqY16iZVKkSc3dCLJ7zSJH7+u4VD18S7Vl4ZUrpaVfd2+vE6kuoey4m4VkSEu53w8ahmwBjZKM/YPHZyZHvz5uv+WouB9+ObcCpyrx6l7KImUglyhkEat/+ysWwi0gdhEs0JGjl6ggRWTy1haxBpVdbIX1nthFXMZebaIdHP2ghjoIc/363UZI6Kf1ptIMVdtTL5f5BIXb1PYl6nw4kwk= X-DA7885C5: 6718F96824C4BA51F255D290C0D534F910564532B00BED8784D6ADD0ED9593C2333555FB2C5A3BF95B1A4C17EAA7BC4BEF2421ABFA55128DAF83EF9164C44C7E X-Mailru-Sender: 689FA8AB762F7393DDD5FD59B456EAD279D7531A0915B0938700636FE984EBB8EC0345D3119F903EE49D44BB4BD9522A059A1ED8796F048DB274557F927329BE89D5A3BC2B10C37545BD1C3CC395C826B4A721A3011E896F X-Mras: Ok Subject: [Tarantool-patches] [PATCH v2 luajit 25/41] perf: adjust recursive-fib in LuaJIT-benches X-BeenThere: tarantool-patches@dev.tarantool.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Tarantool development patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , From: Sergey Kaplun via Tarantool-patches Reply-To: Sergey Kaplun Cc: tarantool-patches@dev.tarantool.org Errors-To: tarantool-patches-bounces@dev.tarantool.org Sender: "Tarantool-patches" This patch adjusts the aforementioned test to use the benchmark framework introduced before. The default arguments are adjusted according to the file. The arguments to the script still can be provided in the command line run. --- perf/LuaJIT-benches/recursive-fib.lua | 33 +++++++++++++++++++++++++-- 1 file changed, 31 insertions(+), 2 deletions(-) diff --git a/perf/LuaJIT-benches/recursive-fib.lua b/perf/LuaJIT-benches/recursive-fib.lua index ef9950de..8e96934a 100644 --- a/perf/LuaJIT-benches/recursive-fib.lua +++ b/perf/LuaJIT-benches/recursive-fib.lua @@ -1,7 +1,36 @@ +-- The benchmark to check the performance of recursive calls. +-- Calculates the Fibonacci values recursively. +-- For the details see: +-- http://mathworld.wolfram.com/FibonacciNumber.html + +local bench = require("bench").new(arg) + local function fib(n) if n < 2 then return 1 end return fib(n-2) + fib(n-1) end -local n = tonumber(arg[1]) or 10 -io.write(string.format("Fib(%d): %d\n", n, fib(n))) +local n = tonumber(arg[1]) or 40 + +local benchmark +benchmark = { + name = "recursive_fib", + checker = function(res) + local km1, k = 1, 1 + for i = 2, n do + local tmp = k + km1 + km1 = k + k = tmp + end + return k == res + end, + payload = function() + local res = fib(n) + -- Number of calls. + benchmark.items = res * 2 - 1 + return res + end, +} + +bench:add(benchmark) +bench:run_and_report() -- 2.52.0