( tbs | 2018. 03. 31., szo – 10:40 )

Gyorsba csekkeltem alternativ modon, szvsz ez itt mar a kernelen mulik.
@snail:~/tbs/lua/proc_stat_speed_test$ time ./luajit test.lua
4108285 0

real 0m42.784s
user 0m13.936s
sys 0m28.348s

A luajit sajat patch-el optimalizalt, lfs szintugy, a szuboptimalis lua kod meg ez volt:
@snail:~/tbs/lua/proc_stat_speed_test$ cat test.lua

require 'lfs'

sDir = '/proc'

ctr, err = 0, 0

for i = 0, 10000, 1 do

for sFileName in lfs.dir( sDir ) do
if string.match( sFileName, '^[0-9]*$' ) then
local fStatFile = io.open( sDir ..'/'.. sFileName ..'/stat', 'r' )
if fStatFile then
local sLine = fStatFile:read()
if sLine then
ctr = ctr +1
else
err = err +1
end
fStatFile:close()
end
end
end

end

print( ctr, err )

szerk.: nem baratsagos a tabulalas, szori.