A OpenJDK lançou
um aviso no qual propõe a criação de um novo projeto, que tem o nome
“Galahad” com o objetivo de mesclar algumas partes do código GraalVM
Community Edition
no
Java Development Kit
.
A equipe anunciou que
o objetivo inicial do projeto Galahad
é contribuir com a última versão do compilador GraalVM JIT
e integrá-lo como uma alternativa ao compilador JIT da máquina virtual HotSpot existente. Este é o desenvolvimento mais recente em um esforço de longo prazo para fornecer a capacidade de compilar aplicativos Java para código de máquina antes da execução do programa.
GraalVM é uma Java Virtual Machine (JVM)
e Java Development Kit (JDK) criada pela Oracle. É
um ambiente de tempo de execução de alto desempenho
que ajuda a melhorar o desempenho e a eficiência dos aplicativos.
Seus objetivos incluem:
escrever um compilador mais rápido e fácil de usar, manter, melhorar a desempenho de linguagens rodando na JVM, reduzir os tempos de inicialização de aplicações, integrar suporte multilíngue ao ecossistema Java, além de fornecer um conjunto de ferramentas de programação para isso GraalVM adiciona um compilador de otimização ao JDK.
Isso otimiza o desempenho de diferentes idiomas
s e garante a interoperabilidade de aplicativos multilíngues. Juntamente com o suporte para código Java, o GraalVM também suporta outras linguagens de programação, incluindo Scala, Kotlin, Groovy, Clojure, R, Python, JavaScript e Ruby.
Essencialmente, permite que os desenvolvedores executem código com eficiência em vários idiomas e bibliotecas em um único aplicativo. O projeto OpenJDK agora quer aproveitar esses recursos e recentemente anunciou um roteiro que permitirá o suporte a GraalVM.
Suporte
O GraalVM destina-se principalmente a fornecer
aos usuários do OpenJDK a capacidade de
compilar aplicativos Java para código de máquina antes do lançamento. o programa. À primeira vista, isso parece um tanto estranho.
Na verdade, uma das primeiras coisas O que um novo desenvolvedor Java aprende é que “a linguagem de programação Java não compila para código de máquina, mas para bytecode JVM”. Essa máxima simples tem implicações profundas, sendo a mais fundamental que a plataforma Java depende de um poderoso ambiente de execução dinâmico, a JVM, para execução.
Esse ambiente de tempo de execução permite para técnicas de execução dinâmica, como carregamento e reflexão de classes, que não possuem análogos reais em linguagens compiladas por AOT. Na verdade, é o ponto de partida de tudo o que torna o Java tão poderoso e o que o tornou tão revolucionário quando chegou à cena do software alguns anos atrás 20 anos. Apesar disso, sempre houve interesse na capacidade de compilar programas Java diretamente no código da máquina e executá-los independentemente sem uma JVM.
Existem várias razões para isso. : para reduzir o tempo de aquecimento para que os aplicativos Java atinjam seu desempenho máximo, para reduzir os requisitos de memória dos aplicativos Java ou simplesmente um desejo geral de evitar o uso de recursos para subsistemas de tempo de execução que um aplicativo pode não precisar. Vários projetos tentaram concretizar essa possibilidade. O mais recente, e sem dúvida o mais bem-sucedido até hoje, é o projeto GraalVM. Este projeto não é do OpenJDK, mas de um projeto de pesquisa do Oracle Labs. A primeira versão de produção, GraalVM 12.0, chegou em maio de .
Desde então, GraalVM tem operado como um projeto autônomo com um ciclo de lançamento diferente e interação limitada com OpenJDK.
Por enquanto, Galahad é focado em contribuir com a versão mais recente do compilador GraalVM JIT e integrá-lo como uma alternativa ao compilador C2. Posteriormente, será adicionada a tecnologia de compilador AOT
necessária para tornar o compilador JIT Graal instantaneamente disponível na inicialização da JVM. Deve-se notar que a base de código GraalVM completa não será confirmada, apenas os principais componentes JIT e AOT, bem como a ferramenta Native Image. As funções proprietárias da Oracle presentes no GraalVM Enterprise Editton não devem ser atribuídas ao projeto.
Finalmente se você estiver
interessado em saber mais sobre isso
, você pode conferir os detalhes no link a seguir.
O conteúdo do artigo segue nossos princípios de ética editorial. Para notificar um erro clique aqui.