strojove porovnani dvou algoritmu rubrika: Programování: Jiné
Rekneme, ze mam dva Javascript scripty, ktere dosahuji stejneho vystupu ruznou implementaci.
Rekneme, ze treba resi vypocet Fibonacciho posloupnosti.
Jakym zpusobem by se dala automatizovane ohodnotit narocnost tech algoritmu? Zajimala by me pametova narocnost, casova, CPU usage, trida slozitosti algoritmu (https://cs.wikipedia.org/wiki/Asymptotick%C3%A1_slo%C5%BEitost).
Zajimaji me jakekoliv napady na reseni kterekoliv zminene metriky, pripadne navrhy jinych metrik, jak ty algoritmy kvalitativne porovnat.
Ty metriky nemusi byt 100% spolehlive. Jde v podstate o ohodnocovaci funkci pro selekci lepsiho reseni, pri generovani tech reseni.
Zatim me napadly jen nejake hodne lame veci typu vzit nejaky javascript syntax tokenizer a za kazdy prikaz hodit increment poctu kroku algoritmu. Dal neco jako spustit to v nejakem debug enginu a vyuzit API k nemu (to by bylo ale asi desne pomale).
Co se tyka mereni vyuziti pameti, casu a CPU, zatim uvazuji, ze to pobezi na nejakem beznem OS, takze nemuzu vyloucit konzumaci syst. prostredku nesouvisejicimi procesy. Jak se resi nejaka izolace mereni v tom?
Jedna se o zcela hypotetickou, dilcii ulohu. Zatim :).
Dik.
No, javascript je na to docela blbej jazyk, ale postupoval bych takto:
- Vytvořit si sandbox
- Připravit si testovací data
- Vygenerovat test
- Spustit a sledovat zajímavé hodnoty: vytížení procesoru, čas, paměť,...
- Vygenerovat koláčový graf
Troufl bych si říct, že nejsložitější je spíše získat dostatečně přesnou signaturu. Aby si do toho nemusel ládovat příliš mnoho dat. Na tohle jsou staticky typovaný jazyky lepší. Taky se tomu dá pomoc, že si zkusíš vlézt do implementace, a koukneš se, jaké funkce to volá, a jakého typu jsou ony. A od toho to zpětně odvodíš.
Teda, vlastně ani nevím, jak k těm funkcím chceš přistupovat. Pokud máš funkci pro výpočet Fibonacciho posloupnosti, tak tam je to daný, a celý můj přechozí odstavec můžeš vypustit.
Pro zobrazení všech 4 odpovědí se prosím přihlaste:
Nebo se přihlaste jménem a heslem:
Komentáře