07-11-2014
We have the kernel scheduling processes to use the cpu:
'capped cpu' means 'use any available cpu' , there is no short list of cpus, just a limit in how much cpu time you get for the zone as a whole. Every minute there are 128 minutes of available cpu on a system with 128 cpus. A capped zone is allowed to use 3 minutes max and the 3 minutes is scheduled on any cpu, since all cpus are shared equally - as in fair share scheduling. This is not like zone-based cpu affinity.
Dedicated cpu means the zone gets 3 cpus all for itself. If they are idle no cpu time is given to any other zone. In no case are those 3 cpus accessed by any other non-global zone. All processes are scheduled against a given prset (fixed set of 3 cpus). Think of this as cpu affinity on a zone basis rather than a per-process basis.
capped cpu is less restrictive. dedicated cpu locks zones (that can potentially do evil things) into a little cpu "space" where all they can trash are their own resources. Great for oracle. For example, a programmer requests a Cartesian product from two, billion-row tables. All the other zones hum happily along while the one evil zone thrashes in its own little pond.
Last edited by jim mcnamara; 07-11-2014 at 07:13 AM..
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
hi,
i want to know cpu utilizatiion per process per cpu..for single processor also if multicore in linux ..to use these values in shell script to kill processes exceeding cpu utilization.ps (pcpu) command does not give exact values..top does not give persistant values..psstat,vmstat..does njot... (3 Replies)
Discussion started by: pankajd
3 Replies
2. Solaris
Hi Folks,
Im running solaris 10 8/07 and im trying to set up some memory capping within zones for the system project.
ie.
zone1# cat /etc/project
system:0::::rcap.max-rss=41943040
user.root:1::::
noproject:2::::
default:3::::
group.staff:10::::
zone2# cat /etc/project... (3 Replies)
Discussion started by: trevagreene
3 Replies
3. Solaris
Hello Friends,
On one of my Solaris 10 box, CPU usage shows 100% using "sar", "vmstat". However, it has 4 CPUs and prstat and glance are not showing enough processes to justify high CPU utilization.
=========================================================================
$ prstat -a
... (4 Replies)
Discussion started by: mahive
4 Replies
4. UNIX for Dummies Questions & Answers
I am trying to write a script which will output notifications to a logfile, but I would like to cap the logfile to, let's say, 200 lines.
Specifically I am using custom firmware, DD-wrt, on my router and I am implementing a script to connect to my work vpn. I have a loop that pings a computer... (2 Replies)
Discussion started by: joemommasfat
2 Replies
5. Solaris
Hi All,
While creating zone we will mention min and max cpu cores, like
add dedicated-cpu
set ncpus=NUM_CPUS_MIN-NUM_CPUS_MAX
end
Ques1:
Suppose thing that non global zone uses only minimum cores at particular time What the other cores will do, Will it shared to global zone?
Ques:2... (1 Reply)
Discussion started by: vijaysachin
1 Replies
6. Solaris
Hello Admins,
Does anyone has any idea on how to assign no. of cpu and memory to non-global zones on solaris 10.....
We have few zones in our environment. We wanted to assign memory and no of cpu's ..(e.g. 4Gb / 2 CPU's)
Thanks... (4 Replies)
Discussion started by: snchaudhari2
4 Replies
7. Solaris
Hi all
I've purchased a T3-1 server. The T3-1 has a 16 core CPU. I want to create a zone to install an Oracle DB server in. Due to Oracle licensing issues I want to limit the zone to 8 cores. I've done some research and it seems there are 2 ways of setting a CPU core limit for a zone.
1. ... (0 Replies)
Discussion started by: soliberus
0 Replies
8. Solaris
Hi guys.
Quick question for some hopefully ;-)
When using resource capping (for CPU in this case). If a container is restricted to use a single CPU/core, are the other containers intelligent enough to know that they have fewer CPU's available to them?
My question relates to a T2000 which... (7 Replies)
Discussion started by: boneyard
7 Replies
9. UNIX for Dummies Questions & Answers
We have a single threaded application which is restricted by CPU usage even though there are multiple CPUs on the server, hence leading to significant performance issues. Is it possible to merge / combine multiple CPUs at OS level so it appear as a single CPU for the application? (6 Replies)
Discussion started by: Dissa
6 Replies
10. Solaris
I want to allocate
RAM : 64GB (Dedicated allocation)
Swap : 8GB
Please assist and recommend the correct capping values
capped-memory:
physical: XXG
Had allocated physical=64GB, Swap=8GB, and locaked 16GB and found my non-global zone were unable to use... (1 Reply)
Discussion started by: Shirishlnx
1 Replies
LEARN ABOUT NETBSD
cpuset_destroy
CPUSET(3) BSD Library Functions Manual CPUSET(3)
NAME
cpuset_create, cpuset_destroy, cpuset_zero, cpuset_set, cpuset_clr, cpuset_isset, cpuset_size -- dynamic CPU sets
SYNOPSIS
#include <sched.h>
cpuset_t *
cpuset_create(void);
void
cpuset_destroy(cpuset_t *set);
void
cpuset_zero(cpuset_t *set);
int
cpuset_set(cpuid_t cpu, cpuset_t *set);
int
cpuset_clr(cpuid_t cpu, cpuset_t *set);
int
cpuset_isset(cpuid_t cpu, const cpuset_t *set);
size_t
cpuset_size(const cpuset_t *set);
DESCRIPTION
This section describes the functions used to create, set, use and destroy the dynamic CPU sets.
This API can be used with the POSIX threads, see pthread(3) and affinity(3).
The ID of the primary CPU in the system is 0.
FUNCTIONS
cpuset_create()
Allocates and initializes a clean CPU-set. Returns the pointer to the CPU-set, or NULL on failure.
cpuset_destroy(set)
Destroy the CPU-set specified by set.
cpuset_zero(set)
Makes the CPU-set specified by set clean, that is, memory is initialized to zero bytes, and none of the CPUs set.
cpuset_set(cpu, set)
Sets the CPU specified by cpu in set. Returns zero on success, and -1 if cpu is invalid.
cpuset_clr(cpu, set)
Clears the CPU specified by cpu in the CPU-set set. Returns zero on success, and -1 if cpu is invalid.
cpuset_isset(cpu, set)
Checks if CPU specified by cpu is set in the CPU-set set. Returns the positive number if set, zero if not set, and -1 if cpu is
invalid.
cpuset_size(set)
Returns the size in bytes of CPU-set specified by set.
SEE ALSO
affinity(3), pset(3), sched(3), schedctl(8), kcpuset(9)
HISTORY
The dynamic CPU sets appeared in NetBSD 5.0.
BSD
November 2, 2011 BSD