Olha, não vou falar pelo Glassfish, mas com o JBoss, nessa máquina da empresa que você falou, sem chance. Ainda mais usando JSF e EJB 3+. Acredito que, quando falamos em servidores de aplicação, precisamos usar uma máquina com um pouco mais de capacidade de processamento. Se você não tiver escolha e é obrigado a usar EJB com JSF, opte por algo mais simples do que o Glassfish, como o OpenEJB. Dependendo da sua arquitetura, a migração é bem tranquila de fazer. O JBoss, na minha máquina alcança os 400MB de uso. O OpenEJB não passa de 100.
Se você inicia o Glassfish fora dessa máquina, você pode ter se confundido no ciclo de vida do JSF. Já tive que encarar sistemas lentíssimos, e não por causa de ser EJB com JBoss, mas porque o JSF foi utilizado de forma errada (tipo cada renderização fazia uma request). Algumas dicas do que NÃO fazer com JSF (pelo menos na 1.2):
[list]Usar JSTL com JSF;[/list]
[list]Forçar a mudança de URL com ;[/list]
[list]Usar e manipular os parâmetros que vem nas requisições.[/list]
Se a parte de JSF fica bem leve, pode ser que você esteja se confundindo na hora de usar os EJBs. Tive um colega que desenvolveu um software que criava o context toda hora que ia fazer lookup. Além disso, não injetava o EntityManager, mas usava a Factory e, a cada request, criava a Factory. É complicado lidar num sistema desses.
Cabe a você determinar se a lentidão é na parte do JSF ou na parte do Glassfish. Pra determinar isso, existem algumas ferramentas que aixiliar a medir o uso de memória e processamento (se você usa Eclipse, procure por Eclipse Memory Analyzer. Eu não usei, mas vi pessoas falando muito bem dele). O JMeter também pode ser uma opção. Como você falou que é Windows XP, dá um Ctrl Alt Delete e monitora o processamento por ali. Outra forma de analisar é logar o tempo do envio e recebimento das requests (esse é um jeito arcaico, mas é muito mais simples e fácil de fazer se não é um sistema muito grande).
Editado daqui pra baixo
Você usa EJB pra que? A grande vantagem do EJB é usar ele em business apps grandes, que exijam bastante processamento no lado do servidor. Se você usa EJB só pra banco, use a JPA. Nesse caso, o EJB veio pra solucionar um problema que não existe. Além disso, você pode até mesmo abandonar o Glassfish e usar Tomcat com JSF. Hoje é necessário pensar muito bem antes de escolher EJB, ainda mais se você tem em suas mãos máquinas que não são servidores. Existem várias opções: Spring, VRaptor, Play, Rails.