• 下面介绍的四个项目,每个项目都与语言模型有一些联系: VertexAI-kt虽然OpenAI和ChatGPT经常主导公众的意识,但其他参与者也提供了他们独特的解决方案。谷歌的Vertex AI就是一个典型的
  • 阿里alipay的Fury是一个极快的多语言序列化框架,由jit(即时编译)和零拷贝提供支持,提供高达 170 倍的性能和终极易用性。 仅用于序列化通过使用fury将Java对象转换为字节流,您可以获得高达 icon
  • Java为了提高启动时间性能,在Leyden项目中引入Condenser冷凝器。 Condenser冷凝器专注于最小化或转移计算以提高性能,或者说未来将是允许将基于 Java 的程序直接打包为静态独立可执行文件,Java 应用程序不必“预热”。</ icon
  • Java 本地调用 API 的 JMH 性能基准:JNI(通过 icon
  • 从 Java 迁移到 GraalVM Native,应用的启动时间从大约30秒缩短到大约3毫秒,更重要的是,内存使用量也从6.6 GB大幅减少到1 GB,而吞吐量和CPU利用率保持不变。 icon
  • 作为一名开源爱好者,我相信协作的力量可以使开源项目更快、更高效。在这篇博文中,我将分享我的Linagora团队如何与 OpenSearch 社区合作,使用基准测试工具和火焰图识别并解决 OpenSearch Java 客户端中的性能问题,为 Apache James项目做出贡献。 < icon
  • 每个计算机程序都需要内存和管理内存的方法。传统的内存管理范式要么容易出错,要么性能很差。Rust的内存管理系统是独一无二的,因为它无需使用垃圾收集器就能提供内存安全和可预测的高性能。 栈Stack和堆heap icon
  • 使用StringBuilder而不是String实现字符串连接已经只是一个古老的神话。 在大多数情况下,它不再正确的。 你可以在代码中安全地使用String 1 + String 2,并且不会注意到任何差 icon
  • 在这篇博客文章中,我们介绍了ZGC中堆大小调整的创新自动化策略,利用CPU利用率作为“调优旋钮”来优化性能和内存使用。 有效的堆大小管理对于优化Java应用程序的内存利用率和性能至关重要。 然而,手动配置 icon
  • 本文阐述如何解决 Kubernetes 中与 CPU 限制相关的 Java 应用启动缓慢的问题。使用一个新的 Kubernetes 功能,称为“In-place Pod Vertical Scaling”。它允许调整分配给容器的资源(CPU 或内存)大小,而无需重新启动 Pod。这个 icon
  • Rust 是一种相对较新的(与 C 或 Java 等相比)静态类型语言。这带来了一些机遇和挑战。从头开始创建新的生态系统时,您不必保持任何向后兼容性。它可以根据其他平台的经验教训来创建,引入更彻底的变化。 今天我们来谈谈一些乍一看很有趣的 Rust icon
  • AOT 编译器变得越来越流行,尽管它们在某些领域仍然不如 JIT 编译器。然而,必须指出的是,Graal 的本机编译器尤其变得越来越复杂。 这只是一时的炒作还是JIT将来会被取代? 首先,AOT 会花费编译时间( icon
  • 增强 Java 虚拟机,能够加载编译为本机代码的 Java 应用程序和库,以实现更快的启动和基线执行。 Java 应用程序、库(包括 Java 标准库)和任何用 Java 编写的可插入 Java 虚拟机组件(例如任何 JVMCI 编译器)应该能够以 icon
  • HotSpot JVM 可以通过多种方式输出有关 JIT 优化决策的信息:  PrintCompilation提供有关编译和内联的基本信息。 LogCompilation生成详细的 XML 格式,还描述分支预测、逃逸分析、内在函数、锁省略、代码缓存布局等。 Print icon
  • 并行垃圾收集器(Parallel GC)是 JVM 中引入的最古老的垃圾收集算法之一,旨在利用现代多核系统的处理能力。并行GC旨在通过利用多个线程并行执行垃圾收集来减少GC暂停的影响。 什么时候使用并行GC?如果您 icon
  • 本文讨论了一种名为 WasmGC 的新方法,用于将垃圾收集编程语言有效地引入 WebAssembly。 WasmGC 定义了新的 GC 类型,例如结构和数组,与之前编译为线性内存的方法 (WasmMVP) 相比,它们可以实现更好的优化: < icon
  • 最新版本的 Java 中引入了三个现代垃圾收集器,以下是三个场景比较: G1 收集器专为以下应用而设计: 可以与应用程序线程并发操作。 紧凑的可用空间,没有长时间的 GC 引起的暂停时间。 icon