CPU_COUNT - Oracle Server
This is a discussion on CPU_COUNT - Oracle Server ; Does anyone know what CPU_COUNT means on a mulit-core machine? Say you have a four core cpu. Does setting CPU_COUNT to 1 use all 4 cores on 1 CPU or 1 core on a CPU?...
![]() |
| | LinkBack | Thread Tools | Display Modes |
|
#1
| |||
| |||
| you have a four core cpu. Does setting CPU_COUNT to 1 use all 4 cores on 1 CPU or 1 core on a CPU? |
|
#2
| |||
| |||
|
On Sep 4, 2:09*pm, Sue snip > Does anyone know what CPU_COUNT means on a mulit-core machine? *Say > you have a four core cpu. *Does setting CPU_COUNT to 1 use all 4 cores > on 1 CPU or 1 core on a CPU? Each core looks like to oracle a cpu ... this is not a throttling or hard/soft partitioning mechanism. Never heard of anyone trying to set it directly ... oracle picks it up from the operating system. If you have a system that does some kind of hard partition of cpu resources then oracle only see's what is available in that partition ( so sets CPU_COUNT correctly ). There's a bunch of info in metalink on this ... http://download.oracle.com/docs/cd/B...tparams038.htm |
|
#3
| |||
| |||
|
On Fri, 4 Sep 2009 11:09:15 -0700 (PDT), Sue wrote: >Does anyone know what CPU_COUNT means on a mulit-core machine? Say >you have a four core cpu. Does setting CPU_COUNT to 1 use all 4 cores >on 1 CPU or 1 core on a CPU? Why do you plan to *set* CPU_COUNT? One DOESN'T set CPU_COUNT. And yes: if you have a four core cpu, Oracle sets cpu_count to 4, so if *you* set to 1, Oracle will use only *one* core. -- -- Sybrand Bakker Senior Oracle DBA |
|
#4
| |||
| |||
|
On Sep 4, 2:09*pm, Sue > Does anyone know what CPU_COUNT means on a mulit-core machine? *Say > you have a four core cpu. *Does setting CPU_COUNT to 1 use all 4 cores > on 1 CPU or 1 core on a CPU? Check v$license for some additional information. As you didn't post any version info, I won't post any more details. -bdbafh |
|
#5
| |||
| |||
|
We're trying to determine how many CPUs we need to license. We have way more machine than we can afford to license so we plan on using Solaris containers to partition it. I realize that generally you don't set this and we won't either once we figure out what we need. I set CPU_COUNT to 1 thinking it would use 1 cpu/4cores but I can't tell what it's doing. It appears to be using less than 4 cores. We initially brought the machine up with no CPU restrictions, then set to 1 and are really feeling the change. SQL> select * from dba_cpu_usage_statistics; DBID VERSION TIMESTAMP CPU_COUNT CPU_CORE_COUNT CPU_SOCKET_COUNT ---------- ----------------- ------------------- ---------- -------------- ---------------- 1055427977 11.1.0.7.0 08/22/2009 22:09:14 32 16 4 1055427977 11.1.0.7.0 08/31/2009 22:41:41 1 16 4 This is actually a 4 CPU machine with 4 cores per CPU. Thanks for any help. I've been searching metalink but not finding what I'm looking for. Sue |
|
#6
| |||
| |||
|
On Fri, 04 Sep 2009 11:09:15 -0700, Sue wrote: > Does anyone know what CPU_COUNT means on a mulit-core machine? Say you > have a four core cpu. Does setting CPU_COUNT to 1 use all 4 cores on 1 > CPU or 1 core on a CPU? And why would you want to set that parameter? Your RDBMS has the 6th sense and will sense the platform it is running on. If the hyperthreading is enabled, Oracle will sense each thread as a separate CPU. I am not sure about the super-duper Nehalem CPU which has a special kind of hyperthreading because I don't have the machine available. -- http://mgogala.freehostia.com |
|
#7
| |||
| |||
|
On Sep 4, 3:04*pm, Sue snip > We're trying to determine how many CPUs we need to license. *We have > way more machine than we can afford to license so we plan on using > Solaris containers to partition it. *I realize that generally you > don't set this and we won't either once we figure out what we need. *I > set CPU_COUNT to 1 thinking it would use 1 cpu/4cores but I can't tell > what it's doing. *It appears to be using less than 4 cores. *We > initially brought the machine up with no CPU restrictions, then set to > 1 and are really feeling the change. > > SQL> select * from dba_cpu_usage_statistics; > * * * DBID VERSION * * * * * TIMESTAMP * * * * * *CPU_COUNT > CPU_CORE_COUNT CPU_SOCKET_COUNT > ---------- ----------------- ------------------- ---------- > -------------- ---------------- > 1055427977 11.1.0.7.0 * * * *08/22/2009 22:09:14 > 32 * * * * * * 16 * * * * * * * *4 > 1055427977 11.1.0.7.0 * * * *08/31/2009 22:41:41 > 1 * * * * * * 16 * * * * * * * *4 > > This is actually a *4 CPU machine with 4 cores per CPU. *Thanks for > any help. *I've been searching metalink but not finding what I'm > looking for. > > Sue Like I said ( already ) ... 1 core looks like 1 cpu to oracle ... 4 cores looks like 4 cpu's ... |
|
#8
| |||
| |||
|
On Fri, 4 Sep 2009 12:04:51 -0700 (PDT), Sue wrote: >SQL> select * from dba_cpu_usage_statistics; > DBID VERSION TIMESTAMP CPU_COUNT >CPU_CORE_COUNT CPU_SOCKET_COUNT >---------- ----------------- ------------------- ---------- >-------------- ---------------- >1055427977 11.1.0.7.0 08/22/2009 22:09:14 >32 16 4 >1055427977 11.1.0.7.0 08/31/2009 22:41:41 >1 16 4 > >This is actually a 4 CPU machine with 4 cores per CPU. Thanks for >any help. I've been searching metalink but not finding what I'm >looking for. I don't think so. The math is quite simple. You have 4 cpu's with 4 cores, so CPU_COUNT will be 16. (As you see above). If you set CPU_COUNT to 1, you will use 1 core of 1 cpu. Not that it matters as you do not pay for the number of cores that you use, you pay for the number of cores in the server. -- -- Sybrand Bakker Senior Oracle DBA |
|
#9
| |||
| |||
|
On Sep 4, 2:09*pm, Sue > Does anyone know what CPU_COUNT means on a mulit-core machine? *Say > you have a four core cpu. *Does setting CPU_COUNT to 1 use all 4 cores > on 1 CPU or 1 core on a CPU? Changing CPU_COUNT to 1 is not the right solution, as others have mentioned. It will change some of Oracle automatic configuration settings, such as the number of default DB writers, but it will not confine Oracle to using only a single CPU (or CPU core) as it is the operating system's responsibility to schedule threads and processes on (or across) all CPUs. That said, you may want to check the licensing information for your edition of Oracle and the particular CPUs in the server. For instance, Intel and AMD processors are currently licensed at 0.5 CPUs per core in multi-core CPUs with the Enterprise Edition (thus 2 CPUs license for a quad core Intel), and for Standard Edition only the CPU socket is counted (thus 1 CPU license for a quad core). Other CPU platforms have a 0.25 conversion factor for the Enterprise Edition (and others might have a 0.75 conversion factor). A quad core Nehalem (Xeon 5500 series or Core i7) will report a total of 8 CPUs in Oracle, but I believe that this still counts as a 4 core CPU. Charles Hooper IT Manager/Oracle DBA K&M Machine-Fabricating, Inc. |
|
#10
| |||
| |||
|
On Fri, 04 Sep 2009 15:25:14 -0700, Charles Hooper wrote: > A quad core Nehalem (Xeon 5500 series or Core i7) will report a total of > 8 CPUs in Oracle, but I believe that this still counts as a 4 core CPU. Thanks. I was wondering about it. -- http://mgogala.freehostia.com |
![]() |
« Previous Thread
|
Next Thread »
| Thread Tools | |
| Display Modes | |
| |
All times are GMT -4. The time now is 11:51 AM.




Linear Mode