I would like to know which one should i use in the particular scenario:
there are several tasks, usually 400k tasks to process.
most of the tasks took less than 4 sec to process but some of them (300 to 500 tasks) took long time usually between 10 to 30 min.

Currently, we have FixedThreadPool implemented with size 200.
I am wondering if we can do it better with CachedThreadpool?
Also want to know what will be the impact on server as only one server is dedicated for the task.

All task performs just calculations. No I/O operations