Presentation: Does Java Need Inline Types? What Project Valhalla Can Bring to Java
Share this on:
This presentation is now available to view on InfoQ.com
Watch video with transcriptWhat You’ll Learn
- Hear about Project Valhalla, what it is and what it tries to achieve.
- Learn how Project Valhalla will impact the Java language and what it will change in the language in the near future.
Abstract
Inline(value) types are the key part of experimental project Valhalla which should bring new abilities to Java language. It's a story not only about performance, it's also a story about safety, abstraction,expressiveness, maintainability, etc. But on this session we will talk about performance. Which performance benefits inline types bring to Java and how we could exploit it.
What is the work you're doing today?
At Oracle, I'm on the Java performance team. I am not developing something new. I am not working on new features. We have joined different projects through time and are spending our effort just to be sure the performance is right. It could be small projects which take a week, just deal with some performance issues. And it could be a project done with our partners for years. We run benchmarks, we are checking performance, we are finding performance issues and we have recommendations for other teams. Right now, one project I'm working on for years is Project Valhalla. We work on providing better performance on modern hardware.
I decided to talk about Project Valhalla, a project which evolved over the years, and it is still not finished, but there are a lot of people who are interested in that. And I constantly get the question, why it takes so long? There are many things impacted by this project. I want to prepare people for what's coming next in Java. It will be a major change in the Java language. I am showing the benefits and some drawbacks to let people know what to expect in their future. We are going to make each feature preview available probably next year.
Last Year's Tracks
Monday, 2 March
-
Next Generation Microservices: Building Distributed Systems the Right Way
Microservice-based applications are everywhere, but well-built distributed systems are not so common. Early adopters of microservices share their insights on how to design systems the right way.
-
Streaming Data Architectures
Today's systems process huge volumes of continuously changing data. Hear how the innovators in this space are designing systems and leveraging modern data stream processing platforms.
-
Driving Full Cycle Engineering Teams at Every Level
"Full cycle developers" is not just another catch phrase; it's about engineers taking ownership and delivering value, and doing so with the support of their entire organisation. Learn more from the pioneers.
-
When Things Go Wrong: GDPR, Ethics, & Politics
Privacy, confidentiality, safety and security: learning from the frontlines, from both good and bad experiences
-
JavaScript: Pushing the Client Beyond the Browser
JavaScript is not just the language of the web. Join this track to learn how the innovators are pushing the boundaries of this classic language and ecosystem
-
Modern CS in the Real World
Head back to academia to solve today's problems in software engineering.
Tuesday, 3 March
-
Architectures You've Always Wondered About
Hard-earned lessons from the names you know on scalability, reliability, security, and performance.
-
The Future of the API: REST, gRPC, GraphQL and More
The humble web-based API is evolving. This track provides the what, how, and why of future APIs.
-
Building High Performing Teams
There are many discussions outlining the secret sauce of high-performing teams. Learn how to balance the essential ingredients of high performing teams such as trust and delegation, as well as recognising the pitfalls and problems that will ruin any recipe.
-
Machine Learning: The Latest Innovations
AI and machine learning is more approachable than ever. Discover how ML, deep learning, and other modern approaches are being used in practice.
-
Bare Knuckle Performance
Crushing latency and getting the most out of your hardware.
-
Modern Compilation Targets
Learn about the innovation happening in the compilation target space. WebAssembly is only the tip of the iceberg.
Wednesday, 4 March
-
Growing Unicorns in the EU: Building, Leading and Scaling Financial Tech Start Ups
Learn how EU FinTech innovators have designed, built, and led both their technologies and organisations.
-
Kubernetes and Cloud Architectures
Learn about cloud native architectural approaches from the leading industry experts who have operated Kubernetes and FaaS at scale, and explore the associated modern DevOps practices.
-
Chaos and Resilience: Architecting for Success
Making systems resilient involves people and tech. Learn about strategies being used, from cognitive systems engineering to chaos engineering.
-
Leading Distributed Teams
Remote and distributed working are increasing in popularity, but many organisations underestimate the leadership challenges. Learn from those who are doing this effectively.
-
Scaling Security, from Device to Cloud
Implementing effective security is vitally important, regardless of where you are deploying software applications
-
Evolving Java
JVM futures, JIT directions and improvements to the runtimes stack is the theme of this year’s JVM track.