local start_time, end_time, elapsed_time, empty start_time = os.clock() for i = 1, 1000000 do end end_time = os.clock() -- 记录结束时间 empty = end_time - start_time -- 计算经过的时间 print("空循环 \t用时\t " .. empty .. " seconds") -- 输出运行时间 local a1,a2,a3 = 3,4,5 start_time = os.clock() for i = 1, 1000000 do a2 = a1 + a3 end end_time = os.clock() -- 记录结束时间 elapsed_time = end_time - start_time - empty -- 计算经过的时间 print("标准指令 \t用时\t " .. elapsed_time .. " seconds") -- 输出运行时间 start_time = os.clock() for i = 1, 1000000 do CT() end end_time = os.clock() -- 记录结束时间 elapsed_time = end_time - start_time - empty-- 计算经过的时间 print("空CAPI调用 \t用时\t " .. elapsed_time .. " seconds") -- 输出运行时间 local function func() end start_time = os.clock() for i = 1, 1000000 do func() end end_time = os.clock() -- 记录结束时间 elapsed_time = end_time - start_time - empty-- 计算经过的时间 print("空lua函数调用 \t用时\t " .. elapsed_time .. " seconds") -- 输出运行时间 local t = {} local tmp local meta = { __index = func } setmetatable(t, meta) start_time = os.clock() for i = 1, 1000000 do tmp = t.k end end_time = os.clock() -- 记录结束时间 elapsed_time = end_time - start_time - empty-- 计算经过的时间 print("空元表index调用 \t用时\t " .. elapsed_time .. " seconds") -- 输出运行时间 local t start_time = os.clock() for i = 1, 1000000 do t = {} end end_time = os.clock() -- 记录结束时间 elapsed_time = end_time - start_time - empty-- 计算经过的时间 print("创建空表 \t用时\t " .. elapsed_time .. " seconds") -- 输出运行时间 local t start_time = os.clock() for i = 1, 1000000 do t = {x = 0} end end_time = os.clock() -- 记录结束时间 elapsed_time = end_time - start_time - empty -- 计算经过的时间 print("创建哈希容量1并初始化 \t用时\t " .. elapsed_time .. " seconds") -- 输出运行时间 local t start_time = os.clock() for i = 1, 1000000 do t = {x = 0, y = 0} end end_time = os.clock() -- 记录结束时间 elapsed_time = end_time - start_time - empty-- 计算经过的时间 print("创建哈希容量2并初始化 \t用时\t " .. elapsed_time .. " seconds") -- 输出运行时间 local t start_time = os.clock() for i = 1, 1000000 do t = {x = 0, y = 0, z = 0} end end_time = os.clock() -- 记录结束时间 elapsed_time = end_time - start_time - empty-- 计算经过的时间 print("创建哈希容量3并初始化 \t用时\t " .. elapsed_time .. " seconds") -- 输出运行时间 local t start_time = os.clock() for i = 1, 1000000 do t = C_vector(0,0,0) end end_time = os.clock() -- 记录结束时间 elapsed_time = end_time - start_time - empty-- 计算经过的时间 print("C中创建含有三个int的udata并设置结构为vector \t用时\t " .. elapsed_time .. " seconds") -- 输出运行时间 local function createv3() local t = {x = 0, y = 0, z = 0} return t end local t start_time = os.clock() for i = 1, 1000000 do t = createv3() end end_time = os.clock() -- 记录结束时间 elapsed_time = end_time - start_time - empty-- 计算经过的时间 print("lua函数中创建哈希容量3并初始化 \t用时\t " .. elapsed_time .. " seconds") -- 输出运行时间 local t = {x = 0, y = 0, z = 0} start_time = os.clock() for i = 1, 1000000 do t.x = 1 t.y = 1 t.z = 1 end end_time = os.clock() -- 记录结束时间 elapsed_time = end_time - start_time - empty-- 计算经过的时间 print("修改已有容量的表的值 \t用时\t " .. elapsed_time .. " seconds") -- 输出运行时间 local t = {x = 0, y = 0, z = 0} local tmp start_time = os.clock() for i = 1, 1000000 do tmp = t.x end end_time = os.clock() -- 记录结束时间 elapsed_time = end_time - start_time - empty-- 计算经过的时间 print("读表 \t用时\t " .. elapsed_time .. " seconds") -- 输出运行时间 start_time = os.clock() for i = 1, 1000000 do CCreateUdata1() end end_time = os.clock() -- 记录结束时间 elapsed_time = end_time - start_time - empty-- 计算经过的时间 print("C函数创建size1 udata \t用时\t " .. elapsed_time .. " seconds") -- 输出运行时间 start_time = os.clock() for i = 1, 1000000 do CCreateUdata10() end end_time = os.clock() -- 记录结束时间 elapsed_time = end_time - start_time - empty-- 计算经过的时间 print("C函数创建size10 udata \t用时\t " .. elapsed_time .. " seconds") -- 输出运行时间 start_time = os.clock() for i = 1, 1000000 do CCreateUdata10000() end end_time = os.clock() -- 记录结束时间 elapsed_time = end_time - start_time - empty-- 计算经过的时间 print("C函数创建size10000 udata \t用时\t " .. elapsed_time .. " seconds") -- 输出运行时间 local t start_time = os.clock() for i = 1, 1000000 do t = {x = 0, y = 0, z = 0, w = 0} end end_time = os.clock() -- 记录结束时间 elapsed_time = end_time - start_time - empty-- 计算经过的时间 print("创建哈希容量4并初始化 \t用时\t " .. elapsed_time .. " seconds") -- 输出运行时间 local t start_time = os.clock() for i = 1, 1000000 do t = {x = 0, y = 0, z = 0,a = 0, b = 0, c = 0, d = 0, e = 0,} end end_time = os.clock() -- 记录结束时间 elapsed_time = end_time - start_time - empty-- 计算经过的时间 print("创建哈希容量8并初始化 \t用时\t " .. elapsed_time .. " seconds") -- 输出运行时间 local t start_time = os.clock() for i = 1, 1000000 do t = {x = 0, y = 0, z = 0,a = 0, b = 0, c = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0,} end end_time = os.clock() -- 记录结束时间 elapsed_time = end_time - start_time - empty-- 计算经过的时间 print("创建哈希容量16并初始化 \t用时\t " .. elapsed_time .. " seconds") -- 输出运行时间 local t start_time = os.clock() for i = 1, 1000000 do t = {a = 0, b = 0, c = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0, v = 0, w = 0, x = 0, y = 0, z = 0, aa = 0, bb = 0, cc = 0, dd = 0} end end_time = os.clock() -- 记录结束时间 elapsed_time = end_time - start_time - empty-- 计算经过的时间 print("创建哈希容量32并初始化 \t用时\t " .. elapsed_time .. " seconds") -- 输出运行时间