Autor Tópico: octave é incapaz de plotar veotres muito grandes?[Resolvido]  (Lida 4649 vezes)

Offline rudregues

  • Usuário Ubuntu
  • *
  • Mensagens: 388
  • Fight!
    • Ver perfil
    • Dieta Paleo
octave é incapaz de plotar veotres muito grandes?[Resolvido]
« Online: 26 de Outubro de 2012, 22:06 »
Pessoal, a plotagem de vetores normais funciona perfeitamente. Por exemplo:

Crio um pequeno vetor:
x=[1 9 87 78 6 4 8 476 67 4554 7 5];
Mando plotar:
plot(x);
Ok! Ele plota.

Agora, eu carrego uma variável de uma arquivo .mat grande(220MB), com dimensão 11520000x7 e mando plotar:
plot(x(1:11520000,1:7));
Ele não plota e usa indefinidamente memória, chegando até 7,8GB de RAM consumido(é o máximo de RAM do meu pc), então dá vários erros, incluindo este por último:
Código: [Selecionar]
warning: broken pipe -- some output may be lost
Uso o octave3.2 no ubuntu 12.04.
Obs.: tanto no matlab do windows, quanto no matlab do ubuntu, ele plota sem passar muito dos 4,5GB de RAM, mesmo que demore.

Será um bug?!

   [ ]'s
« Última modificação: 27 de Outubro de 2012, 19:02 por rudregues »
Gentoo — Controle total sobre o sistema.

Offline rudregues

  • Usuário Ubuntu
  • *
  • Mensagens: 388
  • Fight!
    • Ver perfil
    • Dieta Paleo
Re: octave é incapaz de plotar veotres muito grandes?
« Resposta #1 Online: 26 de Outubro de 2012, 22:20 »
update:
Fiz outro teste aqui, mandei plotar esse vetor num intervalo menor, de 5000000x7 ao invés do total, que é 11520000x7, pouco mais que o dobro.
plot(x(1:5000000,:));
Ele plotou, apesar de demorar bastante, mas com o sistema consumindo 6,5GB no total.

Comparando com o matlab, ele só foi capaz de plotar um gráfico com pouco menos da metade dos dados do total, o matlab plota o total. E mesmo plotando um número menor de dados, ele demora bem mais que o matlab para plotar e gasta bem mais memória RAM pra isso.

Alguém tem alguma sugestão?
« Última modificação: 26 de Outubro de 2012, 22:34 por rudregues »
Gentoo — Controle total sobre o sistema.

Offline Sergio Benjamim

  • Usuário Ubuntu
  • *
  • Mensagens: 2.902
    • Ver perfil
Re: octave é incapaz de plotar veotres muito grandes?
« Resposta #2 Online: 26 de Outubro de 2012, 22:36 »
Já tentou usar uma versão atualizada? Instale a versão 3.6.3, por meio de PPA:

GNU Octave PPA - Mike Miller

Se precisar de toolbox, como Control, instale diretamente pelo GNU Octave, se não me engano é package install -forge nomedatoolbox (tem que ter entrado no GNU Octave como sudo primeiro, e precisa ter instalado o octave-pkg-dev).

Ao instalar essa versão mais recente, se o problema persistir, reporte como bug, em http://savannah.gnu.org/bugs/?group=octave
É novo no Ubuntu? Já leu o Ubuntu – Guia do Iniciante 2.0 ?
Experimente o Xubuntu 14.04 !

Offline rudregues

  • Usuário Ubuntu
  • *
  • Mensagens: 388
  • Fight!
    • Ver perfil
    • Dieta Paleo
Re: octave é incapaz de plotar veotres muito grandes?
« Resposta #3 Online: 27 de Outubro de 2012, 00:04 »
Ter instalado uma versão mais recente diminuiu um pouco o problema, mas não eliminou.
Reportei no site que você passou:
https://savannah.gnu.org/bugs/?37636 -> tá aqui o "bug"

 Obrigado pela ajuda e vamos torcer pra que isso seja resolvido logo, octave é muito bom! :-)

  [ ]'s
Gentoo — Controle total sobre o sistema.

Offline Sergio Benjamim

  • Usuário Ubuntu
  • *
  • Mensagens: 2.902
    • Ver perfil
