Re: parallel hint

  • From: girlgeek <girlgeek@xxxxxxxx>
  • To: oracle-l <oracle-l@xxxxxxxxxxxxx>
  • Date: Thu, 04 Mar 2010 08:13:36 -0800

Ric,
Thank you for the explanation. I had always wondered about something that I saw at a prior shop. Someone had used a parallel hint without degree and managed to get 57 parallel processes running, (mostly fighting) on a 12 cpu box. If the table was defined as parallel without a degree, the documentation says that Oracle defines that the degree of parallelism to use is the number of cpu times the value in the init parameter parallel_threads_per_cpu. I didn't check at the time, but I assume that they must have set the init parameter parallel_threads_per_cpu to 4. There are a few extra processes not explained by that logic, but I no longer have access to that particular box to research further.

Thanks again,
Claudia





Ric Van Dyke wrote:
It uses the default degree of parallelism from the table.  So if it's
not set at the table, you'll get a serial plan.
Ric Van Dyke
Hotsos Enterprises, Ltd.
-----Original Message-----
From: oracle-l-bounce@xxxxxxxxxxxxx
[mailto:oracle-l-bounce@xxxxxxxxxxxxx] On Behalf Of girlgeek
Sent: Thursday, March 04, 2010 2:48 AM
Cc: oracle-l
Subject: parallel hint

I see from the documentation that it is perfectly valid to write a parallel hint with neither degree nor default.
For example:
select /* + parallel */ ename from emp;
(please pretend that emp is not a tiny table).

What will oracle use to calculate the degree of parallelism used when the hint is constructed as above?
I have been unable to find the answer in the documentation.

Thank you,
Claudia
--
//www.freelists.org/webpage/oracle-l





--
//www.freelists.org/webpage/oracle-l


Other related posts: