[Tarantool-patches] [PATCH v1 luajit 18/41] perf: adjust nsieve-bit-fp in LuaJIT-benches

Sergey Bronnikov sergeyb at tarantool.org
Mon Nov 17 16:26:09 MSK 2025


Hi, Sergey,

thanks for the patch! See my comments.

Sergey

On 10/24/25 13:50, Sergey Kaplun wrote:
> This patch adjusts the aforementioned test to use the benchmark
> framework introduced before. The default arguments are adjusted
> according to the <PARAM_x86.txt> file. The arguments to the script still
> can be provided in the command line run.
> ---
>   perf/LuaJIT-benches/nsieve-bit-fp.lua | 35 +++++++++++++++++++++++----
>   1 file changed, 30 insertions(+), 5 deletions(-)
>
> diff --git a/perf/LuaJIT-benches/nsieve-bit-fp.lua b/perf/LuaJIT-benches/nsieve-bit-fp.lua
> index 3971ec1f..d0ab23d2 100644
> --- a/perf/LuaJIT-benches/nsieve-bit-fp.lua
> +++ b/perf/LuaJIT-benches/nsieve-bit-fp.lua
> @@ -1,3 +1,4 @@
> +local bench = require("bench").new(arg)
>   
>   local floor, ceil = math.floor, math.ceil
>   
> @@ -27,11 +28,35 @@ local function nsieve(p, m)
>     return count
>   end
>   
> -local N = tonumber(arg and arg[1]) or 1
> +local DEFAULT_N = 12
Why 12 instead of 1?
> +local N = tonumber(arg and arg[1]) or DEFAULT_N
>   if N < 2 then N = 2 end
>   local primes = {}
>   
> -for i=0,2 do
> -  local m = (2^(N-i))*10000
> -  io.write(string.format("Primes up to %8d %8d\n", m, nsieve(primes, m)))
> -end
> +local benchmark
> +benchmark = {
> +  name = "nsieve_bit_fp",
> +  payload = function()
> +    local res = {}
> +    local items = 0
> +    for i=0,2 do
add more whitespaces
> +      local m = (2^(N-i))*10000
add more whitespaces
> +      items = items + m
> +      res[i] = nsieve(primes, m)
> +    end
> +    benchmark.items = items
> +
> +    return res
> +  end,
> +  checker = function(res)
> +    if N == DEFAULT_N then
> +      assert(res[0] == 2488465)
> +      assert(res[1] == 1299069)
> +      assert(res[2] == 679461)
> +    end
> +    return true
> +  end,
> +}
> +
> +bench:add(benchmark)
> +bench:run_and_report()
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.tarantool.org/pipermail/tarantool-patches/attachments/20251117/640a2a08/attachment.htm>


More information about the Tarantool-patches mailing list