The correct order is Catch and then Prefetch. The reason is cache stores the dataset in fast memory and then prefetch prepares the next batch while the model is training on the current batch. In this manner model works on data stored in catch and after that we prepare next batch.