从X86指令深扒JVM的位移操作 (club.perfma.com)

【简介】

最近做的一个项目碰到了一个移位的问题,因为位移操作溢出导致结果不准确,本来可以点到为止,问题也能很快解决,但是不痛不痒的感觉着实让人不爽,于是深扒了下个中细节,直到看到Intel的指令规约才算释然,希望这篇文章能引起大家共鸣。

点击查看原文 >>

@PerfMa社区 2020-05-19 10:56 / 0个评论
赞过的人: @IT技术博客大学习 @PerfMa社区
要不要再学学下面的文章?
【大模型系列】指令微调 (hubojing.github.io)
本文总结了大模型中的指令微调(Instruction Tuning)技术,重点介绍了如何通过指令化数据对大语言模型进行参数微调以提升任务性能。文章探讨了数据构建方法如Self-Instruct和Evol-Instruct,以及微调策略包括优化设置和高效微调方法。通过这些技术,模型可以在多任务场景中表现出色。此内容对希望提升大语言模型能力的研究者和开发者具有参考价值。
by @技术头条 2024-08-06 08:12 查看详情
JVM内存问题排查流程 (l1n.wang)
首先确认问题现象,可以通过服务状态,监控面板、日志信息、监控工具(VisualVM)等,确认问题类型:
1、内存使用率居高不下、内存缓慢增加、OOM等;
2、频繁GC:Full GC等;
发现问题不建议重启,留存状态。
by @技术头条 2024-03-12 22:26 查看详情
JVM 剖析花园:2 - 透明大页 (www.diguage.com)
大页面是提高应用程序性能的简单技巧。Linux 内核中的“透明大页”功能使其更易于使用。JVM 中的“透明大页”支持使其易于选择。尝试大页面总是一个好主意,尤其是当你的应用程序有大量数据和大堆时。
by @技术头条 2024-01-14 19:21 查看详情
JVM 剖析花园:1 - 锁粗化及循环 (www.diguage.com)
虽然锁粗化并不适用于整个循环,但另一种循环优化方法—​循环展开—​为常规锁粗化创造了条件,一旦中间表示开始看起来好像有 N 个相邻的锁-解锁序列,就可以进行锁粗化。这不仅能带来性能上的优势,还有助于限制粗化的范围,避免对过大的循环进行过度粗化。
by @技术头条 2024-01-14 19:21 查看详情
软件开发 | JVM 解释和编译指南 (linux.cn)
Java 是一种跨平台的编程语言。程序源代码会被编译为 字节码bytecode,然后字节码在运行时被转换为 机器码machine code。解释器interpreter 在物理机器上模拟出的抽象计算机上执行字节码指令。即时just-in-time(JIT)编译发生在运行期,而 预先ahead-of-time(AOT)编译发生在构建期。

本文将说明解释器、JIT 和 AOT 分别何时起作用,以及如何在 JIT 和 AOT 之间权衡。
by @技术头条 2023-11-06 22:57 查看详情
iptables 以及 Go操作库 (colobu.com)
iptables 是 Linux 系统中的一个非常强大的防火墙工具,它可以用于过滤、修改、重定向和处理网络数据包。iptables 是基于 Netfilter 框架的,Netfilter 是 Linux 内核的一部分,它提供了在内核级别处理网络数据包的能力。
by @技术头条 2023-10-30 23:30 查看详情
怎样快速制作「九宫格」拼图:基于 ImageMagick 和快捷指令的方案 (type.cyhsu.xyz)
「九宫格」是如今大多社交平台展示缩略图的布局,利用这种布局将大图拆成拼图发布,能产生有视觉冲击力的展示效果。不过,这种九宫格的制作往往需要第三方软件辅助,也是乱收费和侵犯隐私的重灾区。本文介绍如何通过 ImageMagick 或快捷指令,简单免费地制作九宫格拼图。
by @技术头条 2023-07-30 21:37 查看详情
如何优雅地记录操作日志? (tech.meituan.com)
操作日志广泛存在于各个B端和一些C端系统中,比如:客服可以根据工单的操作日志快速知道哪些人对这个工单做了哪些操作,进而快速地定位问题。操作日志和系统日志不一样,操作日志必须要做到简单易懂。所以如何让操作日志不和业务逻辑耦合,如何让操作日志的内容易于理解,让操作日志的接入更加简单?上面这些都是本文要回答的问题,主要围绕着如何“优雅”地记录操作日志展开描述。
by @技术头条 2022-06-19 23:22 查看详情
推荐学Java——数据表高级操作 (mp.weixin.qq.com)
上一节内容学习了关于数据表的基本操作,也就是针对单表的增删改查以及创建和删除,而在实际开发中,往往是多表联合操作,尤其是插入和查询用的最多,而这两步都要经过一个“筛选”的过程,这个过程要根据具体业务逻辑,综合不同的表,查询后决定是否满足插入或其他条件。

本节内容涉及的广泛一些,我们需要创建多个表,进行复杂一点的操作,数据库管理工具这里使用的是 Navicat 12 ,还有很多类似的软件,比如:sqlyog、SQL-Front等等。
by @code小生 2021-12-12 11:19 查看详情
推荐学Java——数据表基本操作 (mp.weixin.qq.com)
本节内容就学习有关数据库中表的操作,这其中包括 表内 和 表关联 的:创建、列数据类型、数据查询、筛选、删除、添加、修改等等操作,这块内容极为重要,重点不但需要掌握基本的 SQL使用规则,还要掌握一些系统提供的SQL函数。
by @code小生 2021-12-05 19:28 查看详情