Windows Vista Performance Roundtable

18 04 2009

With the launch of Windows Vista SP1 giving some significant fixes on performance issues on the operating system, Microsoft tries to take off the slow adjective from the mouth of users who tried Windows Vista.

Personally, SP1 really had improved performance, but much more can be done to take it better.

Below is a round table with Microsoft specialists, that’s very interesting to understand what can be done to take the performance of day-to-day operations better.

Springboard Series Virtual Roundtable: Windows Vista Performance





Microsoft Experience

18 04 2009

Bem, parece que estou começando a descobrir alguns outros projetos para aprendizado da Microsoft Brasil.

Hoje descobri o Microsoft Experience, que é similar aos programas Desenvolvedor 5 Estrelas (MSDN) [3] e Profissional 5 Estrelas (TechNet) [4], com conteúdo ministrado em vídeo por especialistas em várias tecnologias e provas a serem realizadas on-line. Os cursos disponíveis são os seguintes:

TechNet Experience:

  • Colaboração e Produtividade
  • Windows Vista
  • SQL / BI
  • Suporte Nível 1
  • Suporte Nível 2
  • Windows Server 2008
  • Segurança
  • InfraWeb

MSDN Experience

  • Office Development
  • SQL Server
  • Visual Studio Team System
  • Web Development

Já começei o meu curso de SQL Server hoje, e já passei na primeira prova. Acho que não vou ficar só nisso, e recomendo que vc faça o mesmo!

[1] TechNet Experience – http://technet.microsoft.com/pt-br/events/cc716281.aspx

[2] MSDN Experience – http://msdn.microsoft.com/pt-br/dd366110.aspx

[3] Desenvolvedor 5 Estrelas – http://www.mslatam.com/brasil/dce/

[4] Profissional 5 Estrelas – http://technet.microsoft.com/pt-br/events/tn.cincoestrelas.aspx





Microsoft Faculty Connection

16 04 2009

Good news for the ones who search for good (and free) content ‘bout recent technology. Microsoft has released the Microsoft Faculty Connection [1] which works like a virtual Faculty, with videos and other resources ‘bout Microsoft Technologies, like SQL Server, Windows Server, Active Directory.

Not only technologies are there, but some software engineering topics, like the MSF [2](Microsoft Solutions Framework) and its connection with other processes and methodologies (CMMI [3] included).

All the videos are in portuguese, (all my students are screaming: Thank God, this is in portuguese!!! =D) and are very complete, coming from academic basics to the use of the technology in most of the cases.

Update: I’ve found today too the english version [4] of the site (but it doesn’t have the same content).

Enjoy!

===================================================

Boas notícias para os que buscam bons (e gratuitos) conteúdos sobre tecnologias recentes. A Microsoft lançou o Microsoft Faculty Connection [1], que funciona como uma faculdade virtual, com vídeos e outros recursos sobre tecnologias Microsoft, como o SQL Server, Windows Server, Active Directory.

Não só as tecnologias estão aí, mas alguns tópicos de engenharia de software, como a MSF [2] (Microsoft Solutions Framework) e sua conexão com outros processos e metodologias (CMMI [3] incluído).

Todos os vídeos são em Português, (todos os meus alunos estão gritando: Graças a Deus, isto é em Português! =D) e são muito completos, começando no mais básico visto de forma acadêmica, até a utilização da tecnologia na maioria dos casos.

Atualização: Encontrei hoje também a versão em inglês do site (mas ela não tem o mesmo conteúdo).

Aproveitem!!

 

[1] Microsoft Faculty Connection

[2] Microsoft Solutions Framework

[3] CMMI

[4] Microsoft Faculty Connection (English)





Workshop do Grupo MODCS – 2008.2

27 11 2008

