Test DataLoader never uses multiple workers
### Feature request / Bug Fix

I realized that in the `get_test_dataloader` method of the `Trainer` class, for datasets that are not instances of `torch.utils.data.IterableDataset`, the `num_workers` argument is not given to the `DataLoader` init call.


https://github.com/huggingface/transformers/blob/edb672ac5edcd92fadb15d3172a115eb5fe6f663/src/transformers/trainer.py#L936-L943

Whereas it is the case juste above if `test_dataset` is an instance of `torch.utils.data.IterableDataset`:

https://github.com/huggingface/transformers/blob/edb672ac5edcd92fadb15d3172a115eb5fe6f663/src/transformers/trainer.py#L925-L931

Moreover, the DataLoader outputted in `get_eval_dataloader` is initialized with the num_workers argument

https://github.com/huggingface/transformers/blob/edb672ac5edcd92fadb15d3172a115eb5fe6f663/src/transformers/trainer.py#L888-L896

I know this is not really a feature request, but I do not think it is not a bug either, sorry if I have posted at the wrong place. I read that when talking about the trainer class, @sgugger was generally the one to ping.

### Motivation

Adding a line with `num_workers=self.args.dataloader_num_workers,` in the `DataLoader` init call of the `get_test_dataloader` method could fasten the prediction steps by using multiple workers to load the data.

https://github.com/huggingface/transformers/blob/edb672ac5edcd92fadb15d3172a115eb5fe6f663/src/transformers/trainer.py#L936-L943

### Your contribution

I have submitted #17751 