| Jaguar comunicação de rede rápida e E / O em Java |
Baixe Agora |
Jaguar Classificação e resumo
- Nome do editor:
- Matt Welsh
- Site do editor:
- http://www.eecs.harvard.edu/~mdw/
Jaguar Tag
Jaguar Descrição
Comunicação de rede rápida e E / O em Java Jaguar - Java Acesso a recursos arquitetônicos subjacentes genéricosJaguar é uma extensão do Java Runtime Ambiente que permite o acesso direto do Java ao sistema operacional e recursos de hardware, como interfaces de rede rápidas, mapeados por memória e configuração de instrução programada. O Jaguar pode ser pensado como substituto para a interface nativa do Java. Ao contrário do JNI, no entanto, o Jaguar não requer cópia de dados entre o código JVM e C, nem travessias caras entre os contextos do Java e do Código Nativo. Em vez disso, o Jaguar depende de uma técnica flexível de tradução da Bytecode que diretamente inlinam o código "driver" especializado para acessar os recursos do sistema de baixo nível da Java, mantendo a segurança do tipo. Esta tradução pode ser realizada por um compilador JIT, um compilador estático ("antes do tempo"), ou por um front-end que traduz java bytecode para "Jaguar Bytecode" independente de máquina. Nós implementamos uma interface Jaguar para Berkeley Linux via Arquitetura de comunicação, que é implementada sobre a rede de área do sistema de mirina. Este sistema, Jaguarvia, fornece acesso java direto e zero-cópia ao myrinet com um tempo de ida e volta de 73 microssegundos para pequenas mensagens, e uma largura de banda de pico de mais de 488 Mbits / segundo. Isto é quase idêntico (dentro de 1%) para o desempenho do Berkeley Linux via como acessado a partir do Código C.Outa do Jaguar é objetos pré-serializados, um mecanismo que reduz muito o custo da serialização do objeto Java. Isso é feito reescrevendo os acessos do campo de objeto Java para armazenar dados na memória em um formulário "pré-serializado", prontos para comunicação ou E / O. Nossa análise mostra que o uso de objetos pré-serializados pode economizar um fator de 80 em desempenho sobre a serialização padrão Java para se comunicar sobre o Jaguarvia.on Top of Jaguar, implementamos a Tigris, um sistema de E / S baseado em cluster e modelo de programação que permite recursos ser automaticamente equilibrado através do cluster; Esta é uma reimplementação de Java do sistema fluvial. A Tigris protege as aplicações de assimetrias na CPU, E / S e desempenho de rede, através do uso de um modelo de programação do DataFlow e uma fila distribuída que permite que os dados fluam adaptados de produtores aos consumidores. Ao usar o Jaguar para comunicação e E / S, a Tigre é capaz de obter desempenho rivalizando com os sistemas semelhantes implementados em C ++. O Jaguar está sendo usado pelos projetos de Ninja e Telegraph da UC Berkeley para construir sistemas escaláveis de alto desempenho em Java. Requisitos: · Java 2 Edição Standard Runtime Ambiente
Jaguar Software Relacionado