Emby para Ubuntu

Iniciado por maurente, 05 de Novembro de 2017, 00:19

tópico anterior - próximo tópico

maurente

Sim, agora está muito bom. Netflix e transferência de arquivos ao mesmo tempo. Mais um obrigado.

galactus

Vai querer tornar a alteração do "cfq" permanente? Sem ter que ficar digitando o comando?
BigLinux no Notebook  / Várias Distros Virtualizadas no PC.

maurente

Com certeza, porque reiniciei aqui e voltou tudo ao anormal.  ;D

galactus

No terminal:

sudo nano /etc/default/grub

Procure pela linha GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

Você vai deixar ela assim:  GRUB_CMDLINE_LINUX_DEFAULT="quiet splash elevator=cfq" 

Cuidado nessas alterações!  Como dizia o Tio Ben:  "Com grandes poderes vem grandes responsabilidades!"

Salve as alterações, feche o nano e execute o comando:

sudo update-grub

Reinicie o sistema, entre em sua sessão, abra o terminal execute:

cat /sys/block/sda/queue/scheduler

Ele vai te mostrar três ou quatro opções de escalonadores, o "CFQ" deve estar entre [ ]. Isso significa que ele está em uso. Pronto!

Obs.:   Quando houver uma atualização do Grub, uma nova versão a ser instalada, ele vai reclamar que a versão instalada foi modificada e vai querer saber de você se ele mantém a versão modificada ou se instala a versão do mantenedor do pacote, da equipe do Ubuntu.  Você vai dizer que vai instalar a versão da equipe do Ubuntu e depois repete esses passos para voltar com o "CFQ" desde a inicialização!
BigLinux no Notebook  / Várias Distros Virtualizadas no PC.

maurente

#49
Citação de: galactus online 15 de Novembro de 2017, 13:40

Cuidado nessas alterações!  Como dizia o Tio Ben:  "Com grandes poderes vem grandes responsabilidades!"


Isso é quase assustador, porque não estou ganhando super-poderes. O que eu perco ou arrisco com essa configuração?

htpc@htpc-ULTRATOP-BRIX:~$ cat /sys/block/sda/queue/scheduler
noop deadline [cfq]
htpc@htpc-ULTRATOP-BRIX:~$ sudo cat /sys/block/sda/queue/scheduler
[sudo] senha para htpc:
noop deadline [cfq]
htpc@htpc-ULTRATOP-BRIX:~$

galactus

Rsrsrsrsrsrsrsrsrsrsrs

Ao usar o sudo você já está ganhando superpoderes!

Se fizer alguma caca usando o sudo...

Sobre o que você ganha ou perde usando o CFQ:

7) Altere o escalonador do disco

Este é um tema bastante complexo que vale um artigo extenso só pra falar sobre isso. Aviso logo a vocês que não existe um escalonador perfeito, por isso temos algumas variantes que podemos escolher. Em uma explicação bem simplista, um escalonador de processos é um algoritmo matemático que controla a fila de processos a ser executado pelo processador ou pelo disco.   O escalonador do disco rígido é o mais fácil de alterarmos, pois por padrão são dadas três opções para o usuário do sistema alterar sem compilações. O escalonador do processador só com compilação do kernel. O arquivo que contém essas opções está em:

/sys/block/sd?/queue/scheduler

Onde a interrogação vai depender do disco em que você instalou o seu sistema raiz.

Use o comando cat para ver as opções de escalonadores do disco assim:

Código: [Selecionar]

cat /sys/block/sda/queue/scheduler


Geralmente saída deve ser esta:

noop [deadline] cfq

O marcado entre colchetes é o que está em uso. O Ubuntu usa como padrão o escalonador deadline ( tradução grosseira – prazo a cumprir). Vou tentar explicar sem complicar muito.
O deadline divide as requisições em dois tipos. As de leitura e as de escrita.  Sendo que a prioridade é de que essa requisição seja executada imediatamente, contudo ele dá um tempo para que elas sejam executadas, 500ms para as de leitura e 5 segundos para as de escrita. Passou o cartão agora do nome dele?
O sistema pode responder mais rapidamente com o deadline em muitos casos. Mas como estamos forçando a barra um pouco, exigindo uma resposta imediata do sistema o tempo todo, ao aumentar demais as requisições, o sistema pode acabar ficando lento. Você vai notar ele mais "preso" a uma determinada tarefa, demorando para responder a outra coisa que queira fazer. Se tiver um processador tora como os Core i5 ou i7, beleza. Mas se for um Celeron... Para contornar isso, você pode usar o cfq ou Complete Fair Queuing.

