Hello, thank you so much for your recommendation, it speed it up x5. Very useful. Now I am having a problem that i do not understand.
I have the following script, where i access 10 random tiles of my raster. train_data is a vector [4822,2] of pixels position in the raster.
for i in range(10):
idx = np.random.randint(4822)
x_idx = train_data[idx][1]
y_idx = train_data[idx][0]
window = Window(y_idx, x_idx, 224, 224)
start_time = time.time()
with rasterio.open('./sentinel2_tiled.tif') as src:
sentinel2 = src.read(window=window)
end_time = (time.time() - start_time)
I do not understand why the times of loading a window are so different, as can be seen in the following image. Do you have some explanation?

Thank you once more!