Acabei o mestrado!
(29 Aug 2009 - 13:34) A primeira coisa a dizer é: FOI SENSACIONAL A apresentação da minha dissertação aconteceu no dia 27/08/2009 e tudo ocorreu muito bem. Yuri Ki me ajudou a filmar toda apresentação e já publiquei no vimeo.com. Os slides também estão disponíveis: http://www.tecgraf.puc-rio.br/~amadeu/mestrado-slides.pdf. O tema é "Implantação de Componentes de Software Distribuídos Multi-Linguagem e Multi-Plataforma". Temos 3 contribuições principais:- Levantamento de critérios de avaliação para classificar as outras tecnologias de componentes que existem. O foco dessa classificação é entender os processos de implantação de cada tecnologia. Não encontramos nenhum survey nos periódicos, portanto parece-nos ser de grande valia para outros trabalhos nessa área.
- Reuso de uma solução para empacotamento para gerir as dependências estáticas entre os componentes e artefatos nativos da plataforma ou linguagem. Tipicamente, as tecnologias de componentes não possuem um suporte adequado para instalar as dependências a artefatos externos ao modelo de componentes. Escolhemos o LuaRocks e o adaptamos para as nossas necessidades multi-linguagem. Assim, definimos que cada componente precisa ter um pacote referente que agrupa seus artefatos, portanto, usando o LuaRocks é possível dizer que um componente X depende de outros pacotes como dependências externas à modelagem de componentes ( = dependências estáticas segundo Szyperski ).
- Proposta de serviços que facilitam a implantação por níveis graduais de detalhamento sobre o mapeamento físico necessário. Nossos serviços ajudam programadores iniciantes a não precisarem lidar diretamente com a infra-estrutura de execução. Assumimos uma fase de planejamento e uma API padrão (em linguagem imperativa) que implementa todas operações da implantação (como deploy, activate, deactivate, undeploy - e outras que serão implementadas no futuro como suspend e resume).
Meu mestrado, parte 2: solução para empacotamento
(14 Jul 2008 - 13:26)Entendendo esse post
Esse também faz parte da série de posts sobre minhas investigações no mestrado na PUC-Rio. Esse trata em detalhe as alternativas que pesquisei como solução de empacotamento multi-plataforma e multi-linguagem para ajudar um sistema de componentes de software distribuídos a instalar pacotes de componentes com suporte à dependências externas e além ao modelo de componentes (também conhecidas na área de componentes como dependências estáticas). A decisão no mestrado foi reusar e modificar o LuaRocks para fornecer suporte multi-linguagem, foi uma ótima decisão, viabilizou toda a outra parte do trabalho que se referia à implantação de componentes propriamente dita e digamos mais academicamente importante (afinal academicamente sistema de pacotes é algo digamos POUQUíSSIMO? COMENTADO!). Falar como os sistemas de pacotes podem ajudar a sanear as instalações é trivial para um linux-user, mas não para um academic-guy que só quer saber de quantas referências há para "sistemas de pacotes" ! Nesses casos a comunidade das redes de software livre dão uma lição e tanta no academic way of life.
Deixemos a política nas entrelinhas ... o foco aqui é mostrar com quantos paus se faz um mestrado!
Requisitos
- permitir instalação por usuário ou projetos (área compartilhada mas não global)
- possuir resolvedor de dependências externas
- permitir remoção mediante verificação de dependências = se remover X do qual Y,Z dependem então remove também Y,Z
- possibilitar reuso da instalação já existente = se a biblioteca X já está instalada a resolução de dependência de qualquer Y deve reconhecer que X já está instalada
- (idealmente) permitir sobrecarga e resolução de conflitos entre dependências que provém as mesmas interfaces/serviços
- possuir API de alto nível para automatizar a instalação (pré e pós install), remoção (pré e pós remove), resolução de dependências e reconfiguração (restart de serviços)
- permitir extensão da abstração de dependências para descrever dependências entre componentes SCS
- suportar multiplataforma, no sentido de ter compatibilidade com o gerenciamento em plataformas não-UNIX
- suportar multilinguagem, no sentido de gerenciar pacotes nas linguagens Lua, C++ e Java
- permitir uso de repositórios de pacotes
Levantamento de características
- Critérios de comparação interessantes (por zeroinstall) : http://0install.net/links.html , http://0install.net/matrix.html
Projetos muito Interessantes
- EDOS + Mancoosi
haskell
- Cabal ( http://www.haskell.org/cabal ): Cabal is a system for building and packaging Haskell libraries and programs It defines a common interface for package authors and distributors to easily build their applications in a portable way. Cabal is part of a larger infrastructure for distributing, organizing, and cataloging Haskell libraries and programs. Specifically, the Cabal describes what a Haskell package is, how these packages interact with the language, and what Haskell implementations must to do to support packages. The Cabal also specifies some infrastructure (code) that makes it easy for tool authors to build and distribute conforming packages. The Cabal is only one contribution to the larger goal. In particular, the Cabal says nothing about more global issues such as how authors decide where in the module name space their library should live; how users can find a package they want; how orphan packages find new owners; and so on.
- Discussão sobre sistemas de build e packaging: http://www.nabble.com/Version-control-systems-td18827479i80.html
- Geoffrey Clemm, Odin Build Tool : http://portal.acm.org/citation.cfm?id=77607&dl=GUIDE&dl=ACM
- Walter F. Tichy, Smart Recompilation : http://portal.acm.org/citation.cfm?id=5959&dl=ACM&coll=portal
debian
-
building: dpkg-buildpackage e outros utilitários obrigam (?!) o uso de crosscompiling uma vez que pode ser difícil ter o dpkg-dev instalado em vários tipos de hosts
-
install: depende de arquivos em diretórios globais, mas pode usar diretórios por usuário = isso causa conflito com a instalação global
- porte do dpkg para MS Windows : http://osdir.com/ml/linux.debian.ports.windows/2007-12/msg00001.html
- usar mingw mesmo para compilar o dpkg ou ao menos a libapt
- porte da infra-estrutura debian para Interix (SFU/SUA) - veja abaixo na seção sobre compatibilidade com Windows
-
em que ponto exatamente se encontra o resolvedor de dependências? É possível reusar o parser do control e o resolvedor de dependências?
-
- implementar um módulo Lua frontend para dpkg semelhante a dpkg-ruby + libdpkg-ruby1.8 (depende de dpkg instalado)
-
É possível tornar o parser do control e o resolvedor de dependências um módulo Lua?
-
- motivação cross-compiling: ter bibliotecas nativas para o windows usando o mingw para poder ser usadas junto com MSVC e ser redistribuídas com softwares windows nativos
- discussões sobre cross-compiling com mingw:
- http://lists.debian.org/debian-mentors/2006/03/msg00115.html
- http://lists.debian.org/debian-mentors/2006/03/msg00216.html
- http://wiki.njh.eu/Cross_Compiling_for_Win32
- https://dev.njh6.de/svn/njh/any2deb/
- CFLAGS="-mms-bitfields -march=i386" CC=i586-mingw32msvc-gcc LD=i586-mingw32msvc-ld
- discussao pessoal:
- dpkg-cross: renomeia nomes de pacotes no control, bem como os diretorios com nomes=nome_pacote. Exemplo: libtool.deb -- dpkg-cross --> libtool-w32-i586-cross.deb
- dpkg-buildpackage com modificação para mingw
- gera pacotes em nova arquitetura (w32-i586)
- gera pacotes prefixado em /usr/$(DEB_HOST_GNU_TYPE)
- dado que gera binários para w32-i586 então no porte do dpkg no windows precisa reconhecer esta arquitetura
- uma alternativa para não precisar fazer porte do dpkg no windows e ter um ambiente cygwin que instala e gerencia os pacotes nativos windows
- outra alternativa é fazer instalação remota (no filesystem windows) via compartilhamento samba e possivelmente precisando do schroot/chroot
nix
- suporte a MS Windows via Cygwin
- http://en.wikipedia.org/wiki/User:Gwern/Nix_Package_Manager , http://nixos.org/patchelf.html , http://nixos.org/nixpkgs.html
- hash de pacotes baseado nos arquivos fonte antes do building do pacote
-
usa repositórios? - sim, faz download a partir do nome do pacote (parecido com apt-get install)
-
segurança no compartilhamento entre usuários?
-
interopera com pacotes já instalados (.deb, .rpm)?
- http://nixos.org/releases/nix/nix-0.11/manual
zeroinstall
- sem suporte a MS Windows porque usa python.os.fork() e não há implementação disso para windows!
- provavelmente SFU/SUA/Cygwin resolvem este problema.
- fazer um wrapper para spawn para portabilidade : http://effbot.org/librarybook/os.htm
- http://www.python.org/doc/faq/windows/
- refatorar o zeroinstall para remover a necessidade do fork
- detalhes do empacotamento : http://0install.net/injector-packagers.html
- hash de pacotes baseado na árvore de diretório gerada pelo building do pacote
-
usa repositórios? - descentralizado e não depende de repositórios
-
impede uso de repositórios?
-
segurança no compartilhamento entre usuários?
-
interopera com pacotes já instalados (.deb, .rpm)? - conversor de .deb para 0install : http://0install.net/deb2zero.html
- http://0install.net/injector-using.html
-
como remover um pacote? - Currently, they can't. You (the admin) can delete directories from /var/cache/0install.net/implementations to save space (preferably not while they're being used ;-). Ideally, we should track which users have requested which programs and remove them automatically when no-one wants them anymore. (ver "questions" no link sharing)
ipkg
- TODO olhar o site e o código para ver possíveis problemas de portabilidade : http://handhelds.org/moin/moin.cgi/Ipkg
luarocks
-
só coisas Lua ou não, se não então qual o nível de building possível - permite uso dos backends: make, cmake, comando_qualquer (scons,installshield) ou module (módulos Lua)
- embora não seja concebido para instalar outros binários é possível que instale uma vez que permite uso de Makefile
-
para ser compatível com autotools seria preciso definir um novo backend baseado no make atual - Implementado um build.autotools e build.tecmake ainda preliminares, mas que são úteis para compilar pacotes como openssl, openldap, sasl
-
suportar a instalação de pacotes de várias linguagens - Natural é atribuir nomes parametrizados pela linguagem (like debian-policy to liblangXYZ) de suporte: lua, java, cpp
- Útil para os pacotes dos Componentes SCS uma vez que eles é que dependem de estar numa mesma linguagem, no caso das suas dependências externas a exemplo do openssl:
- BusAccessControl_lua.all.rock dependsOn lualdap_lua.rock dependsOn openldap.rock
- BusOiLConnector_cpp.x86.rock dependsOn liboilall_cpp.rock dependsOn lua
- MyComponent_lua.all.rock dependsOn openldap AND sasl2 AND lua
- PingPong.rockspec, PingPong_lua.all.rock dependsOn oil_lua AND scs_lua.all.rock
- Útil para os pacotes dos Componentes SCS uma vez que eles é que dependem de estar numa mesma linguagem, no caso das suas dependências externas a exemplo do openssl:
- Outra opção é estender as informações de plataforma para incluir linguagem para que o tratamento do perplatform_overrides cuide de instalar archs={*lua.x86*,*java.all*,*cpp.solaris*}
- Natural é atribuir nomes parametrizados pela linguagem (like debian-policy to liblangXYZ) de suporte: lua, java, cpp
-
suportar a carga em cada contêiner - O instalador precisa informar qual a variável de ambiente apropriada para cada linguagem afim de montar o LUA_PATH, CLASSPATH ou LD_LIBRARY_PATH de forma que o método de loading da linguagem encontre o pacote com versão especificada, bem como suas dependências.
- LUA : luarocks no ato do require já busca do manifest.repository os contextos (formando package.path e package.cpath) e assim realiza a carga
- JAVA : ClassLoader precisa receber um classpath montado com os contextos da resolução de dependências,
- C/C++ : o contêiner para realizar a carga dinâmica (dlopen) precisa montar o contexto na variável LD_LIBRARY_PATH
- reuso do luarocks.deps pela comunicação contêiner <-> exnode:installer :
self.ComponentLoader:setContext( installer:getContext(componentId,self.mylang) )
- O instalador precisa informar qual a variável de ambiente apropriada para cada linguagem afim de montar o LUA_PATH, CLASSPATH ou LD_LIBRARY_PATH de forma que o método de loading da linguagem encontre o pacote com versão especificada, bem como suas dependências.
-
premake http://premake.sourceforge.net/writing_scripts
luadist
- http://luadist.sourceforge.net - LuaDist? is a cross-platform distribution of the Lua programming language that includes networked module management and deployment of source based or binary modules. Unlike projects like LuaRocks? the main focus of LuaDist? is full automatization and standalone deployment including the management of external libraries on the Linux(UNIX), Windows and Mac platforms. Uses the CMake approach to build and parse automatic dependencies.
- Muito interessante, mas:
- Permite instalação simultânea de múltiplas versões dos pacotes? Justificativa: precisamos manter instalado múltiplas versões dos pacotes Lua bem como das bibliotecas de sistema (podemos precisar da OpenLDAP? tanto na sua versão 2.1.x quanto 2.4.x).
- Permite outras formas de compilação além do CMake? Justificativa: muitas bibliotecas de sistemas podem precisar ser compiladas e provavelmente usa-se ferramentas de compilação diferentes (autotools, make personalizados, scripts personalizados, etc).
- Possui noção de árvores de instalação que permitem a gerência via arquivo de manifesto (como no LuaRocks?)? Justificativa: os arquivos de manifesto do luarocks permitem a adoção de várias árvores de instalação simultâneas (para várias plataformas, por exemplo), assim ao usar o comando do luarocks pode-se usar o parâmetro --to=/home/user/install-linux-x86_64/, por exemplo.
- É fácil manter um repositório ou mesmo usar a própria árvore de instalação como repositório? Justificativa: o LuaRocks? apresenta uma funcionalidade interessante que simplifica a gerência do repositório uma vez que basta ter na mesma árvore os pacotes src.rock ou .rock.
clickonce (MS Visual Studio)
- ClickOnce Deployment: projetos C++ - http://msdn.microsoft.com/en-us/library/ms235287(VS.80).aspx , projetos C#/J# - http://msdn.microsoft.com/en-us/library/t71a733d(VS.80).aspx
Alternativas para compilação
Hamster
- Can be used as a generic 'make replacement' for almost any project. It even contains a 'Try' method that has automake-like functionality (detecting whether some compilation would fail or succeed at build time). Support: gmake, scons, nmake. http://kotisivu.dnainternet.net/askok/hamster/
-
Interessante observação dos autores (parece-me que substitui/expande bem o Tecmake): For professional work I warmly recommend SCons, a Python-based build tool that knows how to rebuild when only build parameters have changed (makefiles don't do that). Even with makefiles, Hamster takes care of header dependencies automatically (no need to list your headers, or do 'make dep'). Hamster's API derives from that of SCons, and even the original name of the project was SCons/Lua.
Scons
Compatibilidade MS Windows
- SFU --- evolução ---> SUA (SFU deve ser mantido até 2009!)
-
Diferenças entre Cygwin e ServicesForUnix (SFU)
-
Impacto de desempenho do SFU (usar benchmarks do shootout.alioth.debian.org)
- Introduction to Microsoft Windows Services for UNIX 3.5 : http://technet.microsoft.com/en-us/library/bb463212.aspx
- Interopsystems open source tools : http://www.interopsystems.com/community/default.aspx
- Windows Services for UNIX : http://technet.microsoft.com/en-us/interopmigration/bb380242.aspx
- SFU Warehouse : http://www.interopsystems.com/community/warehouse.aspx
- SFU Installation : http://www.microsoft.com/DOWNLOADS/details.aspx?familyid=896C9688-601B-44F1-81A4-02878FF11778&displaylang=en
- Gerenciador de pacotes Interix (SFU) : http://www.interopsystems.com/community/pkg_install.htm
- UNIX Interoperability integrated on Windows Server >= 2003 : http://blogs.msdn.com/sfu/archive/2007/04/12/services-for-unix-vs-windows-server-2003-r2-unix-interoperability.aspx
- Blog do gerente de projeto do SUA/SFU : http://blogs.msdn.com/shan/default.aspx
- Projeto do porte de Debian para Interix (SFU/SUA) : http://www.debian-interix.net
- Bug para criação da lista oficial do porte do Debian para Interix : http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=441094
- Problemas com a conta root <-> Administrator : http://gridengine.info/articles/2007/02/06/notes-about-grid-engine-on-windows
- Outras opções:
- Usar mingw (site novo, versão nova - gcc4) por ser mais simples e menos dependente das tecnologias microsoft: http://www.mingw.org , http://gnuwin32.sourceforge.net/packages/libgw32c.htm
Outros links
- http://developer.mozilla.org/en/docs/Windows_Build_Prerequisites
- http://developer.mozilla.org/en/docs/Building_on_Windows_with_SFU_(Interix)
- http://packages.debian.org/unstable/admin/feta
- !OpenLDAP porting to MinGW
- Discussão sobre MinGW, OpenLDAP e OpenSSL
- http://www.winkde.org/pub/kde/ports/win32
- http://www.mancoosi.org/reports - projeto europeu posterior ao EDOS sobre "_developing tools for the system administrator. We pursue two main avenues: 1. Develop mechanisms that provide for rollbacks of failed upgrade attempts; 2. Develop better algorithms and tools to plan upgrade paths based on various information sources about software packages and on optimization criteria (workpackages 4 and 5)_"
Compilação openldap,openssl via mingw no MS Windows
- instala msys
- instala regex
- instala zlib
- instala perl5
- baixa openssl do cvs
- ln -s /mingw/include /usr/include
- ln -s /mingw/lib /usr/lib
- ./config --prefix=/mingw --openssl-dir=/mingw/openssl/ shared
- editar util/mklink.pl e definir symlinks_exists como FALSE para usar copia (pois symlink é dummy no MSYS)
- make
- faltando definicoes: CERT_SYSTEM_STORE_CURRENT_USER , CERT_STORE_READONLY_FLAG , CRYPT_KEY_PROV_INFO , CERT_STORE_PROV_SYSTEM_A (... a maioria deveria estar em wincrypt.h)
- versão 0.9.8h tem versão instalável: http://www.slproweb.com/products/Win32OpenSSL.html
- baixa openldap 2.4.11
Meu mestrado, parte 1: pesquisa e temas
(08 May 2008 - 05:36)Entendendo esse Post
Essa blogada estava como rascunho há bastante tempo, digamos 1 ano de 2 meses para ser exato! Nesse post eu organizei minhas pesquisas e temas que definiram meu mestrado em computação pela PUC-Rio. Acho interessante compartilhar esse conteúdo porque na academia pouco de faz de concreto para divulgar amplamente "como as coisas funcionam". Muitos projetos de pesquisa se limitam a manter privados seus meios, percalços e detalhes no entorno da produção científica. Aqui eu tento listar todas as possibilidades que estiveram e ainda fazem parte do contexto do meu trabalho de mestrado. Portanto, espero que esse conteúdo seja útil a outros que tenham interesses de pesquisa em áreas semelhantes à minha.-
A dissertação do mestrado está saindo.. assim que finalizá-la, colocarei aqui no Blog !
Deployment de Aplicações Distribuídas: Reuso das Soluções de Empacotamento e Construção de um Framework
Estudos realizados
- Deployment de componentes de software : http://www.inf.puc-rio.br/~ajunior/puc/inf2545/artigos/monografia/ (monografia + slides)
-
Deployment de componentes de software (continuação) : http://www.inf.puc-rio.br/~ajunior/puc/inf2556/ (monografia + slide-monografia + slide1,2,3 com apresentação dos outros artigos)
- Soluções para empacotamento : BlogDraftPostAmadeuJunior20080714122730?
-
Desenvolvimento de um protótipo usando LuaRocks como solução para empacotamento : http://www.inf.puc-rio.br/~ajunior/puc/inf2102
Deployment de Software
Processo de deployment em open-source:- EDOS - Environment for the development and Distribution of Open Source software. The project aims to study and solve problems associated with the production, management and distribution of open source software packages: http://www.edos-project.org/xwiki/bin/view/Main/Publications
- Cross-Compiling for Win32 - http://www.mail-archive.com/debian-embedded@lists.debian.org/msg02526.html
- Debian GNU/w32 port - http://debian-cygwin.sourceforge.net/
- Software Testing Automation Framework (STAF) - http://staf.sourceforge.net/index.php
- Vantagens de compilar programas win32 a partir do GNU/Linux: http://www.mail-archive.com/debian-embedded@lists.debian.org/msg02530.html
- Questões a entender:
- Entender o cgwin e mingw
- Quais partes são necessárias para deployment dos pacotes ?
- Quais dependências para portar apt/dpkg/enfim para win32 ?
- Existe binding do sistema de empacotamento/desempact para linguagens dinâmicas totalmente contido?
- Identificar quais as demandas reais/perfis de desenvolvedores da parte "cross-platform", ifndef???
- Pacman : sistema de instalação básico pensado para grids com tratamento primário de versões e dependências
- LuaRocks, RubyGems, CPAN entre outras ferramentas para instalar módulos de linguagens de programação : verificar como resolver dependências e versões
- iPKG is a very lightweight package management system - http://handhelds.org/moin/moin.cgi/Ipkg
- Soluções baseada em Debian cross-compiling que parecem tangíveis para plataformas w32 com alguma adaptação (quais??):
-
Nix 2006: The Purely Functional Software Deployment Model - Uma interessante dissertação onde o autor analiza algumas dificuldades e soluções simples para cross-compiling e deploy em diferentes plataformas, compatibilizando os caminhos de compilação e linkagem dinâmica.
- Zero Install:
- What's wrong with APT? : http://0install.net/compare.html
- ROX Desktop: http://roscidus.com/desktop/home
- LuaDist
Deployment em Sistemas Distribuídos
Artigos:- Kung-Kiu Lau e Zheng Wang. Software Component Models. Software Engineering, IEEE Transactions on Volume 33, Issue 10, Oct. 2007.
- Distributed Service Deployment over Programmable Networks (2001) http://citeseer.ist.psu.edu/haas01distributed.html
- A Hierarchical Mechanism for the Scalable Deployment of Services over Large Programmable and Heterogeneous Networks (2001) - http://citeseer.ist.psu.edu/haas01hierarchical.html
- Component Search Service and Deployment of Distributed Applications http://doi.ieeecomputersociety.org/10.1109/DOA.2001.954078
- On Service Deployment on Peer-to-Peer Networks (2001) - http://citeseer.ist.psu.edu/535291.html
- Cross Compiling for Win32 - http://wiki.njh.eu/Cross_Compiling_for_Win32
- Fabio Kon, Jeferson Roberto Marques, Tomonori Yamane, Roy H. Campbell, and M. Dennis Mickunas. Design, Implementation, and Performance of an Automatic Configuration Service for Distributed Component Systems. In Software: Practice and Experience, 35(7), pp. 667-703, May 2005.
-
Geoff Coulson, Gordon Blair, et al. A Generic Component Model for Building Systems Software. Lancaster University. ACM Transactions on Computer Systems (TOCS). Volume 26 , Issue 1, February 2008.
-
Manolios, P., Vroon, D., and Subramanian, G. 2007. Automating component-based system assembly. In Proceedings of the 2007 international Symposium on Software Testing and Analysis (London, United Kingdom, July 09 - 12, 2007). ISSTA '07. ACM, New York, NY, 61-72.
- http://www.reactos.org/en/index.html
- Infrastructure Suite aids in distributed SOA deployment http://news.thomasnet.com/fullstory/537296
- Entendendo o porquê da abordagem por containers para desacoplamento: http://www.martinfowler.com/articles/injection.html
- OpenCCM:
- Fractal Component Model and Framework:
- Trabalhos relacionados: http://ralyx.inria.fr/2006/Raweb/jacquard/uid46.html , http://ralyx.inria.fr/2006/Raweb/jacquard/uid31.html
- Deployware - Fractal Deployment Framework : http://ralyx.inria.fr/2006/Raweb/jacquard/uid27.html
- screenshot :
- site : http://fdf.gforge.inria.fr/FDF/FractalDeploymentFramework
- Areski Flissi, Jérémy Dubus, Nicolas Dolet and Philippe Merle. Deploying on the Grid with DeployWare In 8th International Symposium on Cluster Computing and the Grid (CCGRID'08), pages 177 - 184, Lyon, France, May 18--22 2008. IEEE.
- screenshot :
- Adage:
- CoRDAge:
- Author's page: http://www.irisa.fr/paris/web/Member-Home-Pages/view-12.html
- Project page: http://cordage.gforge.inria.fr
- Some features:
- Proposes a uniform interface to various reservation and deployment tools
- Offers generic and specific actions to different type of applications
- Shares unused reserved resources among applications of a single user
- Easy way to check for application termination
- A very preliminary prototype has been implemented and evaluated (Voichita Almasan, master thesis 2006)
- Handles interactions between OAR and ADAGE
-
TakTuk: TakTuk is a tool for deploying parallel remote executions of commands to a potentially large set of remote nodes. It spreads itself using an adaptive algorithm and sets up an interconnection network to transport commands and perform I/Os multiplexing/demultiplexing. The TakTuk mechanics dynamically adapt to environment (machine performance and current load, network contention) by using a reactive work-stealing algorithm that mixes local parallelization and work distribution.
- DAnCE:
- Relacionado ao CoSMIC do Schimdt : http://www.dre.vanderbilt.edu/cosmic/html/overview.shtml
- http://www.dre.vanderbilt.edu/cosmic/html/launching.html
- OpenCOM:
- Plastik - Managing Dynamic Reconfiguration in Component- based Systems - http://www.comp.lancs.ac.uk/~geoff/Publications/EWSA05.pdf
- Gridkit:
- http://www.comp.lancs.ac.uk/~geoff/Publications/
- Cai, W., Coulson, G., Grace, P., Blair, G.S., Mathy, L., Yeung, W.K., The Gridkit Distributed Resource Management Framework, Proc. European Grid Conference, Science Park Amsterdam, The Netherlands, February 14 -16 2005, published in LNCS Vol 3470, Advances in Grid Computing, ed. Sloot, Hoekstra, Priol, Reinefeld, Bubak, http://dx.doi.org/10.1007/11508380_80, pp786-796, June 2005.
- Grace, P., Coulson, G., Blair, G., Mathy, L., Yeung, W.K., Cai, W, Duce, D., Cooper, C., GRIDKIT: Pluggable Overlay Networks for Grid Computing, Proc. Distributed Objects and Applications (DOA’04), Cyprus, Oct 2004.
- Formalização:
-
Liu, Y. D. and Smith, S. F. 2006. A formal framework for component deployment. In Proceedings of the 21st Annual ACM SIGPLAN Conference on Object-Oriented Programming Systems, Languages, and Applications (Portland, Oregon, USA, October 22 - 26, 2006). OOPSLA '06. ACM, New York, NY, 325-344
-
- OpenGridForum:
- GFD.127 - Configuration Description, Deployment and Lifecycle Management Working Group (CDDLM-WG) Final Report. P. Toft, S. Loughran. 2008-03-31. Referencia:
- Outlines the requirements for creating a deployment object responsible for the lifecycle of a deployed resource document: (GFD.65 : P-REC) [SCHAEFER06]
- Specification of the API used to deploy and manage configured applications document: (GFD.69 : P-REC) [LOUGHRAN06]
- GFD.127 - Configuration Description, Deployment and Lifecycle Management Working Group (CDDLM-WG) Final Report. P. Toft, S. Loughran. 2008-03-31. Referencia:
- SmartFrog: desenvolvido pela HP para grids mas com motivação semelhante
- http://www.smartfrog.org/
- Fully Distributed Service Configuration Management, DSN2007 (Dependable Systems and Networks) : http://dslab.epfl.ch/hotdep/2007/paper8.pdf
- http://www.informatik.uni-trier.de/~ley/db/indices/a-tree/c/Cerqueira:Renato.html
- http://www.informatik.uni-trier.de/~ley/db/indices/a-tree/k/Kon:Fabio.html
- http://www.dimap.ufrn.br/~thais/Publicacoes/
- https://twiki.grid.iu.edu/twiki/bin/view/Documentation/WebHome
- Commodity Grid Toolkits: http://wiki.cogkit.org/index.php/Main_Page
- [Emmerich,02] Emmerich, W., Distributed Component Technologies and their Software Engineering Implications, Proc. of the 24th International Conference on Software Engineering, Orlando, Florida, pp. 537-546, 2002.
- [Jasminka,04] Jasminka Matevska-Meyer, Wilhelm Hasselbring, and Ralf H. Reussne. Software Architecture Description supporting Component Deployment and System Runtime Reconfiguration. Software Engineering Group, Department of Computing Science, University of Oldenburg, Germany.
Paralelização de Componentes no SCS
Artigos:-
Carvalho-Junior, F. H., Lins, R. D., Corrês, R. C., Araújo, G. A., and Silva, J. C. 2007. On the design of abstract binding connectors for high performance computing component models. In Proceedings of the 2007 Symposium on Component and Framework Technology in High-Performance and Scientific Computing (Montreal, Quebec, Canada, October 21 - 22, 2007). CompFrame? '07. ACM, New York, NY, 67-76
-
Wang, N., Pundaleeka, R., and Carlsson, J. 2007. Distributed component support for integrating large-scale parallel HPC applications. In Proceedings of the 2007 Symposium on Component and Framework Technology in High-Performance and Scientific Computing (Montreal, Quebec, Canada, October 21 - 22, 2007). CompFrame? '07. ACM, New York, NY, 141-150.
-
Bigot, J. and Perez, C. 2007. Enabling collective communications between components. In Proceedings of the 2007 Symposium on Component and Framework Technology in High-Performance and Scientific Computing (Montreal, Quebec, Canada, October 21 - 22, 2007). CompFrame? '07. ACM, New York, NY, 121-130.
-
Bernholdt, D. E. 2007. Component architectures in the next generation of ultrascale scientific computing: challenges and opportunities. In Proceedings of the 2007 Symposium on Component and Framework Technology in High-Performance and Scientific Computing (Montreal, Quebec, Canada, October 21 - 22, 2007). CompFrame? '07. ACM, New York, NY, 1-10.
Dicas de LaTeX
Coisas Win32
- Serviços Win32 para compatibilidade POSIX : http://en.wikipedia.org/wiki/Microsoft_Windows_Services_for_UNIX
Rede social da Economia Solidária
(21 Mar 2009 - 22:02) A Cooperativa de Tecnologias Livres - http://www.colivre.coop.br - vêm desenvolvendo vários sistemas para o FBES (Fórum Brasileiro de Economia Solidária) e nesse contexto surgiu o sistema Noosfero - http://www.noosfero.com.br. Em particular, existe uma rede social para Economia Solidária que está sendo construída e está sendo testada no seguinte portal:
- Alguém aí usa/usou/conhece o Orkut??
- Sabemos das várias facetas boas e ruins do Orkut certo??
- Então.. porquê não participar de um "orkut para economia solidária"???
SE UNAM NESSA FORÇA !!
Como as coisas funcionam?
(21 Mar 2009 - 20:47) Realmente, não gosto muito dessa coisa de ficar postando só para deixar links.
A amplitude da Internet por vezes nos faz esquecer do realmente gostamos e do que gostaríamos de saber. É informação que talvez nem num mar venha a caber, é frustrante lembrar disso.
Meio utópico? Sim, meio. Mas muita gente vem pesquisando sobre isso em áreas das artes às humanidades (Ana, amiga da Yuri me lembrou que preciso refletir mais sobre isso!): - Precisamos mesmo de tanta informação?
- Por quê?
- Pra quem?
- O que fazer com isso?
- Por quê tão rápido?
Yuri Ki voando literalmente
(22 Jan 2009 - 17:46)Editores simples mas com recursos úteis
(22 Apr 2008 - 19:52) O dia-a-dia aqui com usuários windows às vezes me incomoda, volta e meia me deparo com alguns caras falando "você é louco de usar o VI, o Micro$merda Visual Studio é sensacional", entre outros que são fans de eclipse ("o software que te apresenta um botão que salva sua vida"). Como sou totalmente contra software proprietário e não gosto muito de IDEs avançadas adoro buscar alternativas:- https://sourceforge.net/softwaremap/trove_list.php?stquery=&sort=group_ranking&sortdir=asc&offset=20&form_cat=63
- http://www.easyeclipse.org (eclipse é chatinho pq não aceita lua, ruby, python, etc... esse projeto ae ajuda)
- eclim - set of eclipse and vim plugins which bring eclipse functionality to the vim editor - https://sourceforge.net/projects/eclim
- http://biodegradablegeek.com/2007/12/13/using-vim-as-a-complete-ruby-on-rails-ide/
- geany - muito muito bom com auto-completação (não full) e listagem de símbolos até para Lua - http://geany.uvena.de/Main/HomePage
- Editor de texto bem parecido com o gedit
- Permite trocar os temas de highlight livremente (o padrão são temas "white" e tem extensões para temas "dark")
- Permite editar TODAS as teclas de atalho, impressionante a flexibilidade que isso provê
- Ultra leve e portável (roda em windows)
- Mais rápido ao restaurar sessão
- Disponibiliza terminal em painel e atalhos F7 para compilar, F5 para rodar (em nova janela de terminal ou não)
- Tem uma noção simples para Projeto que agrupa um conjunto de arquivos e tem sessão própria
- Em sua versão nova (0.15) tem um plugin muito bom para diff que se integra ao MELD (visualizador de diff de 3-vias, capaz de gerir controles de versões - add, up, merge)
- Muito personalizável inclusive permite adicionar ações de contexto livremente
- Completion não full que só busca nos arquivos abertos, mas tem tudo para vir a ter um completion de verdade
- GeanyLua : http://www.milliwatt-software.com/jmg/notes/geany.html
- https://sourceforge.net/projects/textflow/
- cream - um mod gráfico para o vim - mas a auto-completação é pobre e bem pesadinho (comparado ao gvim)
- http://www.stambouliote.de/projects/gedit_plugins.html
- http://grigio.org/pimp_my_gedit_was_textmate_linux
- pobre e funciona como TAB do terminal: http://elias.hiex.at/gedit-plugins/
Catálogo de screenshot para o Debian
(24 Nov 2008 - 12:01) http://screenshots.debian.net/ Uma idéia simples mas fundamental, principalmente para quem adora conhecer novos softwares com interfaces diferentes, descobrir recursos convidativos. Uma forma organizada de identificar os softwares no Debian. Agora imagine o synaptic baixando esses screenshots e apresentando-os a você ?! Seria sensacional ... espero que esse website seja o primeiro passo.
Vamos divulgar. Eu mesmo só encontrei graças ao Blog do Thadeu Penna.
Como traduzir HTML para TWiki usando XSLT
(06 Oct 2008 - 15:05) Para aqueles que usam TWiki mas seu servidor não tem os editores visuais como o TinyMCE ou mesmo se você não quer poluir um tópico TWiki com código HTML, há uma alternativa que é converter HTML para a marcação TWiki. Há bibliotecas Perl para isso, mas um método alternativo e rápido é usar a conversão baseada em XSLT. É preciso instalar:- aptitude install xsltproc
- baixar o template em http://elmuerte.com/html2twiki/
- rodar:
$ xsltproc html2twiki.xslt /caminho/arquivo.html
Compiladores JIT e Firefox3.1 interpretando JavaScript mais rápido
(26 Aug 2008 - 00:15) Conforme publicado pelo Stephen Shankland, o Firefox3.1 vai incorporar uma nova tecnologia para interpretação de JavaScript baseada na tecnologia de otimização de código por Trace Trees. Ao ler o post do Stephen fiquei empolgado, uma vez que a minha pequena experiência com o LuaJIT me mostrou que no OiL o ganho de desempenho chegou a cerca de 50% em certas aplicações (no caso um sistema de eventos CORBA, conforme gráfico de desempenho do LuaJIT versus o gráfico do Lua 5.1.3). Alguns links valem a pena ser lidos:- Post original do Stephen
- Proposta do aperfeiçoamento no Firefox
- Artigo acadêmico sobre Trace Trees - Incremental Dynamic Code Generation with Trace Trees
Ativação do GLX do driver nvidia proprietário
(11 Jul 2008 - 20:31) Faz 1 ano que tenho a mesma instalação do meu Debian Lenny que é atualizada diariamente (1 ano = desde que comprei o notebook). Nesse tempo passei por diferente probleminhas no uso do módulo proprietário da Nvidia, entre eles o mais chato era que não funcionava a hibernação. Superado esse problema (superado pelo tempo = atualizações diárias), há cerca de 1 mês estou sem usar qualquer recurso GLX diretamente, pois sempre que tento rodar algo que depende do GLX o servidor X dá crash. Esse impedimento não me deixava usar aplicações OpenGL ou mesmo o Compiz Fusion ou ainda aplicações como rdesktop :0. Olhando o /var/log/Xorg.0.log:(II) Loading extension NV-GLX (II) NVIDIA(0): NVIDIA 3D Acceleration Architecture Initialized (II) NVIDIA(0): Using the NVIDIA 2D acceleration architectureMas aí também tinha:
(EE) NVIDIA(0): Failed to initialize the GLX module; please check in your X (EE) NVIDIA(0): log file that the GLX module has been loaded in your X (EE) NVIDIA(0): server, and that the module is the NVIDIA GLX module. If (EE) NVIDIA(0): you continue to encounter problems, Please try (EE) NVIDIA(0): reinstalling the NVIDIA driver.Daí eu pensei parece que está carregando dois drivers de GLX e realmente estava !!
# ls /usr/lib/xorg/modules/extensions/ -l -rw-r--r-- 1 root root 529621 Jun 25 22:26 libglx.so <-- normal -rwxr-xr-x 1 root root 1034808 Jun 16 22:54 libglx.so.100.14.19 <-- NVIDIAOu seja, têm dois arquivos e daí tenta-se carregar os dois, na prática se o módulo proprietário da Nvidia substituiria (via um dpkg-divert) o libglx.so, mas como foi uma instalação manual, obviamente, isso não foi feito!! Resolvi movendo o antigo e criando um link para o libglx.so.100.14.19 da nvidia.
(o certo seria gerar um pacote debian com o driver proprietário da Nvidia)
E assim tudo funcionou bem.
Songbird: player de mídia e navegador
(03 Jun 2008 - 03:02) Eu não conhecia o Songbird e adorei o conceito: http://getsongbird.com Valeu Vinnie pela dica !! O Songbird é bem legal para reproduzir, buscar conteúdo relacionado já na web, organizar suas músicas e mesmo baixar músicas diretamente do site e já ir gerenciando na sua audioteca. Sensacional !! Só não tem pacote debian oficial por enquanto ..
Songbird: Play music. Play the Web
Hibernate + Nvidia
(13 May 2008 - 17:02) Um post ultra-rápido... Atualmente meu Debian Lenny amd64 não conseguia hibernar corretamente, travando ao tentar. Parei 1 minuto para fazer um trace do que o GNOME chamava por baixo dos panos. Percebi que ele delega ao HAL a responsabilidade para chamar os softwares baixo nível de suspensão. Olhando os scripts de ações do HAL (/usr/lib/hal/scripts) é possível ver que ele faz alguns checks sobre o que a máquina suporta (grep /sys/power/disk) e depois, se existir, chama o s2disk contido no pacote uswsusp. Em meu caso lembrei que entre as milhares de tentativas de fazer funcionar no passado eu tinha instalado manualmente este pacote. Naquela época eu já tinha experimentado tais travamentos por incompatibilidade no descarregamento do módulo da placa gráfica da NVidia (digo o proprietário). Por isso mesmo eu vinha usando a hibernação via um script simples mas totalmente funcional em meu caso (echo disk > /sys/power/state). Assim vi que o script do HAL quando não acha o pacote uswsusp ele tenta exatamente o modo kernel de suspensão fazendo exatamente:# echo "disk" > /sys/power/statePor fim, meu problema se resumiu então a desinstalar o pacote uswsusp e agora já posso hibernar com minhas milhares de janelas rodando compiz, player de música, mensageiro, evolution sem problemas. Viva ! Recomendo que na sua partição de swap haja espaço suficiente, senão a compressão do snapshot da memória pode ser maior que a swap e daí não funcionará a hibernação. No mínimo mantenha tamanho da swap igual ao tamanho da sua memória, talvez por precaução deixar uns 10 ou 20% de margem à mais (visto que não sei o que é feito com os dados já armazenados na swap provenientes da execução normal dos programas, imagino que eles devam entrar no snapshot também).
Notebooks HP: o inferno
(21 Apr 2008 - 23:28) Mais uma vez, tenho mais um motivo para odiar a HP, não pelo seus notebooks já que em particular o meu HP Pavilion DV6308NR? é muito bom. Mas sim pela sua falta de assistência técnica worldwide (independente da sua localização). Tenho um modelo de notebook fabricado nos EUA e assim não consigo suporte no Brasil nem a pau. Já passei uma frustação tremenda tentando comprar a garantia estendida e agora foi a vez da placa wireless parar de funcionar para meu desespero.O sintoma
A placa wireless Broadcom 4311 não mostra mais o LED azul e só fica no laranja. Para piorar o lspci não mostra mais a placa em sua listagem, e no windows o device manager não lista também o hardware (nem como oculto).O problema
Aparentemente o problema é mesmo físico conforme os relatos:- http://www.asifism.com/hp-quickplay-windows-vista/trouble-with-hp-laptops-wireless-broadcom-cards/#comment-3728
- http://www.pcmech.com/article/hp-pavilion-dv6000-notebook-review/
- http://blogs.zdnet.com/Berlind/?p=853
Tentando resolver
Encontrei finalmente no site da HP:- http://forums11.itrc.hp.com/service/forums/questionanswer.do?admit=109447626+1208817452242+28353475&threadId=1104931
- http://h10025.www1.hp.com/ewfrf/wc/genericDocument?docname=c01087277&dlc=en&lc=en&cc=us
Harper: Hello Amadeu. Harper: Welcome to HP Consumer Chat Support for Pavilion NoteBooks My name is Harper. Nice to have you with us on Chat Support.How may I assist you today? Amadeu Barbosa: Hi I have a problem with my hp pavilion dv6308nr notebook.. The wireless card is not detected anymore neither is listed on device manager. Amadeu Barbosa: Seems a hardware problem, but my warranty has expired (is a refurbished notebook) Amadeu Barbosa: BUT I found this:http://h10025.www1.hp.com/ewfrf/wc/genericDocument?docname=c01087277&dlc=en&lc=en&cc=us Amadeu Barbosa: and my model is listed. Harper: Could I have a few moments of your time to study the problem closely? Amadeu Barbosa: yeah Harper: From your information I understand that on your notebook wireless led is glowing in Orange and on your notebook you are not able to connect to internet or network through wirelesslya, am I correct? Amadeu Barbosa: yeah Harper: Thank you for the confirmation. Harper: Have you tried any troubleshooting steps to isolate the issue? Amadeu Barbosa: always orange and it isn't listed on device manager (windows) or lspci on unix. Amadeu Barbosa: yes, I remove the battery, enter in safer mode (windows), boot the linux on the basic mode and load kernel driver by hand, I tried the 30s push power button without power supply Amadeu Barbosa: don't work Harper: All right, Thank you for the information. Harper: In this scenario we need to reset the BIOS ,then check the issue if the issue persists we have to update the BIOS and install the Wireless drivers on your notebook. After resetting the BIOS and updating the BIOS , installing the Wireless driver if the issue persists get back to us we would be glad to arrange free mailin repair if your notebook covered under Enchancement program. Amadeu Barbosa: ok I going to try... another information please: I live in Brazil for now but my model is a US model, but there's brazilian models listed too in that site.. Amadeu Barbosa: so, Could I get support for this hardware issue in Brazil? Amadeu Barbosa: I mean.. send the note/or_wireless to hp brazil and get back fixed? Harper: Amadeu, as your notebook model is US , so we have to arrange a mail in service in US(you need to send the notebook to US to arrange a mail in serivice. Amadeu Barbosa: the notebook whole? or just the wireless card? Harper: Complete notebook. Amadeu Barbosa: uoh.. terrible Harper: I understand , why you feel in that way. Amadeu Barbosa: and how to update bios properly? Harper: I will provide all truobleshooting steps perform those steps offline. Harper: Here are the steps to reset the BIOS 1. Turn on the computer. 2. At the HP Logo Press the F10 key. 3. When the BIOS boots up, press F9 to set up defaults. 4. Make sure the 'Yes' is highlighted and hit enter. 5. Press F10 to save the changes. 6. Make sure the 'Yes' is highlighted and hit enter. 7. The computer should then shut down and reboot. This will reset the BIOS to its default settings. Amadeu Barbosa: hmm I already did these steps previously. Harper: Okay, to provide the Correct version of BIOS I need the following information. Harper: The Serial Number (eg: CNS34915MC) and Product Number (eg:DS542U#ABA) of your Notebook. (...) Harper: Thank you for the information. Harper: Can I have a couple of minutes of your time to provide BIOS update the Wireless driver link/ Amadeu Barbosa: ok Harper: Thank you for waiting, I appreciate your patience. Harper: Here is the BIOS update link: ftp://ftp.hp.com/pub/softpaq/sp38001-38500/sp38061.exe Here is the Wireless driver. ftp://ftp.hp.com/pub/softpaq/sp37501-38000/sp37746.exe Harper: Note : Copy the URL and paste in the address box of the browser, then press Enter Key. Amadeu Barbosa: ok Harper: Amadeau, am I clear with the information? Amadeu Barbosa: yes Amadeu Barbosa: ops sorry wrong typos Harper: Amadeu, after installing the BIOS update and wireless driver if the issue persists get back to us any one from our department would be gald to assist you further. Harper: No probelm, Amadeu. Amadeu Barbosa: ok
Minha provável solução?
Alguém tem uma placa wireless aí pra vender? E lembrem-se EVITEM comprar produtos HP CASO: (1) queiram morar fora do país sem trocar de notebook; (2) o produto seja importado como o meu; (3) queiram se irritar com um suporte ineficiente. Sugestão?? Comprem produtos como os da Apple que têm garantia em qualquer lugar do mundo. Afinal se não for assim pra quê serve essa tal globalização? Só para nos estorquir de forma globalizada?Outras informações
Alguns registros em fóruns brasileiros indicam que deve ser devido a super-aquecimento do chipset NVIDIA que em meu caso já vi alcançando 80 graus celsius. Nesse sentido a atualização de BIOS (para F.3D no meu caso) da HP realmente ajuda, pois agora a GPU tá em 60 graus e o resto na casa dos 40 (antes girava em torno de 60). Isso vai ajudar a prevenir o problema para quem ainda não o enfrentou.- http://forum.clubedohardware.com.br/duvida-aquecimento-hp/460700?s=0a1d6b0e20741d718f77d8405f7ba79d&
- http://www.forumpcs.com.br/viewtopic.php?t=229811&postdays=0&postorder=asc&start=20
novidades no compiz-fusion
(16 Apr 2008 - 04:03) Simplesmente as tecnologias livres lhe permitem isso: É um vídeo sensacional demonstrando os novos plugins no compiz-fusion, boa parte ainda no git como a área de trabalho em cilindro 3D, e o atlantis que faz seu pc ter uma vida marinha ativa.
Do usuário técnico ao leigo todos vão amar isso !
Outros vídeos legais demonstrando o compiz-fusion: - Mostra rápida de vários efeitos inclusive rotacionar e refletir janelas: http://www.youtube.com/watch?v=6Xbdiwu1nKs
- Em detalhe o freewins e uma mostra que até os bugs sugerem coisas boas: http://www.youtube.com/watch?v=s724VCKBkGE
tau: framework para profiling em aplicações paralelas
(17 Mar 2008 - 13:02) Definitivamente, o apt-cache search anda me dando bons resultados, dessa vez ainda com o mesmo search por profiling do post passado achei o TAU : Tunning and Analysis Toolkit que pode fazer profiling e tracking nas linguagens Fortran, C, C++, Java e Python. É útil para monitorar o funcionamento de aplicações multi-thread (pthread) mas há suporte para aplicações paralelas feitas em MPI ou PVM. Permite a instrumentação de código pode ser via uma ferramenta automática de instrumentação baseada em PDT, dinamicamente usando sua DyninstAPI, em tempo de execução da máquina virtual Java (por exemplo) ou ainda usando a API de instrumentação mais comum. Ufaa.. parece bem interessante ! Aí vão mais alguns links:- Artigo Performance Instrumentation and Measurement for Terascale Systems : http://www.cs.utk.edu/~shirley/papers/iccs03.pdf :
- Apresentação TAU: A Framework for Parallel Performance Analysis : http://www.cs.uoregon.edu/research/paracomp/papers/talks/ptools00/ptools-2000.ppt
sac: ferramentas de controle de login
(17 Mar 2008 - 12:41) Um post bem rápido.. enquanto eu procurava ferramentas de profiling via um apt-cache search me deparei com o SAC : login accounting, que é um ferramenta útil para tornar em formato mais legível as informações do wtmp. É uma ferramenta de administração útil para locais como cafés, bares e ponto de acesso público de internet (casa brasil, tabuleiros digitais, telecentros, etc). Um exemplo:amadeu@sarang:~$ sac -p -a italo 1.25 4 logins 0.31 hrs/login yuri 2.80 6 logins 0.47 hrs/login root 14.78 26 logins 0.57 hrs/login amadeu 671.28 298 logins 2.25 hrs/loginOutro exemplo do tempo em horas para o usuário amadeu (parece que ele soma o tempo de múltiplos terminais abertos):
amadeu@sarang:~$ sac -d -u amadeu --longdate Sat Mar 1 2008 total 0.00 Sun Mar 2 2008 total 9.13 Mon Mar 3 2008 total 42.42 Tue Mar 4 2008 total 60.67 Wed Mar 5 2008 total 23.98 Thr Mar 6 2008 total 31.13 Fri Mar 7 2008 total 37.05 Sat Mar 8 2008 total 62.77 Sun Mar 9 2008 total 13.04 Mon Mar 10 2008 total 52.69 Tue Mar 11 2008 total 69.18 Wed Mar 12 2008 total 71.88 Thr Mar 13 2008 total 81.29 Fri Mar 14 2008 total 69.11 Sat Mar 15 2008 total 39.06 Sun Mar 16 2008 total 6.24 Mon Mar 17 2008 total 2.60Enfim.. fica a dica para quem precisar usar.
Perâmbulos mestrando-paranóicos de terça a noite
(27 Feb 2008 - 02:42) Nada de caminhar (infelizmente) afinal temos um mestrado a dar conta, então fui "perambulando" pela rede em busca de um frontend para o collectd e tentando saber o quanto ele é realmente mais leve que o Ganglia. Esse foi o trace que ainda não resolve meu problema mas me faz lembrar que tenho que ficar de olho em outros horizontes
(eita AndreLage se eu tivesse aí rpz.. já era..): - http://clusteradmin.blogspot.com/
- http://www.veiga.eti.br/gappmon/index-pt.html
- http://www.cs.mu.oz.au/courses/mbc/medc.html (nóia de que os cursos dos gringos são melhores...)
- http://www.cs.mu.oz.au/678/ (...tenho minhas dúvidas)
- http://www.gridbus.org/dissertations.html (o que não significa que não publiquem coisas interessantes...)
- http://www.gridbus.org/research_probes.html (...ainda que sejam bem business-logic-oriented)
- http://www.gridbus.org/~raj/ (...esse rosto não me é estranho...)
- http://ccgrid07.lncc.br/ (!! opa .. esse aí eu fui e foi muito bom mesmo... lá que vi o Buyya palestrando !!)
- http://gp2pc.lri.fr/ (embora.. não por acaso.. eu estivesse mais interessado nessa parte do evento)
e minha persistente busca para "fazer direito o que precisa ser feito rápido" e lembrar de "promessas que ainda podem (e devem) ser cumpridas".
Gráficos arrumados em PDF e como coletar dados
(23 Feb 2008 - 01:13) Curiosamente hoje eu conversava com um colega sobre a utilidade de se agrupar vários gráficos gerados por ferramentas como gnuplot em uma única página e quando cheguei em casa explorando o http://planet.debian.org vi um post interessante para isso do Vincent Fourmond: Mais interessante ainda foi ver que tem um conjunto de ferramentas feitas em Ruby para cientistas !! eheheh !! O projeto é o SciYAG e o programa de plotting é o Ctioga: http://sciyag.rubyforge.org/ctioga/ Opa.. ainda antes de fechar este post acabei encontrando outra ferramenta interessante o collectd: http://collectd.org/. Serve para coletar periodicamente estatísticas de utilização da máquina (se propõe a não comprometer o desempenho e é feito em C) e salva no formato RRD que pode ser lido por ferramentas como o RRDtool. Também nesse sentido de monitorar desempenho, principalmente se você estiver em um ambiente de cluster ou grade, sugiro usar o Ganglia. Um exemplo? http://cluster.dcc.ufba.br, esse aqui eu mesmo configurei.
Blogs do TWiki.SoftwareLivre agora com posts de rascunhos
(16 Feb 2008 - 04:26) Promovi mais um item da lista de desejos para a lista de funcionalidades implementadas para permitir aos usuários mais tranquilidade no momento de postar seus comentários em seus blogs:- Inseri no BlogManaging um formulário opcional para que ao invés de fazer um post o usuário possa criar um novo rascunho de post
- Isso vai criar tópicos com baseado no nome BlogDraftPostWikiName%GMTIME{$year$mo$day$hours$minutes$seconds}%
- Por esta forma seus rascunhos não serão imediatamente incluídos na lista de posts válidos e não vai ser gerado feed RSS
- Após editar com calma seu rascunho e revisar, você poderá facilmente usar o link publicar ao lado dos links editar, anexar e mais para renomear automaticamente seu rascunho para um nome de post válido e assim entrar passar a gerar feed RSS
- Também criamos uma lista de rascunhos que já é inserida por padrão para evitar que o usuário pense que "perdeu" um rascunho que ele vinha editando
- Aproveitei e coloquei umas figurinhas no editar, anexar e mais



