Boa noite. trabalho com um servidor linux com 8 processadores, estou notando que não consigo utilizar todos os processadores, como faço para escalonar o progress a utilizar os varios processadores que tenho, alguem teria alguma dica para realizar esta operação ? Obrigado.
rdevides, Escalonamento é um papel do SO. A aplicação tem pouquíssima influência sobre isto. A aplicação consegue solicitar ao SO para utilizar determinados processadores, mas o Progress não tem nada nesta linha até onde conheço. Ele não é multi-processor aware. O Progress utiliza uma arquitetura de vários processos e executará onde o SO decidir. Normalmente o SO utiliza todos os processadores para todos os processos, a não ser que você tenha solicitado o contrário. Daí você tem que ver o manual do teu SO. Outra coisa que você tem que lembrar é que cada processo Progress é single-thread e só usará no máximo 1 core por vez. Você só verá carga simultânea em mais de um processador se mais de 1 processo Progress precisar processar simultaneamente. Você tem que lembrar que processo "mosqueando" não usa CPU. Processo mosqueando = aguardando algo para fazer. Pode ser uma mensagem de rede, aguardando IO de disco, eventos, semáforos, mutexes, etc. O tópico é meio extenso. Recomendo pesquisar um pouco sobre arquitetura de SO e processos/threads. Depois arquitetura do Progress.