Grafice de performanță¶
Graficele de performanță sunt indicatori ale calității implementării structurilor de date din Temelia- O funcție nu trebuie doar să fie corectă, ci trebuie să fie și rapidă
- Temelia folosește pointeri la funcții și aceștia îngreunează execuția algoritmului
- Are funcția complexitatea O(n log(n))?
- STL folosește pointeri la funcții inline
- STL a fost optimizat, Temelia nu
Introducere¶
Graficele de performanță din Temelia sunt generate de execuții în consolă a testelor de performanță- Fișierele de ieșire au format de tip XML
- Dintr-un fișier de tip XML, cu informații despre timpul de execuție al unei funcții pentru o anumită intrare, se generează un fișier Octave
- Fișierul Octave este rulat și se generează imaginea pe baza lui
Exemplu¶
Inserția într-un arbore B cu coeficientul 16- Fișierul Octave generat
size=[500.0 1000.0 2000.0 5000.0 10000.0 20000.0 30000.0 40000.0 70000.0 100000.0 200000.0 400000.0 600000.0 800000.0 1000000.0 ]; time=[0.22 0.0 0.0 0.0 0.01 0.02 0.03 0.03 0.06 0.1 0.23 0.65 1.24 1.76 2.55 ]; plot(size, time); print("temelia/b_tree/insert_16.png"); - Imagine rezultată
Temelia¶
Grafice de performanță pentru structurile de date din Temelia
STL¶
Grafice de performanță pentru structurile de date din STL
Operația de scoatere din heap pe coada de priorități din STL