Home » RDBMS Server » Performance Tuning » To limit Cpu consumption (Oracle 10.2.0.4, Solaris 9)
icon1.gif  To limit Cpu consumption [message #420389] Fri, 28 August 2009 16:27 Go to next message
dasuwal@gmail.com
Messages: 20
Registered: June 2009
Junior Member
Hi Forum

I have a application which run with 12 threads (can) and put a lot of load on database (Oracle 10.2.0.4, Solaris 9). The cpu consumtions hit 95% during peak times.

I can limit the CPU time by CPU_per_session, but
Is there anyhow I can limit the cpu utilization of oracle sessions to 30%.


Thanks in advance.
Re: To limit Cpu consumption [message #420409 is a reply to message #420389] Sat, 29 August 2009 00:44 Go to previous messageGo to next message
Michel Cadot
Messages: 68653
Registered: March 2007
Location: Nanterre, France, http://...
Senior Member
Account Moderator
You can use resource manager but isn't the purpose of a CPU to run at 100%?
Note that resource manager comes into play ONLY when CPU reaches 100%.

Regards
Michel
icon1.gif  Re: To limit Cpu consumption [message #420447 is a reply to message #420389] Sat, 29 August 2009 20:28 Go to previous messageGo to next message
dasuwal@gmail.com
Messages: 20
Registered: June 2009
Junior Member
Hi Michel

but isn't the purpose of a CPU to run at 100%?
I need to limit the CPU consumption of certain application to 30 %, otherwise it choke the cpu with consumption of resources.

resource manager comes into play ONLY when CPU reaches 100%.
If Resource manager comes into play when CPU reaches 100 %, then what is fun of having resource manager. Doesnt that nullify the concept of managing resources.

Thanks for your advice.
Re: To limit Cpu consumption [message #420458 is a reply to message #420447] Sat, 29 August 2009 23:58 Go to previous messageGo to next message
Michel Cadot
Messages: 68653
Registered: March 2007
Location: Nanterre, France, http://...
Senior Member
Account Moderator
Quote:
what is fun of having resource manager.

Limiting the CPU resource for each consumer.
If CPU does not reach 100% there is no need to limit someone.
If CPU reaches 100% then using resource manager you can limit some consumer (to 30% as you said) to prevent one process to keep the whole (or more than its share) CPU for itself.

Please read the link I posted.

Regards
Michel
Re: To limit Cpu consumption [message #421247 is a reply to message #420447] Sun, 06 September 2009 21:32 Go to previous message
trantuananh24hg
Messages: 744
Registered: January 2007
Location: Ha Noi, Viet Nam
Senior Member
dasuwal@gmail.com wrote on Sun, 30 August 2009 08:28


I need to limit the CPU consumption of certain application to 30 %, otherwise it choke the cpu with consumption of resources.

If Resource manager comes into play when CPU reaches 100 %, then what is fun of having resource manager. Doesnt that nullify the concept of managing resources.

Thanks for your advice.


As my opinion, it is not necessary to limit CPU resource at OS level. Of course, I can use Zone in Solaris to limit CPU, I/O,.. resource, but I do not want.

Imagine, you have got 14 concurrent sessions doing DML at table(s) level, you'll got more contentions than you want: CPU, I/O, queuing,.. If you limit CPU ratio per sessions by both of Resource_Manager level and OS level, you'll achieve your purpose, but Waiting and Queuing will increase more and more, the Wait level you will get at Perfstat & AWR show you incredibility.

Tuning at SQL or PL/SQL level is always the best method.

I believe, Zoning at Solaris have been a best way to decrease Oracle license or if you've got App and DB at one server.

Previous Topic: Wait event problem
Next Topic: DBMS_STATS running slow.
Goto Forum:
  


Current Time: Sat May 18 07:54:52 CDT 2024