See (Note: 226191.1 - How To Select Number of Workers Based on Number of CPUs When Running ADPATCH).

"What is the correct number of workers you should use when running adpatch or adadmin?" I believe there is no specific answer to this question, as some other document mentions (No. of CPUs + 2) -- Note: 756792.1 - What is the Default Number of AdWorkers on a Server?.

I always use (4 * No. of CPUs), and never had any issues. You may also see (Note: 756063.1 - How to Deal with the adpatch Peforrmance issue : Slow, Hang or Crash ?) to calculate th number of workers.

My personal experience says it depends on your environment. I have seen the sweet spot with number of workers tends to be between 55-60. In multiple upgrade runs I have experienced that anything more than this tends to cause locking issues during the pl/sql compilation phases of the upgrade. Also a really large number of workers does not really help a lot, you will see above a particular number your upgrade performance is not really being held back due to lack of parallelism. More often than not you will see single threaded scripts running long and coming on your critcal path. At this time you will see that all other workers are empty and this is running alone or long. Due to dependencies of course this is how it was meant to happen, and then you will needed to work on tuning this script to make your upgrade run faster.