След целодневни опити да отгатна защо графиката (факториел към време) рязко се променя(почти прекъсва), най-сетне се усетих, че на ubuntu-то си имам cpufreq скалинг, който влияе на резултатие. Ето графиките при различните режими:
OnDemand:
Интересна графика, която, като се има предвид, че езика, на който пиша в момента е erlang, за мен говореше, че тази безграничност на променливите му на заден план съвсем не е с линейна графика, а по-скоро, както на публикуваната горе графика, е стъпаловидна (излишно е да казвам колко се развълнувах че - "Аха! Открих нещо... сега многонишковите ми програми ще
са суперефективни"). Да обаче се оказва че след като пуснах cpufreq-а с governor performance, нещата лъснаха. Ето графика на същата функция при различният governor.
Performance:
Интересно е да се отбележи, че въпреки загубеното време и напразните надежди, разбрах че сменянето на честотата става доста по-късно от това, което се показва по отговорните файлове ( /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq и други в същата директория).
Целият тест продължава повече от 40 секунди; промените в честотата се отразяват по файловете през първата секунда; от графиката е видно че стават ефективни доста по-късно.