Please ignore secret bonuses. Secret tests do NOT award bonus. Max hw grade is 30+2 bonus efficiency

Do you need help?

Notice Board

Per partecipare al corso di Fondamenti di programmazione 2023-24 loggatevi e attivatelo nella vostra pagina dei corsi preferiti. A quel punto il corso appare nel menù personale cliccando sul proprio avatar. Per i materiali degli anni precedenti seguite lo stesso metodo.

To join the Programming/Lab 2023-24 course, log-on and select it on the my courses page. It will appear on the personal menu of your avatar. For earlier years use the same method.

Tempi dell'HW5

fc-dev (16450 points)
16 20 34
in HW5 opzionale by (16.5k points)
edited by

È normale il fatto che sui test ci sia una differenza di tempo così elevata?
Timeit:

Pytest:


test coperti: stessa funzione chiamata con gli stessi parametri, se misurata con timeit o datetime ci mette sui 370ms, con pytest sale a 1.55 secondi più o meno, ogni tanto anche 1.70

292 views

2 Answers

AndreaGasparini (18850 points)
7 12 120
by (18.9k points)

Sì credo sia normale avere tempi diversi, %timeit è pensato solamente per misurare il tempo di esecuzione, mentre pytest è comunque un framework più complicato. Considera che comunque i tempi variano anche in base ai parametri che gli dai mi sembra, prova a omettere --profile per esempio, almeno i tempi totali dovrebbero essere più bassi perché vengono effettuate meno operazioni, controlla se influisce anche sulle singole chiamate.

E
Edward (25950 points)
3 4 172
by (26.0k points)
Non vorrei sbagliarmi, ma credo che nel tempo di pytest sia incluso il tempo che ci mette a caricare gli input, ed il tempo che ci mette a fare il confronto del risultato dato con l'expected.
Certo mi sembra un po' strano che ci metta così tanto...
andrea.sterbini (207920 points)
749 1267 2373
by (208k points)
Il timeout è ormai misurato sulla sola esecuzione della vostra funzione (vedi test_01.py)
Il tempo totale di esecuzione invece comprende tutta l'esecuzione di tutti i test compresa dei tempi accessori.
Viene fatta la media su 10 esecuzioni per 3 volte e si tiene il migliore dei 3 valori
a
a.pietroluongo (11250 points)
20 39 131
by (11.3k points)
Grazie prof..