software conceitual é uma ferramenta concebida para facilitar a geração rápida de programas que medem o desempenho e / ou testar a adequação das redes e camadas de protocolo de rede.
centros conceitual em torno de um, específico de domínio do idioma progamming simples; algumas linhas de código conceitual pode produzir programas que iria demorar muito mais esforço para escrever em uma linguagem de programação convencional.
Um dos objetivos do conceitual é elevar o benchmarking rede de uma arte para a ciência. Para o efeito, os programas conceitual log não apenas dados de medição, mas também uma riqueza de informações sobre a configuração experimental, tornando mais fácil para alguém para reproduzir seus testes de desempenho.
Exemple
numreps é "Número de repetições" e vem de "--reps" ou "r" com padrão de 100.
Para numreps repetições mais 2 repetições warmup {
tarefa 0 redefine seus contadores em seguida
tarefa 0 envia uma mensagem de 1 megabyte para a tarefa 1, em seguida,
tarefa 1 envia uma mensagem de 1 megabyte para a tarefa 0 então
tarefa 0 registros elapsed_usecs / 2 como "One-way latência (us)" e
a mediana de (total_bytes / elapsed_usecs) * 1E6 / 1M como "largura de banda (MB / s)"
}
Os dados são armazenados em um formato fácil de análise de valores separados por vírgula (CSV) com a primeira linha de cabeçalhos de coluna tomadas desde o programa. A segunda linha de cabeçalhos indica como os dados de cada coluna foram agregadas.
O que é importante, no entanto, é de todas as outras informações no arquivo de log. arquivos de log conceituais são destinados a funcionar como um caderno de laboratório, incluindo não só os resultados de um experimento, mas também uma descrição precisa da configuração que levou a esses resultados. Quantos processadores estão em meu sistema? O quão rápido eles estão? O compilador e as opções de compilação foram utilizados para a compilação simples? Que parâmetros de linha de comando foram passados para o programa? Está tudo no arquivo de log.
Os arquivos de log também lista o código fonte do programa completo por isso não há ambigüidade sobre o que foi medido. Você pode olhar para um arquivo de log conceitual de um ano no futuro e ainda saber exatamente o que o lote medições repre mais útil do que um teste de desempenho que emite apenas 397,2 e exige que você recordar o que se refere a.
- A linguagem agora suporta lista compreensões e mensagem com a tag recebe
- O backend dot_ast inclui uma nova opção --compress desenhar AST de um programa com & quot; desinteressante & quot; nós elidida.
- Dois novos benchmarks de desempenho estão incluídas na distribuição.
- O desvio absoluto médio foi adicionado ao conjunto de estatísticas que podem ser recolhidos.
- laços temporizados são mais precisos.
- Vários bugs foram corrigidos.
O que é novo na versão 1.3:
- Um novo final paraver volta gera riscos em tempo lógico para a Paraver visualizador.
- Um novo back-end libsea_ast gera uma descrição do AST de um programa para a renderização interativa 3-D com o visualizador Walrus.
- A declaração RECEBER agora pode propagar escopos tanto da fonte ao destino ou alvo-fonte, quando necessário.
- conjuntos de tarefas pode ser deixado ligado a um identificador para reutilização conveniente.
- Os programas podem calcular as coordenadas, conjuntos vizinhos, e as distâncias em 1-D malha / 2-D / 3-D, toro, e topologias toro agora parciais.
- Muitos-para-um e muitos-para-muitos multicasts são agora suportados pela C + MPI volta final.
O que é novo na versão 1.1:
- A versão 1.1 do conceitual é em grande parte uma versão de correção de bugs - - lotes de
- minúsculo, pouco correções de bugs que impacto principalmente a construção conceitual
- processo. No entanto, a linguagem conceitual prevê um útil novo
- recurso: The ESTÁ EM construto agora aceita conjuntos de números apenas como o
- para cada construto. Por exemplo, programas conceitual agora pode incluir
- declarações como o seguinte:
- Tarefas t tal que T está em {2, 5, 8, ..., num_tasks-1} ENVIAR A
- 32 kilobytes MENSAGEM PARA TAREFAS R tal que r ESTÁ EM {t-1, t-2}.
- A sintaxe anterior intervalo para IS IN (por exemplo, & quot; t está em [3, 10] & quot;) é agora
- obsoleta pela sintaxe nova, definir fornece um super adequada do
- funcionalidade de sintaxe intervalo (por exemplo, & quot; t estiver em {3, ..., 10} & quot;).
- Programas construídos com v1.1 conceitual ter executado com sucesso em todos
- 147.456 núcleos (36.864 nós) de Amanhecer, o sistema IBM BlueGene / P
- instalado no Lawrence Livermore National Laboratory.
- O autopackage conceitual é agora construído como um híbrido 32 / pacote de 64-bit.
- Executar coNCePTuaL_1.1.package em um sistema x86 de 32 ou 64 bits,
- e deve instalar automaticamente as bibliotecas corretas para que
- plataforma.
- Veja o log de alterações para os detalhes completos de tudo o que é
- mudou desde a versão 1.0.
O que é novo na versão 1.0:
- conceitual não exige mais a aprender uma nova linguagem de programação para usar; padrões de comunicação podem agora ser desenhado em uma interface gráfica do usuário e convertidos para e de código conceitual.
- A Eclipse novo plug-in oferece suporte à escrita, execução e testes de desempenho de análise de rede a partir de um ambiente de desenvolvimento integrado único.
Comentários não encontrado