Boa Noite a todos!<br><br>Despois de muito tempo longe, só observando as discussões, venho deixar minhas impressões sobre o uso do R<br>em dispositivos móveis e GPU. Como dizia um seriado infantil da minha época... senta que lá vem história...rs<br>
<br>Sobre os dispositivos moveis, vejo a utilização do R em sistemas embarcados, especificos como uma valiosa alternativa,<br>p. ex, na empresa que eu trabalho, utiliza-se (90%) análises para dados de experimentação, os quais são pequenos (em termos de bytes)<br>
e a complexidade de execução é baixa. Nesse contexto, o pesquisador pode "em campo" ter algumas respostas rápidas (análise descritiva)<br>na palma-da-mão. Outros exemplos similares podem ter semelhante desenvolvimento... ou seja... quando o processo é rotineiro e definido<br>
estas análises podem ser codificadas e embarcadas em um software portátil.<br><br>Lembro que o Software Livre e as plataformas iOS têm problema de implementação devido a licenciamento (Apple x Free Software Fundation), <br>
mais isso é discussão para outra mensagem....<br><br>Sobre a programação em GPU vs CPU (multicore) digo, por experiência própria: desenvolver para GPU NÃO irá resolver todos os problemas,<br>em alguns casos, resolve-se alguns e criam-se outros...<br>
As minhas impressões são:<br><br>* O melhor caminho é um mix entre CPU (multicore) e GPU, onde exista otimização para execução de calculos matriciais ou simulações na GPU<br>e o restante do processamento na CPU. Lembro que tudo depende do problema em questão, há casos e casos...<br>
<br>* Simulações estocásticas, alguns modelos bayesianos e congeneres podem ser "facilmente portados" para programação em GPU, mas não todo o algoritmo, mas apenas uma parte limitada do mesmo.<br><br>* Outro detalhe importante é a escolha do framework de trabalho (CUDA, OpenCL, etc), o custo de aprendizado da CUDA para a maioria dos<br>
casos não compensa (minha opnião) pois é uma forma completamente nova de pensar e programar (Imagine pensar em ponteiros e calculos para indices matriciais a todo codigo ou kernel, na denomição da CUDA para reescrever um algoritmo para LU, QR ou SVD?!?) sem contar o fato de ser padrão proprietário.... Apesar de ter uma versão inicial da BLAS (CUBLAS) a disposição com a limitação de trabalhar com ponteiros simples e 32-bits<br>
<br>* A OpenCL e padrão livre e mais "próxima" da programação C usual... com alguns ajustes e preparos, o mesmo algoritimo pode comportar programação para GPU/CPU de acordo com a disponibilidade na máquina em execução (inclusive com o uso de OpenMP para multicore na CPU)<br>
<br>Só como exemplo, há casos onde temos algumas máquinas com GPU sem uso o que diminiu a necessidade de comprar novas com mais cores....<br><br>Até o presente momento, em alguns testes iniciais, o problema principal é a limitação de memória para troca de informações entre os processos CPU -> GPU -> CPU. Mas com o custo das GPU em declinio... em algum momento poderemos trabalhar com um pouco mais de "folga". Cabe ressaltar que o $$ das placas AMD (ATI) são quase 1/3 de alguns modelos da nVidia (com processamento e memória para uma brincadeira séria), um modelo TELSA da nVidia pode chegar fácil a R$ 30.000,00 :-o<br>
<br>Em resumo, para saber se é a hora de tormar partido entre CPU vs GPU... ainda não... tudo tem porém, ses, etc pois cada caso deve ser estudado com muito "carinho" e principalmente testar... testar e testar!<br>
<br>Para alguns, o molho pode sair mais caro que a carne.... (certo Benilton?)<br><br>[]'s<br><br clear="all">Márcio Nicolau<br>
<br><br><div class="gmail_quote">Em 1 de março de 2012 21:24, Fernando Mayer <span dir="ltr"><<a href="mailto:fernandomayer@gmail.com">fernandomayer@gmail.com</a>></span> escreveu:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Jogando lenha na fogueira (:<br>
<br>
gputools promete otimizações incríveis usando a tecnologia CULA da nVidia<br>
<br>
<a href="http://brainarray.mbni.med.umich.edu/Brainarray/Rgpgpu/" target="_blank">http://brainarray.mbni.med.umich.edu/Brainarray/Rgpgpu/</a><br>
<br>
Ainda não testei. Alguém?<br>
<br>
[]s,<br>
<br>
---<br>
Fernando Mayer<br>
Universidade Federal de Santa Catarina - UFSC<br>
Departamento de Ecologia e Zoologia - ECZ/CCB<br>
URL: <a href="http://sites.google.com/site/fernandomayer" target="_blank">http://sites.google.com/site/fernandomayer</a><br>
e-mail: fernandomayer [@] <a href="http://gmail.com" target="_blank">gmail.com</a><br>
<br>
<br>
<br>
2012/3/1 Benilton Carvalho <<a href="mailto:beniltoncarvalho@gmail.com">beniltoncarvalho@gmail.com</a>>:<br>
> programar para usar a GPU para fazer processamentos usualmente feitos em CPU. b<br>
><br>
> 2012/3/1 Rodrigo Sant'Ana <<a href="mailto:rodrigo.gringo@gmail.com">rodrigo.gringo@gmail.com</a>>:<br>
>> Concordo, em termos de custo beneficio final, ainda vale mais a pena<br>
>> manter um Notebook, ou até mesmo<br>
>> netbook, e concordo tbm, e foi exatamente isso que quis dizer no email<br>
>> anterior, que para "produção" não vale a pena ainda.<br>
>> Mas penso que como ferramenta secundária/auxiliar ao seu PC de<br>
>> produção possa trazer algum beneficio por agora, só isso.<br>
>><br>
>> Mas você está certo. Já havia entendido o que você quis dizer, só<br>
>> estava ressaltando que esta<br>
>> é uma área de inovação para atuação do R e até mesmo como uma área de<br>
>> desenvolvimento em ascensão.<br>
>><br>
>> Quando você diz em programar para GPU, você diz para optimizarmos<br>
>> funções para utilizar melhor as funções gráficas da placa, ou<br>
>> para utilizar o processador da placa de video como um processador fisico?<br>
>><br>
>><br>
>><br>
>><br>
>> _______________<br>
>> Rodrigo Sant'Ana<br>
>> Oceanógrafo<br>
>><br>
>><br>
>><br>
>> Em 1 de março de 2012 18:36, Benilton Carvalho<br>
>> <<a href="mailto:beniltoncarvalho@gmail.com">beniltoncarvalho@gmail.com</a>> escreveu:<br>
>>> Rodrigo,<br>
>>><br>
>>> o que eu quero dizer eh que, se vc for usar um dispositivo movel com<br>
>>> teclado externo e um processador que nao seja compativel com i386 ou<br>
>>> x86_64, entao (hoje!) eh melhor vc usar um laptop ou, se vc estiver<br>
>>> mesmo preocupado com tamanho/peso, use um netbook que custa 1/3 do<br>
>>> valor e vai fazer exatamente o q tablet faria em termos de R...<br>
>>><br>
>>> Se voce estiver nos EUA, o Asus Transformer Prime vai te custar, pelo<br>
>>> menos, USD 499 (tablet) + USD 149 (dock) = USD 648.... E, por esse<br>
>>> valor, vc compra algum Toshiba com processador i5 e 6GB RAM.... Vai<br>
>>> ter ate' quem prefira comprar um Dell com processador i3 com os 499 e<br>
>>> um netbook por alguns 200 dolares... Ai' vai do custo-beneficio de<br>
>>> cada um...<br>
>>><br>
>>> Se for para eu produzir algo de util sem um teclado externo, eu nao<br>
>>> consigo ficar mais de 10min usando um tablet. Se for para usar um<br>
>>> tablet com teclado externo, prefiro um (net/note)book. (preferencia<br>
>>> pessoal: mais aplicativos disponiveis, melhor suporte de<br>
>>> software/hardware e por ai' vai)<br>
>>><br>
>>> O mesmo aplica-se (novamente, *pelo menos por enquanto*) ao caso do<br>
>>> Ubuntu com seu desktop para Android: se vc nao tiver um teclado<br>
>>> externo e um monitor, continua "inutil" para nossas aplicacoes.<br>
>>><br>
>>> Concordo que, cada vez mais, teremos `a disposicao equipamentos mais<br>
>>> portateis. Entretanto, para "producao" ainda ficaremos dependentes de<br>
>>> teclado e bateria por mais alguns (poucos, espero) anos...<br>
>>><br>
>>> Enquanto isso, todo o exercicio de rodar R (ou equivalentes de outros<br>
>>> setores, etc) sob Android ou iOS vale (como ja' dito pelo Leonard)<br>
>>> pela prova do conceito e inovacoes que ainda virao disso... Mas, ainda<br>
>>> nao para "producao"... not yet..<br>
>>><br>
>>> Comentario provocativo: os comentarios acima tambem valem para os<br>
>>> "beneficios" da programacao para GPU vis-a-vis prog. para CPU...<br>
>>><br>
>>> b<br>
>>><br>
>>><br>
>>> 2012/3/1 Rodrigo Sant'Ana <<a href="mailto:rodrigo.gringo@gmail.com">rodrigo.gringo@gmail.com</a>>:<br>
>>>> Pô Benilton concordo com você em alguns pontos. Mas acho que podemos<br>
>>>> rodar algumas rotinas em tablets sim. Esse Asus vem com um dock de<br>
>>>> teclado bastante interessante, e talvez, para algumas matérias básicas<br>
>>>> e scripts simples, como mesmo calcular uma média, desvio padrão,<br>
>>>> tabela de frequencia, histogramas, teste t, e outros tipos de<br>
>>>> inferências mais comuns e simples porém didáticas e necessárias para<br>
>>>> uma sala de aula, talvez não no nível de aprofundamento de um curso de<br>
>>>> graduação mais direcionado, mas em matérias inicias, ou em mini-cursos<br>
>>>> com bases de dados sucintas utilizadas para exemplificação, seja<br>
>>>> interessante.<br>
>>>><br>
>>>> Entendo que com grandes banco de dados não seja o caminha, mas<br>
>>>> utilizar um tablet para acesso remoto via ssh, onde o trabalho pesado<br>
>>>> será executado por um computador mais potente nos dê mobilidade, é um<br>
>>>> tecnologia interessante. Acho que a explanação do Leonardo é válida,<br>
>>>> talvez teremos celulares como computadores pessoais, realizando<br>
>>>> trabalho em conjunto com computadores mais potentes..<br>
>>>><br>
>>>> Acho bastante válido, mas entendo sua colocação Benilton, com certeza,<br>
>>>> no dia a dia de analises mais densas, não seja tão interessante.<br>
>>>><br>
>>>> Abração<br>
>>>> _______________<br>
>>>> Rodrigo Sant'Ana<br>
>>>> Oceanógrafo<br>
>>>><br>
>>>><br>
>>>><br>
>>>> Em 1 de março de 2012 15:38, Leandro Marino<br>
>>>> <<a href="mailto:leandromarino@leandromarino.com.br">leandromarino@leandromarino.com.br</a>> escreveu:<br>
>>>>> Para rodar o R via ssh você terá ter ter uma conexão ativa a internet o que<br>
>>>>> muitas vezes não é bom.<br>
>>>>><br>
>>>>> Alguns softwares, como por exemplo, o QuantumGis já estão com versões para<br>
>>>>> Android. Acho que é um caminho sim.<br>
>>>>><br>
>>>>> Cabe salientar que a Canonical (desenvolvedora do Ubuntu) já anunciou versão<br>
>>>>> do Ubuntu para Celulares e Tablets. Inclusive é possível ter um telefone da<br>
>>>>> motorola que tenha webtop como Atrix rodando o ubuntu.<br>
>>>>><br>
>>>>> Com o desenvolvimento do Windows 8 suportando processadores ARM, e linux,<br>
>>>>> acredito que seja uma futura convergencia. Acredito que em breve os<br>
>>>>> celulares serão nossos computadores pessoais... :)<br>
>>>>><br>
>>>>><br>
>>>>><br>
>>>>> Atenciosamente,<br>
>>>>> Leandro Marino<br>
>>>>> <a href="http://www.leandromarino.com.br" target="_blank">http://www.leandromarino.com.br</a> (Fotógrafo)<br>
>>>>> <a href="http://est.leandromarino.com.br/Blog" target="_blank">http://est.leandromarino.com.br/Blog</a> (Estatístico)<br>
>>>>> Cel.: <a href="tel:%2B%2055%2021%209845-7707" value="+552198457707">+ 55 21 9845-7707</a><br>
>>>>> Cel.: <a href="tel:%2B%2055%2021%208777-7907" value="+552187777907">+ 55 21 8777-7907</a><br>
>>>>><br>
>>>>><br>
>>>>><br>
>>>>> Em 1 de março de 2012 15:22, Rodrigo Sant'Ana <<a href="mailto:rodrigo.gringo@gmail.com">rodrigo.gringo@gmail.com</a>><br>
>>>>> escreveu:<br>
>>>>><br>
>>>>>> Depende Leonard,<br>
>>>>>><br>
>>>>>> existem tablets hoje em dia bastante robustos, um exemplo é o Asus<br>
>>>>>> Transformer Prime (sem querer fazer propaganda. Que vem com um<br>
>>>>>> processador Quad-core da nVidia, num é a solução, nem se compara a um<br>
>>>>>> PC. Mas ter o R rodando nele, para rotinas rápidas, talvez seja<br>
>>>>>> funcional para quem trabalha viajando muito!<br>
>>>>>><br>
>>>>>> Só quis colocar a ideia, pois lembrei destas novas gerações de<br>
>>>>>> tablets, e até mesmo, de uma necessidade que eu compartilho, pois acho<br>
>>>>>> interessante ter esta mobilidade no uso do R, em um tablet. Para aulas<br>
>>>>>> em geral, para demonstrações de códigos em palestras, para uso em<br>
>>>>>> qualquer ocasião.<br>
>>>>>><br>
>>>>>> Outra coisa, achei bem interessante essa parte do acesso ao R via ssh,<br>
>>>>>> talvez seja um tópico interessante para iniciar a discussão aqui na<br>
>>>>>> lista, com demonstrações e tudo mais! Pois eu desconheço completamente<br>
>>>>>> e acho super interessante e importante.<br>
>>>>>><br>
>>>>>> Abraço a todos!<br>
>>>>>><br>
>>>>>> _______________<br>
>>>>>> Rodrigo Sant'Ana<br>
>>>>>> Oceanógrafo<br>
>>>>>><br>
>>>>>><br>
>>>>>><br>
>>>>>> Em 29 de fevereiro de 2012 13:06, Benilton Carvalho<br>
>>>>>> <<a href="mailto:beniltoncarvalho@gmail.com">beniltoncarvalho@gmail.com</a>> escreveu:<br>
>>>>>> > Concordo contigo, Leonard... mas como o OP nao perguntou minha<br>
>>>>>> > opiniao, ne'? rsrsrs<br>
>>>>>> > _______________________________________________<br>
>>>>>> > R-br mailing list<br>
>>>>>> > <a href="mailto:R-br@listas.c3sl.ufpr.br">R-br@listas.c3sl.ufpr.br</a><br>
>>>>>> > <a href="https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br" target="_blank">https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br</a><br>
>>>>>> > Leia o guia de postagem (<a href="http://www.leg.ufpr.br/r-br-guia" target="_blank">http://www.leg.ufpr.br/r-br-guia</a>) e forneça<br>
>>>>>> > código mínimo reproduzível.<br>
>>>>>> _______________________________________________<br>
>>>>>> R-br mailing list<br>
>>>>>> <a href="mailto:R-br@listas.c3sl.ufpr.br">R-br@listas.c3sl.ufpr.br</a><br>
>>>>>> <a href="https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br" target="_blank">https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br</a><br>
>>>>>> Leia o guia de postagem (<a href="http://www.leg.ufpr.br/r-br-guia" target="_blank">http://www.leg.ufpr.br/r-br-guia</a>) e forneça<br>
>>>>>> código mínimo reproduzível.<br>
>>>>><br>
>>>>><br>
>>>>><br>
>>>>> _______________________________________________<br>
>>>>> R-br mailing list<br>
>>>>> <a href="mailto:R-br@listas.c3sl.ufpr.br">R-br@listas.c3sl.ufpr.br</a><br>
>>>>> <a href="https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br" target="_blank">https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br</a><br>
>>>>> Leia o guia de postagem (<a href="http://www.leg.ufpr.br/r-br-guia" target="_blank">http://www.leg.ufpr.br/r-br-guia</a>) e forneça código<br>
>>>>> mínimo reproduzível.<br>
>>>> _______________________________________________<br>
>>>> R-br mailing list<br>
>>>> <a href="mailto:R-br@listas.c3sl.ufpr.br">R-br@listas.c3sl.ufpr.br</a><br>
>>>> <a href="https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br" target="_blank">https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br</a><br>
>>>> Leia o guia de postagem (<a href="http://www.leg.ufpr.br/r-br-guia" target="_blank">http://www.leg.ufpr.br/r-br-guia</a>) e forneça código mínimo reproduzível.<br>
>>> _______________________________________________<br>
>>> R-br mailing list<br>
>>> <a href="mailto:R-br@listas.c3sl.ufpr.br">R-br@listas.c3sl.ufpr.br</a><br>
>>> <a href="https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br" target="_blank">https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br</a><br>
>>> Leia o guia de postagem (<a href="http://www.leg.ufpr.br/r-br-guia" target="_blank">http://www.leg.ufpr.br/r-br-guia</a>) e forneça código mínimo reproduzível.<br>
>> _______________________________________________<br>
>> R-br mailing list<br>
>> <a href="mailto:R-br@listas.c3sl.ufpr.br">R-br@listas.c3sl.ufpr.br</a><br>
>> <a href="https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br" target="_blank">https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br</a><br>
>> Leia o guia de postagem (<a href="http://www.leg.ufpr.br/r-br-guia" target="_blank">http://www.leg.ufpr.br/r-br-guia</a>) e forneça código mínimo reproduzível.<br>
> _______________________________________________<br>
> R-br mailing list<br>
> <a href="mailto:R-br@listas.c3sl.ufpr.br">R-br@listas.c3sl.ufpr.br</a><br>
> <a href="https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br" target="_blank">https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br</a><br>
> Leia o guia de postagem (<a href="http://www.leg.ufpr.br/r-br-guia" target="_blank">http://www.leg.ufpr.br/r-br-guia</a>) e forneça código mínimo reproduzível.<br>
_______________________________________________<br>
R-br mailing list<br>
<a href="mailto:R-br@listas.c3sl.ufpr.br">R-br@listas.c3sl.ufpr.br</a><br>
<a href="https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br" target="_blank">https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br</a><br>
Leia o guia de postagem (<a href="http://www.leg.ufpr.br/r-br-guia" target="_blank">http://www.leg.ufpr.br/r-br-guia</a>) e forneça código mínimo reproduzível.<br>
</blockquote></div><br>