A cada semestre, o grupo MoDCS (Modeling of Distributed and Concurrent Systems) se reúne para apresentar em um workshop os trabalhos que se encontram em desenvolvimento pelos estudantes e pesquisadores integrantes. O objetivo principal do workshop é compartilhar conhecimento, discutir idéias, criar oportunidades de interação entre os projetos em desenvolvimento e propor trabalhos futuros. Adicionalmente, é uma excelente oportunidade para maior integração entre os colegas pesquisadores. A grande maioria dos trabalhos em desenvolvimento contemplam a modelagem de aspectos temporais em diversos domínios de aplicação, mais notadamente no projeto e avaliação de desempenho de sistemas embarcados, sistemas de comunicação e sistemas associados à manufatura. O escopo dos trabalhos atualmente em desenvolvimento pelos integrantes do MoDCS estão associados as seguintes áreas de concentração:

- Sistemas Embarcados
- Sistemas de Tempo Real
- Consumo de Energia
- Especificação
- Tolerância a Falhas
- Manufatura
- Sistemas Distribuídos

Data e Local:
Data do Evento: 05/12/2008
Locais: Auditorio CIn(Bloco A – Térreo) e Anfiteatro CIn(Bloco C – Galpão)

Maiores Informações
Julian Menezes  – cjma@cin.ufpe.br
Fábio Chicout – fcfmc@cin.ufpe.br

Programação

08:30-09:00 Abertura do Evento Prof. Paulo Maciel / Prof. Ricardo Massa
09:00-09:20

Uma Abordagem Baseada em Rede de Petri Temporizada para Modelagem e Análise de Especificações de Sistemas Embarcados Críticos com Restrições de Energia

Ermeson Andrade

09:20-09:40 Performance Modeling for Evaluation and Planning of Electronic Funds Transfer Systems with Bursty Arrival Traffic Carlos Araújo
09:40-10:00 Geração de Carga em Ambiente de Planejamento de Capacidade Hugo / Wagner
10:00-10:20 Intervalo  
10:20-10:40 Software Synthesis for Energy-Constrained Hard Real-Time Embedded Systems Eduardo Tavares
10:40-11:00 Abordagem híbrida para controle do consumo de energia em sistemas embarcados de tempo real crítico Pedro Dallegrave
11:00-11:20 Torwards Performance Modeling and Evaluation of EFT Systems Aging

Fábio Chicout

11:20-11:40 Avaliação de desempenho de Um Processo de Testes de Softwares: Uma metodologia baseada em Modelos Estocásticos Marcelo Marinho
11:40-12:00 Escalonamento de Processos Paralelos em Simuladores Multifísicos

Renata Medeiros (UPE)

12:00-14:00

Almoço  
14:00-14:20

Uma Abordagem Estocástica Baseada em Rede de Petri Coloridas para Estimar o Consumo de Energia e o Tempo de Execução de Sistemas Embarcados

Gustavo Callou
14:20-14:40 ALUPAS: Um Simulador Estocástico para Análise do Consumo de Energia e Desempenho de Softwares para Sistemas Embarcados

Bruno Nogueira

14:40-15:00 Performability Evaluation of Electronic Funds Transfer Systems

Erica Teixeira

15:00-15:20

Intervalo

 
15:20-15:40 Alocação e otimização em logística de distribuição Claudiana Batista
15:40-16:00 Avaliação e Planejamento de Capacidade de Call Centers usando o CC Modeler Alysson Barros
16:00-16:20 Planejamento de Capacidade SOA: uma abordagem Preditiva e Estocástica, através do Mapeamento de BPEL para GSP Marcelo Teixeira (UPE)
16:20-16:40 Avaliação de Desempenho de Processos Dinâmicos de Software Rebeka Brito
16:40-17:00 Avaliação de Workflow com Restrição de Recursos César Augusto
17:00-17:20 Implementação de um escalonador híbrido considerando restrições de energia Bruno Silva
17:20-17:40 Uma Abordagem Orientada a Aspectos para Implementar Contratos em JML Henrique Rebêlo (UPE)
17:40-18:00 Compilador Intra-task DVS para sistemas de tempo real com baixo consumo de energia Bruno Montenegro (UPE)

 

