Перейти к содержанию
  • записи
    104
  • комментариев
    125
  • просмотров
    15 627

[Cheat Engine Lua] Тестирование производительности2


MasterGH

746 просмотров

Уже была запись про тестирование производительности.

В этом примере тестируем разное обращение к функции со средним арифметическим значением

 

Спойлер

ClassA = {}
ClassA.__index = ClassA
function ClassA:New()
  local obj = {}
  function obj:IsFloat()
    return
  end
  setmetatable(obj, obj)
  return obj
end
local someClass = ClassA:New()

function IsFloat()
  return
end

function NoOptimizeCode()
  someClass:IsFloat()
end

function OptimizeCode()
  IsFloat()
end

local max = 20
local count = 0
local maxCountRepeat = 800000

for j=1, max do
  local countRepeat =  maxCountRepeat-- add more cycle
  local x1 = 0
  local x2 = 0
  x1 = getTickCount()
  for i = 1, countRepeat do NoOptimizeCode() end
  x2 = getTickCount()
  for i = 1, countRepeat do OptimizeCode() end
  local v = (x2 - x1)/(getTickCount() - x2)
  count = count + v
  --print(string.format("%.2f", v))
end
 print('avg = '.. count/max)

 

 

Результаты при 4-х запусках

avg = 0.93333998758048 
avg = 1.0322099291325 
avg = 0.92657961891689 
avg = 1.1883763135947 

 

Вывод. Разница не существенная.

0 Комментариев


Рекомендуемые комментарии

Комментариев нет

Пожалуйста, войдите, чтобы комментировать

Вы сможете оставить комментарий после входа в



Войти
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, Вы автоматически соглашаетесь соблюдать наши Условия использования.