Re: octave é incapaz de plotar veotres muito grandes?
« Resposta #4 Online: 27 de Outubro de 2012, 03:17 »
Ter instalado uma versão mais recente diminuiu um pouco o problema, mas não eliminou.
Reportei no site que você passou:
https://savannah.gnu.org/bugs/?37636 -> tá aqui o "bug"

 Obrigado pela ajuda e vamos torcer pra que isso seja resolvido logo, octave é muito bom! :-)

  [ ]'s

O pessoal do GNU Octave é bem rápido para responder, esses dias reportei um erro lá, da toolbox Control, e me responderam rápido, e me deram um toque que lá não é o lugar apropriado para reportar problemas de toolbox, mas o Jordi (acho q eh o nome dele) foi muito solicito e mandou para a mailing list o meu problema. Preciso me inscrever nessa mailing list de desenvolvimento para acompanhar o problema.

Acho q a gente podia trocar umas figurinhas a respeito, utilizo muito o GNU Octave em conjunto com o Scilab (mais exatamente o Xcos) no meu curso de Engenharia Elétrica, principalmente para a aula de Controle Linear e Introdução à Processamento de Imagens.

E sim, o Octave é muito bom mesmo! Pena que minha faculdade só liga para soft proprietários. Para o pessoal aqui não existe vida além Matlab. Parece que gostam de gastar dinheiro à toa.
« Última modificação: 27 de Outubro de 2012, 03:21 por Sergio Benjamim »
É novo no Ubuntu? Já leu o Ubuntu – Guia do Iniciante 2.0 ?
Experimente o Xubuntu 14.04 !

Offline rudregues

  • Usuário Ubuntu
  • *
  • Mensagens: 388
  • Fight!
    • Ver perfil
    • Dieta Paleo
Re: octave é incapaz de plotar veotres muito grandes?[Resolvido]
« Resposta #5 Online: 27 de Outubro de 2012, 19:20 »
São rápidos mesmo, acabo de resolver o problema utilizando o fltk para plotar (agradecimentos ao usuário Mike Miller). Pesquisei sobre esse fltk e parece que recentemente ele está sendo integrado ao octave, de modo a ter melhor compatibilidade com o matlab. Ele foi integrado ao octave a partir de uma versão 3.6.x do octave, mas como programa beta (ou algo do tipo). A idéia é que o fltk seja o padrão para plotagem no octave daqui a algum tempo.

Pra ativá-lo, antes da plotagem utilizei o comando no octave:
Código: [Selecionar]
octave:3> graphics_toolkit fltk
Cada vez que inicia uma sessão no octave, o comando precisa ser utilizado novamente, mas perguntei lá se tem algum jeito de deixá-lo por padrão. Se tiver posto aqui pra galera. Tive a impressão de que o octave plotou um pouco mais rápido com o fltk do que a o próprio matlab plotou no windows/ubuntu. Também comparei o uso de RAM no tópico do bug bem aqui https://savannah.gnu.org/bugs/index.php?37636
Uma coisa importante a observar é que com o fltk o suporte de dados é de 10^38 por enquanto (espero que aumente) o gnuplot tem limite de 10^308 dados de plotagem. Ainda bem que ainda to longe dessa quantidade hehehe

O Scilab tive problemas logo no primeiro uso (semana passada), mas também tive no octave. Por enquanto não tenho planos para aprender o Scilab, mas se eu for pra elétrica também vou precisar da Xcos né, pois o octave num tem nada semelhante. Minha facul, quanto à isso, num tenho muito a reclamar. Sempre que possível, dão preferência ao Linux e software livre.

  [ ]'s



Gentoo — Controle total sobre o sistema.

Offline Sergio Benjamim

  • Usuário Ubuntu
  • *
  • Mensagens: 2.902
    • Ver perfil
Re: octave é incapaz de plotar veotres muito grandes?[Resolvido]
« Resposta #6 Online: 28 de Outubro de 2012, 12:12 »
Eu já conhecia esse fltk, mas não me dei muito bem com ele, o GNU Octave responde devagar quando utilizo ele. Prefiro o Gnuplot por enquanto mesmo, pelo que estou vendo vai demorar para esse fltk ficar estável.

Você conhece o manual/tutorial oficial do GNU Octave?

GNU Octave: Free Your Numbers
É novo no Ubuntu? Já leu o Ubuntu – Guia do Iniciante 2.0 ?
Experimente o Xubuntu 14.04 !