[1] http://www.modcs.org

[2] http://www.cin.ufpe.br

[3] http://www.cin.ufpe.br/~prmm





Writing Markov Chains/Escrevendo Cadeias de Markov

24 07 2008

Escrever um texto científico pode ser muito demorado, mas se você trabalha com modelos e precisa de alguns desenhos, você tem um problema em mãos. Estou trabalhando em um artigo que uso cadeias de markov para representar meus modelos, mas não tenho ferramentas de edição delas. Imagine o problema para colocar os modelos no texto usando o LaTeX.

Existem então duas soluções: ou você desenha no paint (ou outro editor gráfico) e exibe no texto como uma figura, ou você usa um desenho programático no LaTeX. Esse post é para falar dessa segunda forma.

Encontrei uma dica interessante de como fazer isso em [1], mas está ainda assim dando trabalho para compreender e usar o exemplo dado para fazer novos modelos.

A primeira coisa é usar o pacote xy, e para isso, use a linha

\usepackage[all]{xy}

Vamos então criar um desenho usando uma malha matricial como guia. Em cada célula da malha, vamos colocar sempre um estado (a bolinha) e uma transição. Para colocar o estado, se usa o seguinte comando:

*+[o][F-]{texto}

Para entender esse comando, o [o] representa que queremos uma forma arredondada, o [F-] faz que ele encolha de acordo com o texto dado dentro das chaves.

Para fazer os arcos, usa-se:

@/^/^{texto exemplo}

Que representa uma seta por cima que tem o “texto exemplo” próximo dela.

Um exemplo simples:

\begin{equation}
	\xymatrix{
	 *+[o][F-]{0} \ar@/^/[r]^{a}& *+[o][F-]{1} \ar@/^/[l]^{b}
	}
	\label{eq:exampleMarkovChain}
\end{equation}

vai produzir o seguinte resultado:

image

Veja que o & que está no código é somente para separar as células da malha, assim como quando construímos matrizes.

==========================================================

Write a scientific text can be very slow, but if you work with models and needs some drawings, you have a problem at hand. I am working on an article that use markov chains to represent my models, but have no tools for editing them. Imagine the problem to put the models in the text using LaTeX.

There are two solutions then: either you draw in the paint (or other graphical editor) and displays the text as a picture, or you use a drawing program in LaTeX. This post is to talk about this second way.

I found an interesting hint of how to do this in [1], but is still giving work to understand and use the example given to new models.

The first thing is to use the package xy, and for this, use the line

\usepackage[all](xy)

We will then create a design using a mesh matrix as a guide. In each cell of the loop, we will always place a state (the ball) and a transition. To put the state, you use the following command:

*+[o] [F-] (text) 

To understand this command, [o] represents that we want a rounded form, and the last option, [F-] make the form shrink according to the text.

To make the arches, you use:

@/^/^{text example}

That represents an arrow over who has the “text example” close to it.
A simple example:

\begin{equation}
	\xymatrix{
	 *+[o][F-]{0} \ar@/^/[r]^{a}& *+[o][F-]{1} \ar@/^/[l]^{b}
	}
	\label{eq:exampleMarkovChain}
\end{equation}

it’s gonna produce the following results:

image
See that & into code? That is the a code needed to separate cells in the mesh. Just as a matrix

[1] http://www.rennes.enst-bretagne.fr/~gbertran/pages/tutorials_latex.html#sujet44
[2] XY Package – http://www.ctan.org/tex-archive/macros/generic/diagrams/xypic/






2º ESOL

3 07 2008

Participei hoje do II Encontro de Software Livre do CEFET-PE (ESOL). O evento foi bem legal, e me pareceu ter evoluído muito com relação à primeira edição, tendo até participação de algumas empresas daqui do estado. O Laboratório de Análise de Performance ItautecCIn/UFPE (onde trabalho) participou do evento com duas equipes, cada uma apresentando uma palestra e responsáveis por um stand de divulgação do Librix, o Linux da Itautec.

