# _PGA_MAX_SIZE
限制单个进程下所有工作区的大小
10gR2

| pga_aggregate_target | _PGA_MAX_SIZE  |
| --- | --- |
| <1GB | 200MB |
| 1~4GB | 20%*pga_aggregate_target |
| >=4GB | 480MB |

11gR2

| pga_aggregate_target | _PGA_MAX_SIZE  |
| --- | --- |
| >=1GB | 10%*pga_aggregate_target |
| <1GB | max(20%*pga_aggregate_target,10m) |


# _SMM_MAX_SIZE
限制单个进程下单个工作区的最大大小

* For values of PAT below 512 MB, _SMM_MAX_SIZE is 20% of PGA_AGGREGATE_TARGET.

* For PAT values of 512 MB and beyond, _SMM_MAX_SIZE is always 50% of _PGA_MAX_SIZE.
* In Oracle9i, _SMM_MAX_SIZE had a limit of 100 MB. Following is an example of a session

that had two simultaneously active work areas when the given parameters were in effect:
MIN(5%*PGA_AGGREGATE_TARGET,100M)
5%*PGA_AGGREGATE即 _smm_max_size

- P_A_T <=500MB  _smm_max_size =20%*P_A_T
- P_A_T <=1000MB  _smm_max_size =100MB
- P_A_T <=2560MB  _smm_max_size =10%*P_A_T
- P_A_T >=2560MB  _smm_max_size =262060KB

# _SMM_PX_MAX_SIZE
限制并行任务的所有工作区总大小
The setting of _SMM_PX_MAX_SIZE is always 50% of PGA_AGGREGATE_TARGET.

There is no limit on_SMM_PX_MAX_SIZE(at least not within the tested range of PGA_AGGREGATE_TARGET of 10 MB to 32 GB).

In Oracle9i, _SMM_PX_MAX_SIZE was 30% of PGA_AGGREGATE_TARGET.
30%*PGA_AGGREGATE_TARGET/DOP

- DOP<=5  _smm_max_size 生效
- DOP>5   _smm_px_max_size 生效