Recently we had to delete few records for one of our entities. It was a user owned entity with 1 custom 1 – n relationship with contact having around 190 fields.
It was Dynamics 365 CE Online on version 9.1 and had ExecuteMultiple max limit set to 20. (by raising support ticket with Microsoft)
Batch Size and the Thread settings were used
Message – Delete
Sample Batch Size – 10000
The result: –
It seems that total thread between 10 – 15 with batch size 50, 100, 250, 500 gives similar results. Batch size of 50 with 15 threads could result into time out issue
So the optimum would be around 100 batch size with thread between 10 to 15.
Check out the below post as well while using UPSERT
Hope it helps..