Re: [java-list] Java Threads no linux
19/4/2002 15:44:02, Flávio de Sousa <[EMAIL PROTECTED]> wrote: >Será que cada thread está ocupando mesmo os 60 MB de memória? Ou este >espaço de memória está sendo compartilhado por todas as threads? >Será que a máquina virtual java (jre 1.3.1 da sun) do linux é tosca? >Será que o gerenciamento de threads do linux é tosco? No Linux não existe diferença aparente ao usuario entre thread e processo. Entretanto, elas continuam usando memória compartilhada, como threads normais que são. Não se preocupe, os 60MB de memória sao os mesmos. -- Fast, cheap, good. Pick two. -- LISTA SOUJAVA http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP dúvidas mais comuns: http://www.soujava.org.br/faq.htm regras da lista: http://www.soujava.org.br/regras.htm historico: http://www.mail-archive.com/java-list%40soujava.org.br para sair da lista: envie email para [EMAIL PROTECTED] -
Re: [java-list] Java Threads no linux
Emerson, Threads no linux sao implementadas como LWP (Light Weight Process), ou seja, vc vai ver cada thread como um processo. Mais do que isso, pra cada "programa multithread" com "n" threads, vc vai ter n+1 LWPs no linux. Essa thread a mais que ele cria tem funcoes especificas dentro do SO, que nao cabem ser discutidas aqui. Quanto a utilizacao de memoria, eh o q vc deve ter imaginado. Todos os LWPs compartilham o mesmo espaco de enderecamento, ou seja, a sua aplicacao estah usando 60 Mb de memoria no total. :) Quanto a implementacao da maquina virtual no linux nao tenho competencia para discutir. :) Quanto a implementacao do gerenciamento de threads no linux, acho q eh uma decisao de implementacao (deveria dizer de design?) do SO. Eh melhor ou pior do que outros unix? Tem vantagens e desvantagens. Agora, off-topic, se alguem souber me responder, por favor me responda em PVT: como faco pra, dada a lista de processos de um linux, saber quais sao os LWPs (ou threads) q compoem cada "programa"? []s Edson --- Edson Tirelli System Analyst Microsoft Certified Professional Sun Certified Programmer for Java 2 try Automatos @ www.automatos.com - Original Message - From: "Emerson Santana Pardo" <[EMAIL PROTECTED]> To: "Java List" <[EMAIL PROTECTED]> Sent: Thursday, April 18, 2002 10:21 AM Subject: [java-list] Java Threads no linux > Oi lista, > > Seguinte, desenvolvi um servidor java com um pool de conexões. O servidor > aloca N threads que ficam em uma pilha para atender as requisições que > chegam. Quando o executo no linux e dou o comando top aparece uma lista > mostrando cada thread como se fosse um processo e cada uma ocupando mais de > 60 MB de memória. > > Bom, deve ter alguma coisa errada ou com 50 threads no pool meu servidor > ocuparia mais de 3 GB de memória o que, neste momento, a máquina em questão > não tem disponível. :-P > > Algumas dúvidas: > > Será que cada thread está ocupando mesmo os 60 MB de memória? Ou este > espaço de memória está sendo compartilhado por todas as threads? > Será que a máquina virtual java (jre 1.3.1 da sun) do linux é tosca? > Será que o gerenciamento de threads do linux é tosco? > > Agradeço antecipamente qualquer ajuda. > > []'s, > Emerson > > Arquivo da java-list: > [http://www.mail-archive.com/java-list%40soujava.org.br/] > > > > > -- LISTA SOUJAVA > http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP > dúvidas mais comuns: http://www.soujava.org.br/faq.htm > regras da lista: http://www.soujava.org.br/regras.htm > historico: http://www.mail-archive.com/java-list%40soujava.org.br > para sair da lista: envie email para [EMAIL PROTECTED] > - > -- LISTA SOUJAVA http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP dúvidas mais comuns: http://www.soujava.org.br/faq.htm regras da lista: http://www.soujava.org.br/regras.htm historico: http://www.mail-archive.com/java-list%40soujava.org.br para sair da lista: envie email para [EMAIL PROTECTED] -
Re: [java-list] Java Threads no linux
Olá Emerson, O programa java esta no formato ELF (Extensible Linked Format). Neste formato a área de código é reentrante, sendo compartilhada por várias threads. Isto acaba confundindo o top. Não sei se existe alguma maneira de sabeer o quando cada thread realmente ocupa de memória. Alguma ajuda? 18/04/02 10:21:17, Emerson Santana Pardo <[EMAIL PROTECTED]> wrote: >Oi lista, > >Seguinte, desenvolvi um servidor java com um pool de conexões. O servidor >aloca N threads que ficam em uma pilha para atender as requisições que >chegam. Quando o executo no linux e dou o comando top aparece uma lista >mostrando cada thread como se fosse um processo e cada uma ocupando mais de >60 MB de memória. > >Bom, deve ter alguma coisa errada ou com 50 threads no pool meu servidor >ocuparia mais de 3 GB de memória o que, neste momento, a máquina em questão >não tem disponível. :-P > >Algumas dúvidas: > >Será que cada thread está ocupando mesmo os 60 MB de memória? Ou este >espaço de memória está sendo compartilhado por todas as threads? >Será que a máquina virtual java (jre 1.3.1 da sun) do linux é tosca? >Será que o gerenciamento de threads do linux é tosco? > >Agradeço antecipamente qualquer ajuda. > >[]'s, >Emerson > >Arquivo da java-list: >[http://www.mail-archive.com/java-list%40soujava.org.br/] > > > > >-- LISTA SOUJAVA >http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP >dúvidas mais comuns: http://www.soujava.org.br/faq.htm >regras da lista: http://www.soujava.org.br/regras.htm >historico: http://www.mail-archive.com/java-list%40soujava.org.br >para sair da lista: envie email para [EMAIL PROTECTED] >- > -- LISTA SOUJAVA http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP dúvidas mais comuns: http://www.soujava.org.br/faq.htm regras da lista: http://www.soujava.org.br/regras.htm historico: http://www.mail-archive.com/java-list%40soujava.org.br para sair da lista: envie email para [EMAIL PROTECTED] -
Re: [java-list] Java Threads no linux
Rodando o JBuilder no Debian notei esse comportamento. Me parece que as áreas de memória são compartilhadas e o mecanismo de threading do java faz cada uma aparecer como um processo. No AIX as Java threads são internas, tanto que aparece apenas um processo que ocasionalmente consome mais que 100% de CPU, pois está usando mais de uma CPU. - Original Message - From: "Emerson Santana Pardo" <[EMAIL PROTECTED]> To: "Java List" <[EMAIL PROTECTED]> Sent: Thursday, April 18, 2002 10:21 AM Subject: [java-list] Java Threads no linux Oi lista, Seguinte, desenvolvi um servidor java com um pool de conexões. O servidor aloca N threads que ficam em uma pilha para atender as requisições que chegam. Quando o executo no linux e dou o comando top aparece uma lista mostrando cada thread como se fosse um processo e cada uma ocupando mais de 60 MB de memória. Bom, deve ter alguma coisa errada ou com 50 threads no pool meu servidor ocuparia mais de 3 GB de memória o que, neste momento, a máquina em questão não tem disponível. :-P Algumas dúvidas: Será que cada thread está ocupando mesmo os 60 MB de memória? Ou este espaço de memória está sendo compartilhado por todas as threads? Será que a máquina virtual java (jre 1.3.1 da sun) do linux é tosca? Será que o gerenciamento de threads do linux é tosco? Agradeço antecipamente qualquer ajuda. []'s, Emerson Arquivo da java-list: [http://www.mail-archive.com/java-list%40soujava.org.br/] -- LISTA SOUJAVA http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP dúvidas mais comuns: http://www.soujava.org.br/faq.htm regras da lista: http://www.soujava.org.br/regras.htm historico: http://www.mail-archive.com/java-list%40soujava.org.br para sair da lista: envie email para [EMAIL PROTECTED] - -- LISTA SOUJAVA http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP dúvidas mais comuns: http://www.soujava.org.br/faq.htm regras da lista: http://www.soujava.org.br/regras.htm historico: http://www.mail-archive.com/java-list%40soujava.org.br para sair da lista: envie email para [EMAIL PROTECTED] -
[java-list] Java Threads no linux
Oi lista, Seguinte, desenvolvi um servidor java com um pool de conexões. O servidor aloca N threads que ficam em uma pilha para atender as requisições que chegam. Quando o executo no linux e dou o comando top aparece uma lista mostrando cada thread como se fosse um processo e cada uma ocupando mais de 60 MB de memória. Bom, deve ter alguma coisa errada ou com 50 threads no pool meu servidor ocuparia mais de 3 GB de memória o que, neste momento, a máquina em questão não tem disponível. :-P Algumas dúvidas: Será que cada thread está ocupando mesmo os 60 MB de memória? Ou este espaço de memória está sendo compartilhado por todas as threads? Será que a máquina virtual java (jre 1.3.1 da sun) do linux é tosca? Será que o gerenciamento de threads do linux é tosco? Agradeço antecipamente qualquer ajuda. []'s, Emerson Arquivo da java-list: [http://www.mail-archive.com/java-list%40soujava.org.br/] -- LISTA SOUJAVA http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP dúvidas mais comuns: http://www.soujava.org.br/faq.htm regras da lista: http://www.soujava.org.br/regras.htm historico: http://www.mail-archive.com/java-list%40soujava.org.br para sair da lista: envie email para [EMAIL PROTECTED] -