O CFQ tenta dividir todas as requisições em fatias por iguais e tenta resolver toda elas com a mesma atenção, sem priorizar uma sobre as outras. Essa também é uma explicação bem simplista. Com um exemplo da vida prática fica mais fácil entender. Você chega para comprar um refrigerante no bar e tem 10 pessoas para serem atendidas. Normalmente tem fila, então só  o primeiro da fila é atendido, dão a ele(a) um copo e depois o refrigerante. Os outros estão esperando impacientes. Com o CFQ não é assim, ele primeiro verifica se todos querem o mesmo tipo de refrigerante. Se for diferente ele os agrupa por tipo de bebida. Os da Coca, os do Guaraná e da água, por exemplo. Distribui copo para todos e tenta servir um pouco da bebida para cada um. Assim ninguém fica achando que está lá mofando na fila! Então você pode "apertar o calo" dele que ele não reclama, ele se organiza para atender a todos.

Com o cfq você vai notar um sistema mais "fluido" para responder as muitas requisições. Pode puxar que ele responde. Ou seja, com o cfq seu sistema sempre te dá uma resposta. Não ficará preso a uma tarefa. Mas ele deixa seu sistema menos responsivo por isso, afinal tem que ter sobra para que ele te responda. O cfq não é bom de ser usado com o XFS. Na verdade muitas da vantagens do XFS se perdem com o cfq. Mas ele é ótimo de ser usado com o ext4 e muitas requisições.  Se tiver um processador do arco da velha, sua combinação com o jfs é perfeita se quiser fazer muitas coisas com esse processador velhinho. Só não espere repostas imediatas, mas ele vai te atender a tudo que você pedir.

Já o Noop é um escalonador de disco bem básico, tipo, quem chegar primeiro eu atendo. Então já viu, como as requisições geralmente nunca são ordenadas, você acaba achando ele mais lento, pois seu disco magnético não tem tanta potência para gerenciar tudo tão rápido. Quem chega primeiro bem,  os outros que vem atrás que esperem até essa requisição ser atendida.O Noop pode dar melhores  resultados com SSDs ( que possui potência de sobra) e em sistemas com múltiplos discos, onde pode se dividir a carga do sistema.
.
Obs.: Ficar alternando de escalonadores durante a mesma sessão pode deixar seu sistema lento. Então é bom reiniciar a máquina para testar direitinho.

Retirado daqui: https://ubuntuforum-br.org/index.php?topic=105729.0
BigLinux no Notebook  / Várias Distros Virtualizadas no PC.

maurente

E o que são esses escalonadores? Pois deu uma recaída aqui, uma travada básica.

galactus

#52
Apesar de já ter explicado acima, vamos tentar de outra maneira...

O escalonamento de processos ou agendador de tarefas é responsável pela organização de como o sistema lida com os processos que chegam na CPU (processador) ou HDs/SSDs.

O tal "processo" pode ser uma atividade de leitura ou escrita, no caso do HD/SSD.  Então quando você manda o gerenciador de arquivos (Nautilus) copiar o arquivo de um HD e colar em outro HD, só um exemplo,  é preciso que haja uma organização para realizar essa ação sem que o sistema "trave/congele", de maneira que você possa continuar a realizar outras coisas com o sistema operacional.  Existem maneiras diferentes de como o sistema pode "agir ou reagir" de acordo com o processo e a quantidade deles que vão chegando. É aqui que entram os tipos de escalonadores.  Eles podem ser de curto, médio ou longo prazo.   Por isso uso de analogias acima, como ter ou não fila para pegar o  refrigerante! Quem vai ter prioridade primeiro?  Quanto tempo eu posso passar com cada um da fila para entregar o refrigerante sem paralisar tudo?

O agendador de tarefas "na verdade" engana o usuário final, ele nos entrega uma ideia de paralelismo, que existem várias coisas sendo executas ao mesmo tempo, quando não é isso que acontece!