A Equipe CP (Capacity Planning) apresentou a palestra “Monitoramento de Desempenho de Sistemas *Unix”, e a Equipe HCT (Hardware Compatibility Test) apresentou “Testes de compatibilidade de hardware” cada uma aproveitando suas experiências de trabalho.

No mais, só tenho a agradecer à organização do evento que nos tratou muito bem. Mariana, Talita: valeu pelo chocolate (batom garoto) que ganhamos!

Abraço, e espero poder participar do 3º ESOL!





Desempenho no Linux – tcpstat

19 05 2008

O tcpstat relata certas estatísticas de interface de rede, e para isso tanto coleta dos arquivos do kernel como monitora diretamente da rede.

Métricas Coletadas:

  • Número de Pacotes ARP
  • Número médio do tamanho dos pacotes
  • Número de bytes por segundo
  • Número de bits por segundo
  • Número de pacotes ICMP e ICMPv6
  • O desvio padrão do tamanho de cada pacote
  • Número de pacotes IPv4
  • O tamanho máximo dos pacotes
  • O tamanho mínimo dos pacotes
  • O número de bytes
  • O número de pacotes
  • O número de pacotes por segundo
  • Intervalo em segundos após “UNIX epoch”, relativo ao primeiro pacote monitorado
  • Intervalo em segundos.microsegundos após “UNIX epoch”, relativo ao primeiro pacote monitorado.
  • O número de pacotes TCP
  • O número de pacotes UDP
  • O número de pacotes IPv6

Uma característica interessante do tcpstat é que essas métricas podem ser exibidas de forma customizada, passando um parâmetro com a formatação da string de saída.

[1] http://www.frenchfries.net/paul/tcpstat/





Desempenho no Linux – 1

18 05 2008

Estamos pesquisando sobre isso aqui no Itautec-Lab, e encontrei algumas ferramentas interessantes. Dentre elas, o pacote sysstat tem um conjunto bem completo, sendo composto pelas seguintes ferramentas:

  • iostat – relata estatísticas de CPU e estatísticas de entrada/saída para dispositivos, partições, e sistemas de arquivos de redes.
  • mpstat – relata estatísticas individuais ou combinadas de relacionadas a processadores.
  • pidstat – relata estatísticas sobre tarefas (processos) do linux: I/O, CPU, memoria, etc.
  • sar – coleta, relata, e salva informação de atividade do sistema. (CPU, memoria, discos, interrupções, interfaces de rede, TTY, tabelas do kernel,etc.)
  • sadc – É o coletor de dados de atividade do sistema, usado como um backend para o sar.
  • sa1 – coleta e guarda dados binários no arquivo de dados diários da atividade do sistema. É um frontend para o sadc desenhado para ser executado a partir do cron.
  • sa2 – escreve um relatório de atividade diária sumarizado. É um frontend para o sar desenhado para ser executado a partir do cron.
  • sadf – exibe dados coletados pelo sar em múltiplos formatos (CSV, XML, etc.). É útil para carregar dados de desempenho em um banco de dados, ou importá-los para uma planilha para a construção de gráficos.

Além dessas, também tempos algumas mais, fora do sysstat nos *unix:

  • top – mostra a atividade da CPU em real-time;
  • ntop – mostra a atividade da rede em real-time por usuário;
  • ps – dá um snapshot dos processos em execução;
  • dstat – ferramenta versátil de estatísticas de recursos;
  • ifstat – InterFace STATistics Monitoring (Interface de Monitoramento de Estatísticas);
  • tcpstat – ferramenta de relatório de estatísticas de interface de rede;
  • netstat – ferramenta para exibição do estado da rede;
  • systune – Otimização de kernel através do sistema de arquivos /proc;
  • procinfo – Mostra informação do sistema a partir de /proc;
  • atop – Monitor de processos, em interface console;
  • atopsar – Relator de atividades do sistema, relacionado ao atop;
  • slabtop – mostra informações em tempo real do slab do kernel (slabs são pedaços contíguos de memória, e uma cache consiste de um ou mais slabs);

