InfoQ Homepage Virtual Machines Content on InfoQ
-
Uber Open Sources JVM Profiler for Tracing Distributed JVMs
Uber open sourced a distributed profiler called JVM Profiler in late June. They built JVM Profiler to solve resource allocation issues they had with Apache Spark. Apache Spark is a popular framework for processing large data streams, of which Uber has many. JVM Profiler was built for Spark, but it's applicable to any JVM-based service or application.
-
The Current State of Java Value Types
Oracle has been working to bring value types to the Java language and runtime. We present an update on the current status of this work.
-
Caching Clang-Based C++ Compiler Zapcc Open-Sourced
Zapcc is a caching C++ compiler based on a fork of Clang/LLVM that claims to be up to 50x faster on recompilations and 2–5x faster on full builds. Developed by Creemple and initially released at the end of 2015, Zapcc is now open-source.
-
Oracle Releases GraalVM 1.0, a Polyglot Virtual Machine and Platform
Oracle has announced the 1.0 release of GraalVM, a polyglot virtual machine and platform. The initial release includes the capability to run Java and JVM languages (via bytecode) as well as full support for JavaScript and Node.JS, with beta support for Ruby, Python and R code.
-
Eclipse Open J9 – an Open Source Java Virtual Machine Based on the Eclipse OMR Project
In early 2016, IBM open sourced the core, non-Java parts of the J9 runtime environment under the Eclipse OMR project. The OMR project is a language-agnostic runtime toolkit. In 2017, IBM also open sourced their J9 JVM as OpenJ9. OpenJ9 consumes Eclipse OMR and itself fits into the Java class libraries from OpenJDK 9 and future releases.
-
Brian Goetz Speaks to InfoQ on Data Classes for Java
Brian Goetz, Java language architect at Oracle, introduced an experimental concept of data classes that may someday be integrated into the Java programming language. But there is much work to be done before this concept is worthy of any real attention. Goetz explored the problems and tradeoffs of data classes on the premise that sometimes “data is just data.”
-
Kotlin 2017 Roundup and 2018 Outlook
Since the release of Kotlin 1.1 in March 2017 by JetBrains, Kotlin has made huge gains in adoption all around the world. 2017 brought many exciting announcements, and the momentum continues into 2018. InfoQ recently sat down with Hadi Hariri, the team lead for developer advocacy at JetBrains.
-
Google Introduces Low-Priced Preemptible GPUs for Their Customers
Google announces the beta release of Graphical Processing Units (GPUs) attached to Preemptible Virtual Machines (VMs) in their cloud Platform. Google Cloud Platform (GCP) customers can now attach NVIDIA K80 and NVIDIA P100 GPUs to Preemptible VMs for respectively 0.22 and 0.73 dollar cent per GPU hour, 50 percent cheaper than GPUs connected to on-demand instances.
-
.NET WebAssembly Support an Ongoing Experiment
WebAssembly now ships on by default in the four major browsers and the .NET community continues to push forward to provide .NET developers the ability to compile their to WebAssembly and run it in the browser.
-
Kotlin 1.2 Introduces Multi-Platform Projects
The latest version of Kotlin makes it possible to share code for the JVM and the JavaScript platform using multi-platform projects. Additionally, it includes a number of language and library improvements, and better compiler performance.
-
JavaOne Keynote: IBM on OpenJ9 and Open Liberty; Java Community in The Matrix
The JavaOne Community Keynote started with IBM talking about and demonstrating its latest contributions to open source: OpenJ9, Open Liberty, and MicroProfile. John Duimovich, IBM distinguished engineer, kicked things off with a presentation titled "IBM and Java: Powering the next generation of innovation". After IBM, Stephen Chin took the stage to finish the Java Community Keynote.
-
LLVM Has Documented the PDB Format, Complete with PDB to YAML Conversion
LLVM can now generate PDB files, allowing the use of Windows debugging tools. In addition, they have documented the format and created tooling for analyzing with and generating PDB files from YAML.
-
Azul Systems Launches Falcon, a New Just-in-Time Compiler for Java, Based on LLVM
Azul Systems has today announced the immediate availability of Zing 17.03, with full support for Azul’s new Falcon just-in-time (JIT) compiler based on LLVM and designed to replace the C2 compiler used in prior versions of Zing, as well as in Oracle HotSpot and OpenJDK. Falcon is the first new production JIT compiler available for Java SE since C2 was introduced at JavaOne in 1997.
-
The Last Frontier in Java Performance: Remove the Garbage Collector
A new JEP draft has been filed to create a no-op garbage collector: a GC that doesn't actually reclaim memory. This is aimed at aiding JVM implementers and researches and, to a lesser extent, ultra-performant applications that generate little to no garbage. If the JEP goes ahead, the new GC would be available together with the existing ones, and would have no effect unless explicitly activated.
-
LLD, LLVM’s New Linker, Coming to LLVM 4
LLD, which touts great performance improvements over GCC ld, will be included in LLVM 4 rc1 and enabled by default. Although the new linker is already able to build a running FreeBSD/amd64 base system, its inclusion in LLVM is still experimental and could be set back in rc2 if it causes problems.