Skip to content

Commit 9d816f4

Browse files
authored
Add performance metrics to the decorator
Initialize performance metrics for the decorator.
1 parent 6aa61f3 commit 9d816f4

1 file changed

Lines changed: 10 additions & 10 deletions

File tree

‎Week04/decorators_ilyas_bugra_filoglu.py‎

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,31 @@
1+
performance.counter = 0
2+
performance.total_time = 0.0
3+
performance.total_mem = 0
4+
15
import time
26
import tracemalloc
37
from functools import wraps
48

59
tracemalloc.start()
610

7-
811
def performance(fn):
912
@wraps(fn)
1013
def wrapper(*args, **kwargs):
11-
1214
performance.counter += 1
13-
15+
1416
tracemalloc.reset_peak()
1517
start_time = time.perf_counter()
1618
result = fn(*args, **kwargs)
17-
18-
end_time = time.perf_counter()
19-
20-
performance.total_time += end_time - start_time
21-
22-
current_memory, peak_memory = tracemalloc.get_traced_memory()
19+
elapsed = time.perf_counter() - start_time
20+
21+
performance.total_time += elapsed
22+
23+
_, peak_memory = tracemalloc.get_traced_memory()
2324
performance.total_mem += peak_memory
2425

2526
return result
2627

2728
return wrapper
28-
2929

3030
performance.counter = 0
3131
performance.total_time = 0.0

0 commit comments

Comments
 (0)