Тёмный

Project Leyden - Capturing Lightning in a Bottle  

Java
Подписаться 179 тыс.
Просмотров 13 тыс.
50% 1

Presented by Mark Reinhold - Chief Architect (Java Platform Group - Oracle) & John Rose - JVM Senior Architect (Java Platform Group - Oracle) during the JVM Language Summit 2023 (Santa Clara CA).
Project Leyden ➱ openjdk.org/projects/leyden
Selectively Shifting and Constraining Computation ➱ openjdk.org/projects/leyden/n...
Toward Condensers ➱ openjdk.org/projects/leyden/n...
Using Computed Constants to Manage Static State in Leyden ➱ cr.openjdk.org/~jrose/leyden/...
JEP Draft: Computed Constants ➱ minborgsjavapot.blogspot.com/...
Mailing list ➱ mail.openjdk.org/pipermail/le...
Additional resources ➱ inside.java/tag/leyden
Make sure to check the • JVM Language Summit 2023 playlist.
Tags: #JVMLS #OpenJDK #Java #Leyden

Наука

Опубликовано:

 

7 сен 2023

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 12   
@Anbu_Sampath
@Anbu_Sampath 10 месяцев назад
Good to see Mark Reinhold on stage after long time.
@efemoney_
@efemoney_ 10 месяцев назад
I want to be a fly on the wall in the oracle meeting rooms where these discussions are taking place😔
@n3zlnluka5
@n3zlnluka5 10 месяцев назад
Commenting on 18:20. Looking at the graph alone, I agree it's obvious to focus on warmup optimization and not startup because the time spent at startup becomes just a small fraction of overall time after a handful of task repetitions. However, in the first minute of the talk, it was mentioned that the goal is to be more competitive with Go in cloud-native environments, and tacking the startup time is fundamental to achieving that goal. For example, consider a Java application that does mostly IO work and can handle many requests per second with just 100 millis of CPU after warmup. The issue is that when resources are that constrained, the startup can take tens of seconds, during which CPU usage will be pinned at 100% (of CPU allocated). This is bad because it makes it really difficult to add horizontal scaling based on CPU usage - you deploy a new version of your application, and new replicas start up, consuming 100% CPU for an extended period of time, enough for auto scaler to kick in and add even more replicas, which in turn also consume 100% CPU and exacerbate the problem. And, at least in K8s, it's not easy to cope with this. Current autoscaling settings are not enough to eliminate the issue, and you cannot disable autoscaling during deployment. What you end up doing is scaling based on a custom metric, such as requests per second, which requires much more effort to setup and get right. That's what's great about Go - you don't even need any training runs, it starts instantly and runs at peak performance from the very beginning, even if that peak performance isn't as good as on JVM. But you save a lot of time not having to setup any training runs, maintaining additional metadata (as required by GraalVM), or implementing complex autoscaling strategies.
@davidmeredith3853
@davidmeredith3853 10 месяцев назад
So, is Java's dynamism an original questionable choice? that was needed at the time but now has to be maintained due to existing/legacy apps, or is it genuinely a useful feature in some use-cases, honestly i don't really know, I've never needed reflection myself, but I'm probably too high level.
@Ambusher306
@Ambusher306 10 месяцев назад
Great presentation, but for time 43:32, the sampling size of 3 seems quite low to me. Statistically speaking it should have at least 10+ runs to get proper stats.
@SLTRM
@SLTRM 10 месяцев назад
Belive me. When developer see reduced in 100k or 200k the cloud bill. All developer are happy to live in "close world java" and forget the java dynamics features.
@ocleidyreve6361
@ocleidyreve6361 10 месяцев назад
Developers don't pay the bills most of the time and even so, it is more convenient the java dynamism than spend your time hunting reflection issues in GraalVM native with long compilation times. Its not a funny task at all...
@_SG_1
@_SG_1 10 месяцев назад
Developers don't handle bills usually let alone pay it. Happy and "closed world java" doesn't exist today, either you begrudgingly accept it or you quit. I personally would opt for the later seeing the brittleness and maintenance nightmare of GraalVM native image configuration.
@SLTRM
@SLTRM 10 месяцев назад
Maybe but. When your boss call you to congrats about a huge improvement in the cloud bill and every member in the team recieve 15k bonus. I am rally happy to live in the java close world. Today java running a race agains golang and rust in the cloud bill and java/jvm is losing for a lot. Today with native-image at least not lost for too much.
@stcattc
@stcattc 10 месяцев назад
@@SLTRM Maybe you should not be so dependent on the cloud then...
@SLTRM
@SLTRM 10 месяцев назад
@stcattc what? "Not be so dependent on the cloud" really? In what year are you living 2000?
Далее
Project Leyden: Capturing Lightning in a Bottle
45:50
Project Lilliput - Compressed Object Headers #JVMLS
51:26
A Classfile API for the JDK #JVMLS
51:48
Просмотров 14 тыс.
Generational ZGC and Beyond #JVMLS
33:34
Просмотров 7 тыс.
Brian Goetz Answers Your Java Questions
33:08
Просмотров 16 тыс.
Linus Torvalds On Future Of Desktop Linux
44:18
Просмотров 358 тыс.
ЗАБЫТЫЙ IPHONE 😳
0:31
Просмотров 20 тыс.