CPU是如何进行分支预测的? (mp.weixin.qq.com)

【简介】

历史上CPU分支预测算法演进过程、实现细节、tradeoff和对应论文介绍。

点击查看原文 >>

@张雅宸_zyc 2022-07-13 14:31 / 0个评论
赞过的人: @IT技术博客大学习 @张雅宸_zyc
要不要再学学下面的文章?
CPU篇之软中断 (www.codedump.info)
软中断作为下半部机制的代表,是随着SMP(share memory processor)的出现应运而生的,它也是tasklet实现的基础(tasklet实际上只是在软中断的基础上添加了一定的机制)。软中断一般是“可延迟函数”的总称,有时候也包括了tasklet(请读者在遇到的时候根据上下文推断是否包含tasklet)。它的出现就是因为要满足上面所提出的上半部和下半部的区别,使得对时间不敏感的任务延后执行,而且可以在多个CPU上并行执行,使得总的系统效率可以更高。
by @技术头条 2024-03-21 23:03 查看详情
通过漫游交换进行隐蔽访问的新型后门 GTPDOOR 分析 (paper.seebug.org)
GTPDOOR 是一种基于 Linux 的恶意软件,旨在部署在邻近 GRX(GPRS 交换网络)的电信网络系统中,具有通过GTP-C(GPRS 隧道协议- 控制平面)信令消息传递 C2 流量的功能。这使得 C2 流量能够与正常流量混合,并重新利用可能对 GRX 网络开放且暴露的已允许端口。
by @技术头条 2024-03-12 22:49 查看详情
CPU 混合推理,非常见大模型量化方案:“二三五六” 位量化 (soulteary.com)
本篇文章聊聊网上聊的比较少的具体量化操作,非常见整型位数的量化,来自让各种开源模型能够在 CPU 环境、CPU & GPU 环境混合推理的技术方案:llama.cpp 。
by @技术头条 2023-12-26 22:06 查看详情
Kubernetes OOM和CPU节流 (jokerbai.com)
使用 Kubernetes 时,内存不足 (OOM) 错误和 CPU 节流是云应用程序中资源处理的主要难题。
这是为什么?
云应用程序中的 CPU 和内存要求变得越来越重要,因为它们与您的云成本直接相关。
通过 limits 和 requests ,您可以配置 pod 应如何分配内存和 CPU 资源,以防止资源匮乏并调整云成本。
如果节点没有足够的资源, Pod 可能会通过抢占或节点压力被驱当一个进程运行内存不足 (OOM) 时,它会被终止,因为它没有所需的资源。
如果 CPU 消耗高于实际限制,进程将开始节流。
但是,如何主动监控 Kubernetes Pod 到达 OOM 和 CPU 节流的距离有多近?
by @技术头条 2023-12-01 09:47 查看详情
攻击者通过 Freeze.rs 和 SYK 密码器进行恶意软件分发 (paper.seebug.org)
在本文中,我们将深入研究用于交付Rust-lang注射器(SYK密码器)的初始攻击方法,并进一步探索攻击的后续阶段。
by @技术头条 2023-10-18 00:15 查看详情
使用 GPG 对 Git commit/tag 进行签名 (mingming.wang)
为什么要签名
GPG 可以对 Git commit 或 tag 进行签名,其它用户可以知道这个 commit 来源可信,也就是作者本人提交的代码。
by @幸运小懒人 2023-09-22 11:30 查看详情
构建能够使用 CPU 运行的 MetaAI LLaMA2 中文大模型 (soulteary.com)
本篇文章聊聊如何使用 GGML 机器学习张量库,构建让我们能够使用 CPU 来运行 Meta 新推出的 LLaMA2 大模型。
by @技术头条 2023-07-30 21:36 查看详情
每秒1百万的包传输,几乎不耗CPU的那种 (colobu.com)
这两年来我一直在做网络故障监控的工作,经常使用的一个手段就是发送一些探测包进行网络的探测,根据丢包和时延,再结合网络拓扑等手段分析现网网络故障。因为要监控的是度厂全部网络的质量状况,并且需要很高的精度去覆盖网络设备、板卡、端口以及他们之间映射等所有的路径,所以需要尽量发送高频的探测包去快准狠的感知到故障并发现。同时,和业务网络程序的不一样,业务程序一般是业务层代码,TCP的重传的机制,或者业务换个五元组重连一次,就会绕过网络中的故障,而网络监控也需要把这个链路中这些故障找出来,经常我会使用UDP或者TCP的握手包进行网络的探测,再不济使用ICMP协议进行网络的探测。
by @技术头条 2023-07-04 23:11 查看详情
Go CPU profiler 内幕 (colobu.com)
Go 是那种自带 profiler (分析器)的语言之一。它的运行时包含强大的自成一派的各种 profiler。其它语言,比如 Ruby、Python 和 Node.js, 它们也包含 profiler或者一些用来编写profiler的API,但是与Go的开箱即用的 profiler相比,它们提供的profiler功能有限。如果你想多了解Go提供的这些可观察工具的情况,我强烈推荐你阅读 Felix Geisendörfer的 The Busy Developer’s Guide to Go Profiling, Tracing and Observability。

作为一个好奇的工程师,我喜欢挖掘事物在底层上的工作方式,我一直想去学习Go CPU profiler底层·是怎么工作的。这篇文章就是此次探索的结果。每当我阅读Go运行时代码时,我总是学到到一些新东西,这次也不例外。
by @技术头条 2022-12-18 20:08 查看详情
如何在 16 位系统上进行 64 位数学运算 (linux.cn)
只要对汇编有一点基本的了解,这些函数就能扩展到任意位长的整型数学运算。

几年前,作者为 FreeDOS 写了一个叫做 VMATH 的命令行数学程序。它只能在很小的无符号整型上执行十分简单的数学运算。随着近来 FreeDOS 社区里对基础数学的兴趣,作者改进了 VMATH 使其可以为有符号 64 位整型提供基本的数学支持。

仅使用 16 位 8086 兼容的汇编指令来操控大型数字的过程并不简单。作者希望能够分享一些在 VMATH 中用到的技术例子。其中一些方法掌握起来相当容易。而另外一些方法则看起来有点奇怪。你甚至可能学到一种进行基本数学运算的全新方式。
by @技术头条 2022-12-10 22:36 查看详情