Guia de administração do sistema: gerenciamento de recursos Oracle Solaris Containers e Oracle Solaris Zones

FSS e conjuntos de processadores

O FSS pode ser usado junto com um conjunto de processadores para fornecer controles mais precisos sobre alocações de recursos da CPU entre projetos que são executados em cada conjunto de processadores do que estaria disponível apenas com conjuntos de processadores. O agendador FSS trata os conjuntos de processadores como partições totalmente independentes, com cada conjunto de processadores controlado independentemente com relação a alocações de CPU.

As alocações de CPU de projetos em execução em um conjunto de processadores são afetadas pelos compartilhamentos da CPU ou pela atividade de projetos em execução em outro conjunto de processadores porque os projetos não concorrem pelos mesmos recursos. Projetos somente concorrem entre si se forem executados dentro do mesmo conjunto de processadores.

O número de compartilhamentos alocados a um projeto é do sistema geral. Independentemente de qual conjunto de processadores estão em execução, cada parte de um projeto recebe a mesma quantidade de compartilhamentos.

Quando conjuntos de processadores são usados, as alocações de CPU para projetos são calculadas para projetos ativos que são executados dentro de cada conjunto de processadores.

Partições de projeto executadas em diferentes conjuntos de processadores podem ter alocações de CPU diferentes. A alocação de CPU para cada partição de projeto em um conjunto de processadores depende somente das alocações de outros projetos executados no mesmo conjunto de processadores.

O desempenho e a disponibilidade de aplicativos executados dentro dos limites de seus conjuntos de processadores não são afetados pela introdução de novos conjuntos de processadores. Os aplicativos também não são afetados por alterações feitas nas alocações de compartilhamentos de projetos executados em outros conjuntos de processadores.

Conjuntos vazios de processadores (conjuntos que não contêm processadores) ou conjuntos de processadores vinculados a eles não têm qualquer impacto sobre o comportamento do agendador FSS.

FSS e exemplos de conjuntos de processadores

Suponha que um servidor com oito CPUs esteja executando diversos aplicativos vinculados à CPU nos projetos A, B e C. Para o projeto A um compartilhamento é alocado, para o projeto B, dois compartilhamentos, e para o projeto C, três compartilhamentos.

O projeto A está sendo executado somente em no conjunto de processadores 1. O projeto B está sendo executado somente no conjunto de processadores 1 e 2. O projeto C está sendo executado somente no conjunto de processadores 1, 2 e 3. Suponha que cada projeto apresente processos suficientes para utilizar toda a energia disponível da CPU. Assim, sempre há concorrência pelos recursos de CPU em cada conjunto de processadores.

O diagrama mostra o total de alocações de CPU para projetos no sistema geral em um servidor com oito CPUs que executam diversos aplicativos vinculados à CPU em três projetos.

O total de alocações de CPU para projetos no sistema geral em tal sistema é mostrado na tabela abaixo.

Projeto 

Alocação 

Projeto A 

4% = (1/6 X 2/8)pset1

Projeto B 

28% = (2/6 X 2/8)pset1+ (2/5 * 4/8)pset2

Projeto C 

67% = (3/6 X 2/8)pset1+ (3/5 X 4/8)pset2+ (3/3 X 2/8)pset3

Estas porcentagens não coincidem com as quantidades correspondentes de compartilhamentos de CPU dados a projetos. No entanto, com cada conjunto de processadores, as taxas de alocação de CPU por projeto são proporcionais a seus respectivos compartilhamentos.

No mesmo sistema sem conjuntos de processadores, a distribuição de recursos de CPU seriam diferentes, como mostrado na tabela abaixo.

Projeto 

Alocação 

Projeto A 

16.66% = (1/6) 

Projeto B 

33.33% = (2/6) 

Projeto C 

50% = (3/6)