[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: Re: "String builder"-style optimization
- From: "szbnwer@..." <szbnwer@...>
- Date: Mon, 3 Jul 2017 22:30:22 +0200
thx Charles Heywood :)
-- benchMark(1000000, true, {func1, {params...}}, {func2, {params...}}, ...)
benchMark=function(turns, mem, ...)
local res={}
if mem then
collectgarbage()
collectgarbage('stop') end
for i=1, select('#', ...) do
local current=select(i, ...)
local size
if mem then
collectgarbage()
size=collectgarbage('count') end
local time=os.time()
for _=1, turns do
current[1](current[2] and unpack(current[2])) end
res[i]={os.difftime(os.time(), time), collectgarbage('count')-size} end
if mem then collectgarbage('restart') end
return res end