| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 19/10/2004 21:32:10
|
zica
Thread.start()
![[Avatar]](/images/avatar/c8c927ca414b70b6be5cb.jpg)
Membro desde: 10/09/2004 13:23:50
Mensagens: 46
Localização: São Pauo/SP
Offline
|
Alguém conhece alguma API Matemática que possa trabalhar com matriz inversa?
|
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 19/10/2004 22:03:36
|
velo
GUJ Ranger
![[Avatar]](/images/avatar/32b991e5d77ad140559ffb95522992d0.jpg)
Membro desde: 19/02/2004 18:23:55
Mensagens: 797
Localização: Jaraguá do Sul - SC
Offline
|
http://java.sun.com/products/java-media/3D/forDevelopers/J3D_1_3_API/j3dguide/AppendixMath.html
No final da pagina tem o que voce procura.
Eu espero
VELO
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 19/10/2004 23:31:34
|
luiz_ross
GUJ Master
![[Avatar]](/images/avatar/ac627ab1ccbdb62ec96e702f07f6425b.jpg)
Membro desde: 25/09/2002 16:38:34
Mensagens: 1110
Localização: Salto, SP
Offline
|
Tem a jakarta commons.math também
|
"Quanto mais inteligente é um homem, mais originalidade ele descobre nos homens. Pessoas ordinárias não enxergam nenhuma diferença entre eles" |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/01/2007 12:04:30
|
gpmjr
Smalltalk
Membro desde: 09/01/2007 12:03:21
Mensagens: 1
Offline
|
Como faço para baixar esta biblioteca que contém a matriz inversa
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/01/2007 12:13:09
|
cassio
GUJ Master
![[Avatar]](/images/avatar/8ae7398026ed8f2172aefd6cbc856bc8.jpg)
Membro desde: 19/06/2006 08:25:28
Mensagens: 1336
Localização: Caieiras-SP
Offline
|
Cara, essa biblioteca aqui é MUITO boa e bemmm simples de usar, gosto muito dela. Dá uma olhada na documetação, é possível fazer muita coisa relacionada com matrizes e álgebra linear.
http://math.nist.gov/javanumerics/jama/
|
Cássio Marques
Blog
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 20/09/2010 15:36:25
|
gpmdf2
JavaTeenager
Membro desde: 16/04/2010 16:56:44
Mensagens: 169
Offline
|
Pessoal ,
Sei que o tópico é antigo e tal, mas ele tá falando exatamente do que eu preciso...
Preciso fazer um programa Java, tô usando o Jama para processar as matrizes, mas elas são muito grandes e certa hora o JAva relcma que a heap estoura. Heap out of memory.
Tentei os comandos java -Xms1024m -Xmx1024m MinhaClasse
Mas mesmo assim não consegui (isso deixa a JVM com 1GB de memoria, correto?). Como posso resolver esse problema? Mesmo tendo mais memória RAM no computador, não posso setar mais para a JVM?
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 20/09/2010 16:39:19
|
bezier curve
JavaEvangelist
Membro desde: 28/11/2009 17:55:58
Mensagens: 411
Offline
|
Em sistemas operacionais de 32 bits como o Windows ou o Linux, é possível usar um heap de no máximo 1.3 GB se não me engano. (O Solaris de 32 bits aceita um pouco mais).
Você precisa rodar seu programa em um sistema operacional de 64 bits e usar uma JVM de 64 bits para poder usar toda a memória disponível de sua máquina (obviamente se ela for de 64 bits também).
Outra maneira é você escolher um algoritmo que não necessite deixar a matriz inteira na memória. Veja se não é esse o caso.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 20/09/2010 16:40:16
|
Ataxexe
JavaEvangelist
![[Avatar]](/images/avatar/8ed02495f7499c010a3b22c830438ec2.jpg)
Membro desde: 11/10/2007 15:34:17
Mensagens: 418
Localização: Brasília
Offline
|
Já tentou analisar a execução do programa com um profiler? Pode te ajudar a descobrir onde está o gargalo. Só por curiosidade, o quão grandes são suas matrizes e qual é o processamento que está fazendo?
bezier curve wrote:Em sistemas operacionais de 32 bits como o Windows ou o Linux, é possível usar um heap de no máximo 1.3 GB se não me engano. (O Solaris de 32 bits aceita um pouco mais).
É mais ou menos isso, cada VM tem uma limitação. Mas gira em torno desse valor.
This message was edited 1 time. Last update was at 20/09/2010 16:42:23
|
Marcelo Guimarães
https://github.com/ataxexe
http://sourceforge.net/projects/trugger
http://www.youtube.com/user/ataxexe
http://www.flickr.com/photos/ataxexe |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 20/09/2010 16:52:01
|
gpmdf2
JavaTeenager
Membro desde: 16/04/2010 16:56:44
Mensagens: 169
Offline
|
Eu já tinha visto que as arquiteturas de 64 bits disponibilizavam mais memoria. Só não sei o porque disso. Claro, pode endereçar mais, porque os numeros que a arquitetura escreve sao maiores, mas porque nao disponibiliza mais que 1Gb (nao é 1Gb ao certo, mas e perto disso)?
O que eu estou rodando é um algoritmo novo de inteligencia artificial que usa matrizes pra montar sua rede neural. as matrizes sao tao grandes quanto a quantidades de atributos e exemplos da base de dados. Como minha base tem mais de 20 mil exemplos e 42 atributos, fica uma matriz 20 mil X 42.
E essa é apenas uma das matrizes que ele usa.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 20/09/2010 16:56:10
|
bezier curve
JavaEvangelist
Membro desde: 28/11/2009 17:55:58
Mensagens: 411
Offline
|
gpmdf2 wrote:Eu já tinha visto que as arquiteturas de 64 bits disponibilizavam mais memoria. Só não sei o porque disso. Claro, pode endereçar mais, porque os numeros que a arquitetura escreve sao maiores, mas porque nao disponibiliza mais que 1Gb (nao é 1Gb ao certo, mas e perto disso)?
O que eu estou rodando é um algoritmo novo de inteligencia artificial que usa matrizes pra montar sua rede neural. as matrizes sao tao grandes quanto a quantidades de atributos e exemplos da base de dados. Como minha base tem mais de 20 mil exemplos e 42 atributos, fica uma matriz 20 mil X 42.
E essa é apenas uma das matrizes que ele usa.
A JVM da Sun precisa deixar sua heap em um segmento contíguo da memória.
Nesses dois sistemas operacionais de 32 bits, devido a particularidades no endereçamento de device drivers e outras coisas, não é possível você criar um segmento contíguo de memória maior que esse valor citado (menos de 2GB).
A JVM da Sun não consegue trabalhar com a heap em segmentos não-contíguos. É uma limitação, não sei se a JVM da IBM ou a JVM da Oracle/BEA (JRockit) têm também a mesma limitação. Isso é uma particularidade dos algoritmos de garbage collection usados por essas JVMs.
|
|
|
 |
|
|