Nos próximos posts, vou separar cada ferramenta pelo eixo de monitoramento e estudar um pouco cada uma delas. À medida que o estudo for crescendo, vou atualizando esse post.

Até mais!

Algumas Referências (maior parte dessas ferramentas são indicadas nas man pages do linux) :

[1] http://www.blogmind.com.br/archives/25/analise-de-performance-no-gnulinux-com-ifstat-vmstat-dstat-uptime-iostat-procinfo/87

[2]    http://pagesperso-orange.fr/sebastien.godard/





Workshop MoDCS

11 04 2008

Ocorreu hoje no CIn-UFPE, o Workshop do grupo de pesquisa MoDCS (Modelling of Concurrent Systems) encabeçado pelo Prof. Paulo Maciel. O evento ocorreu com uma seqüência de palestras dos envolvidos (alunos de mestrado, de doutorado, professores de outras universidades) que mostravam o que está sendo realizado e qual o andamento das pesquisas.

Houveram palestras bem interessantes, com trabalhos sobre desempenho de sistemas embarcados, sistemas TEF, e muito mais. A programação está aqui (colocar link). Acabei entrando na dança, e também apresentei um trabalho que estou me envolvendo, entitulado “Metodologia de Análise de Cargas de um Sistema TEF usando Cadeias de Markov” e (ainda bem) fui o último a apresentar.

Esse trabalho está sendo um “complemento” para o trabalho de Erica e Julian, que estão fazendo a análise de desempenho do mesmo sistema TEF. Enquanto eles estão levando a cabo todo um processo de análise de desempenho, com seleção de métricas, medições, análises, geração de modelo abstrato (em Redes de Petri), meu objetivo é fazer uma análise das medições realizadas através do processo de carga do sistema, mas usando dessa vez Cadeias de Markov, e quem sabe até, validar o modelo em Rede de Petri (lembrando que é possível converter uma Rede de Petri em uma família de Cadeias de Markov).

Foi uma pena que não deu pra chamar o pessoal do CEFET, nem os amigos pra ir ver, mas mesmo assim, foi legal ter o pessoal das minhas disciplinas assistindo (Valeu Claudiana, Wagner e Hugo)





Automalab

21 01 2008

Um amigo meu Dalasiel, mostrou em na Jornada do Maranhão um projeto muito interessante que está saindo como resultado da sua iniciação científica. O nome do projeto é Automalab, e se destina a ser um auxílio nas medições de laboratórios de física, para diminuição dos erros nos experimentos. Segue um texto abaixo explicando o software:

 

AUTOMALAB UM SISTEMA COMPUTACIONAL DESENVOLVIDO EM UMA LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS PARA AQUISIÇÃO, PROCESSAMENTO E ANÁLISE DE DADOS EM LABORATÓRIO DE ENSINO DE FÍSICA EXPERIMENTAL II

Descrição: O uso do computador como ferramenta tornou-se uma prática não apenas fundamental no processo de ensino-aprendizagem, mas uma questão de sobrevivência do próprio processo. Com esta pesquisa o CEFET visa dispor de um sistema computacional de aquisição de dados e processamento destes em planilhas para análises gráfica e numérica de experiências em laboratório de Física. Este projeto visa capacitar alunos em uma linguagem de programação moderna, orientada a objetos, permitindo o desenvolvimento de projetos utilizando GUIs (Graphics User Interfaces) apropriadas para entrada e saída dos dados experimentais a serem analisados [DEITEL e DEITEL, 2005; TEMPLEMAN e OLSEN, 2003]. Além disso, o sistema computacional aqui denominado AUTOMALAB tem o objetivo de controlar sensores de aquisição e processamento de medidas comuns em Eletromagnetismo[MPLAB, 2007]. .