-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathspeed.py
26 lines (19 loc) · 875 Bytes
/
speed.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
import time
import psutil
def measure_disk_speed(duration=10):
start_time = time.time()
end_time = start_time + duration
bytes_read_start = psutil.disk_io_counters().read_bytes
bytes_written_start = psutil.disk_io_counters().write_bytes
while time.time() < end_time:
time.sleep(1)
bytes_read_end = psutil.disk_io_counters().read_bytes
bytes_written_end = psutil.disk_io_counters().write_bytes
read_speed = (bytes_read_end - bytes_read_start) / duration
write_speed = (bytes_written_end - bytes_written_start) / duration
return read_speed, write_speed
if __name__ == "__main__":
duration = 10 # Measurement duration in seconds
read_speed, write_speed = measure_disk_speed(duration)
print(f"Read speed: {read_speed / (1024 * 1024):.2f} MB/s")
print(f"Write speed: {write_speed / (1024 * 1024):.2f} MB/s")