Como fazer a JVM utilizar mais do que 2GB de memória?

Olá, pessoal.

A situação em que nos encontramos aqui na empresa onde trabalho é a seguinte:

Temos que processar uma quantidade muito grande de informações que ficam disponibilizadas em matrizes.

Ao efetuarmos testes ocorreram erros que apontantavam falta de memória. Mas, a máquina possui 6 GB e o erro foi lançado enquanto ela estava usando por volta de 2 GB.
Após algumas pesquisas, verificamos que para plataformas 32-bits a JVM tem um limite máximo de utilização da RAM de 2GB! Pesquisamos novamente em diversos sites uma maneira de fazer a JVM utilizar mais memória. Mas, não encontramos nada consistente.

Agora fica aqui a pergunta…
Alguém saberia como eu posso fazer pra a JVM utilizar mais memória???

Essa máquina em que testamos, além de ter 6GB tem um processador QuadCore. Será que não teria como dividir em programas menores e delegá-los à processadores específicos?? Alguém teria alguma dica de como fazer isso??

Quaisquer dicas serão bem-vindas!

a) A JVM tem esse limite mesmo em 32 bits; não há o que fazer; a razão é que a JVM deve alocar uma área contígua para o heap e essa área só pode ter, no máximo, 2 GB (na verdade é um pouco menos).
Se essa máquina for fazer só isso (e tão-somente isso), vocês podem tentar instalar um SO de 64 bits.

b) Para dividir seu problema em várias JVMs, provavelmente vocês terão de reescrever o seu programa para que cada JVM possa processar uma parte da informação.

Mas mesmo com um SO de 64 bits, pelo que pesquisei, essa limitação aumenta pouco… de 2 passa para 3 ou 4 GB.

E outra, não entendi muito bem a relação entre espaço contíguo e essa limitação…
Essa limitação não teria que ser variável de acordo com o total de memória disponível??