O assunto é complexo mas se estiver curiosa e afim de aprender pode começar lendo estes artigos:

https://pt.wikipedia.org/wiki/Escalonamento_de_processos
https://www.oficinadanet.com.br/post/12781-sistemas-operacionais-o-que-e-escalonamento-de-processos

Espero ter ajudado mais que complicado as idéias!
BigLinux no Notebook  / Várias Distros Virtualizadas no PC.

maurente

Citação de: galactus online 17 de Novembro de 2017, 17:15
Apesar de já ter explicado acima, vamos tentar de outra maneira...

O escalonamento de processos ou agendador de tarefas é responsável pela organização de como o sistema lida com os processos que chegam na CPU (processador) ou HDs/SSDs.

O tal "processo" pode ser uma atividade de leitura ou escrita, no caso do HD/SSD.  Então quando você manda o gerenciador de arquivos (Nautilus) copiar o arquivo de um HD e colar em outro HD, só um exemplo,  é preciso que haja uma organização para realizar essa ação sem que o sistema "trave/congele", de maneira que você possa continuar a realizar outras coisas com o sistema operacional.  Existem maneiras diferentes de como o sistema pode "agir ou reagir" de acordo com o processo e a quantidade deles que vão chegando. É aqui que entram os tipos de escalonadores.  Eles podem ser de curto, médio ou longo prazo.   Por isso uso de analogias acima, como ter ou não fila para pegar o  refrigerante! Quem vai ter prioridade primeiro?  Quanto tempo eu posso passar com cada um da fila para entregar o refrigerante sem paralisar tudo?

O agendador de tarefas "na verdade" engana o usuário final, ele nos entrega uma ideia de paralelismo, que existem várias coisas sendo executas ao mesmo tempo, quando não é isso que acontece!

O assunto é complexo mas se estiver curiosa e afim de aprender pode começar lendo estes artigos:

https://pt.wikipedia.org/wiki/Escalonamento_de_processos
https://www.oficinadanet.com.br/post/12781-sistemas-operacionais-o-que-e-escalonamento-de-processos

Espero ter ajudado mais que complicado as idéias!
Um Escalonador de Processos é um subsistema do Sistema Operacional responsável por decidir o momento em que cada processo obterá a CPU. Boa leitura!
Na meu entendimento leigo ainda, eu concluo que o usuário Linux não pode ser qualquer um. Como comentei com o Druida, você tem que sair da zona de conforto e ir à luta. Até acho que a gente desvirtuou o tópico, mas ainda estamos cumprindo o propósito de um fórum. Um usuário Windows simplesmente pode instalar um otimizador. Eu tinha um. No Linux você tem que ir descobrindo as coisas, pra saber o que fazer. E isso não é um ponto negativo, se você tem interesse. Aliás tem mais pontos a considerar, pois quando se tem um problema no Windows você pergunta num fórum que levam até dias para te responder. Isso hoje, pois há pouco tempo era só um 0800. E aqui, tem vezes que tenho minhas dúvidas respondidas em tempo real. Isso é muito melhor que um suporte técnico de empresa. É claro que inicialmente são inúmeras dúvidas de Linux que de Windows, dada essa liberdade que o usuário tem.
Quando falei ao meu filho que faz Ciência da Computação, que tinha colocado Linux no PCzinho da sala ele disse: - Cuidado que o Linux come mais RAM! Mas eu segui em frente mesmo assim, pois a situação no Windows estava insustentável. Lento, travamentos, mesmo com otimizadores de processos. E o Diolinux fazendo aquela proposta sedutora de Linux rodando em qualquer máquina. Quando vi o Deepin, foi a decisão final. Só que ele não tinha suporte necessário, e acabei no Ubuntu.
Eu não faço da ideia da idade de vocês, mas há 20 anos se dizia que o Linux era um sistema para universitários e técnicos em TI. Hoje está mais perto de entusiastas em TI, como eu, mas ainda longe do usuário doméstico, e quilômetros do usuário Apple. Mas gosto de ver o progresso que teve nesses 20 anos, e o progresso que está tendo com uma interface do Deepin em evolução como está, a robustez que o Ubuntu tem, e a mobilidade do Android.
Não é fácil, mas é gratificante aprender.
Abraço.