When object types/collections size is set to a large value, then pga needs more memory. The amount of sessions pga memory is fixed based on the values of pga_aggregate_target and processes during the instance startup. Reduce the processes value and rerun the pl/sql proc with batch size of 5000. And see the perf.

In the next run, remove pga_aggregate_target, and test the pl/sql proc.

Tamil