PGA_AGGREGATE_TARGET = (TOTAL_MEM * 80%) * 50%
The Total Memory here refers to the total memory available in the system. Please note this is outside SGA
Oracle attempts to keep the amount of private memory below the target you specified by adapting the size of the work areas.
When you increase the value of this parameter, you indirectly increase the memory allotted to work areas.
Consequently, more memory intensive operations are able to run fully in memory and less will work their way over to disk.
In parallel environment
For environments that run a lot of parallel operations (such as a DataWarehouse), you should set pga_aggregate_target as large as possible. A good rule of thumb is to have a minimum of 100MB X parallel_max_servers
PGA_AGGREGATE_TARGET = 100MB X parallel_max_servers.