Tuning PGA 
1)Case 1
1@@@@
@@@the total pga size allow to request.
SQL> show parameter pga
NAME                                 TYPE        VALUE
------------------------------------ ----------- ---------
pga_aggregate_target                 big integer 145M
SQL> show parameter workarea
NAME                                 TYPE        VALUE
------------------------------------ ----------- ---------
workarea_size_policy                 string      AUTO
 
@@@only if workarea_size_policy=manual,sort_area_size was validate.
SQL> show parameter sort
NAME                                 TYPE        VALUE
------------------------------------ ----------- ---------
nls_sort                             string
sort_area_retained_size              integer     0
sort_area_size                       integer     65536
 
2@@@@example:modify pga for impoving performance temproary.
@@@create a big table.
SQL> conn /as sysdba;
SQL> create table hr.big as select * from dba_source;
SQL> insert into hr.big select * from hr.big;
SQL> insert into hr.big select * from hr.big; 
SQL> select count(*) from hr.big;
  COUNT(*)
----------
   1169712
 
@@@original data,workarea_size_policy=auto,for comparison
SQL> set timing on
SQL> create index ibig on hr.big(text) parallel 10;  
Index created.
Elapsed: 00:02:37.46
 
@@@1.2M really slow down
SQL> alter session set workarea_size_policy='manual';
Session altered.
SQL> show parameter sort_area
NAME                                 TYPE        VALUE
------------------------------------ ----------- ----------
sort_area_size                       integer     65536(64k default)
SQL> alter session set sort_area_size=1310721;(more 1M)
Session altered.
SQL> create index ibig on hr.big(text) parallel 10; 
Index created.
Elapsed: 00:02:58.90
 
@@@500M really different.
SQL> show parameter sort_area 
NAME                                 TYPE        VALUE
------------------------------------ ----------- -----------
sort_area_retained_size              integer     0
sort_area_size                       integer     524288000(500M)
SQL> alter system flush buffer_cache;
SQL> create index ibig on hr.big(text) parallel 10; 
Index created.
Elapsed: 00:00:56.74