缓存一致性协议与内存屏障
计算机科学领域的任何问题都可以通过增加一个中间层来解决。所以需要一个比内存更快的存取设备做缓冲,尽量做到和CPU一样快,这样就不需要每次都从低速的内存中获取数据了。
发表于 5月以前   ·   阅读量:308
Linux内存映射mmap源码解析
内存映射(Memory Mapping)是一种操作系统提供的技术,它允许将文件或设备中的数据直接映射到进程的内存空间中,使得进程可以像访问内存一样来读取和写入这些数据。简单说就是将磁盘上的文件映射到进程的虚拟地址空间中。
发表于 5月以前   ·   阅读量:172
百度搜索深度学习模型业务及优化实践
纵观搜索的发展的历程,从最初的人工特征,到浅层的机器学习模型,再到不断加深的深度学习模型,我们对用户需求和候选内容的理解能力是持续的提升的,能力提升到一定程度就会影响架构的变化。近几年,架构最大的变化之一,是大规模的深层知识学习模型和系统的落地。
发表于 5月以前   ·   阅读量:235
Typora保护机制与注册逆向分析
typora风格的markdown编辑器,好像github上有开源的了,有道笔记的 markdown笔记似乎也改成typora这种所见即所得风格了(不过上图要付费,或者自己注册一个免费图床)。选择面变多了。不过typora依然是桌面最优雅的。
发表于 5月以前   ·   阅读量:161
一个易用的消息订阅发布系统-Pubsub.js
本文介绍的 pubsub.js 就是一个非常实用的消息订阅发布库。它具有使用简单、性能高效、支持多平台等优点,可以很好地满足各种需求。
发表于 5月以前   ·   阅读量:245
复用性风控:软件复用成本的量化管理
本文分析「复用性」这一概念背后的风险及成因,借助笔者在业务安全和基础安全的经验,提出了一个在软件研发流程中,管理「复用性成本风险」的风险管理模型,希望能为读者在后续的技术决策和软件研发流程提供些许帮助。
发表于 6月以前   ·   阅读量:358
深入了解 CPU 的型号、代际架构与微架构
CPU 在整个计算机硬件中、技术体系中都算是最最重要的东西了。但很遗憾的是,80%以上的开发同学对 CPU 并不是很了解。所以在前面的文章中,我带领大家深入地学习了很多内核中管理和调度 CPU 资源相关的文章。在今天,我从 CPU 硬件相关的技术细节切入,带领大家更好地认识 CPU。
发表于 6月以前   ·   阅读量:302
代码整洁之道--告别码农,做一个有思想的程序员
代码整洁是软件长期稳定和可扩展的基础,本文作者从现实中的代码、重构、设计模式谈论代码整洁之道,总结出如何做一个有思想的程序员。我心中理想的代码
发表于 6月以前   ·   阅读量:350
CPU缓存一致性:从理论到实战
终于把 CPU缓存、内存屏障、原子操作以及无锁队列一口气梳理完了。期间查阅大量资料,这里特地感谢一下参考资料中的作者,让我学到了很多知识;期间也写了很多测试代码来验证理论,避免误人子弟,尽量做到有理有据。
发表于 6月以前   ·   阅读量:378
软件研发的道德情操
社会中,人与人相处,不能只考虑自己的情感而无视他人的悲欢。人在考虑自己感受的同时,也必须学会考虑他人的感受,并做出有益他人的行为,如此整个社会才能繁荣。
发表于 6月以前   ·   阅读量:317
代码的艺术-Writing Code Like a Pianist
如何评定一个系统的质量?什么样的系统或者软件可以称之为高质量?可以从三个角度来看,一是架构设计,例如技术选型、分布式系统中的数据一致性考虑等,二是项目管理,无论是敏捷开发还是瀑布式开发,都应当对技术负债进行清理,对代码进行重构等,最后离不开的是代码质量,代码质量的高低直接影响系统的可维护性和可扩展性。好比一辆汽车,内饰高级,外观漂亮,但是底盘不行,动力孱弱,也难以称得上是一辆好车。本文将从主观和客观的角度,和大家探讨一下,作为程序员,应该如何写出整洁高质量的代码。
发表于 6月以前   ·   阅读量:294
系统架构设计应该如何做
​系统架构应该如何设计,从自己做架构的经历来分享一些体会。根据每个人的思维习惯不同,我的这些思考不见的都适合你,但多少对大家会有所帮助。
发表于 6月以前   ·   阅读量:314
彻底理解C语言中的指针
假定给你一块非常小的内存,这块内存只有8字节,这里也没有高级语言,没有操作系统,你操作的数据单位是单个字节,你该怎样读写这块内存呢?
发表于 6月以前   ·   阅读量:299
对抗软件复杂度的战争
服务一个人的系统,和服务一亿人的系统,复杂度有着天壤之别。本文从工程师文化、组织战略、公司内部协作等角度来分析软件复杂度形成的原因,并提出了一些切实可落地的解法。一、何为研发效能?
发表于 6月以前   ·   阅读量:384
如何从0到1设计实现一门自己的脚本语言
如果说计算机工程王冠中有明珠的话,操作系统、数据库、编译器必定是其中最闪耀的那几颗。能够制造打磨出这种明珠的人,做到了其他人做不到的事情,也便成了人们口中的“神”。笔者在学习了“神”们撰写的编译器入门书籍之后,分享一些心得给感兴趣的读者,希望能激发出大家的学习兴趣。
发表于 6月以前   ·   阅读量:277
实战总结|系统日志规范及最佳实践
打印日志是一门艺术,日志信息是开发人员排查线上问题最主要的手段之一,但规范打日志被开发同学经常所忽视。
发表于 6月以前   ·   阅读量:324
火遍童年的FC游戏是使用什么语言编写的?
《超级玛丽》、《马里奥兄弟》、《魂斗罗》和《洛克人》等,它们不仅给我们带来了无数小时的娱乐,也启发了我们对计算机科学的兴趣。那么这些经典的FC游戏是用什么语言编写的呢?
发表于 6月以前   ·   阅读量:319
视频号直播:如何进一步降低功耗占用?
功耗优化一直是 app 性能优化中让人头疼的问题,尤其是在直播这种用户观看时长特别久的场景。怎样能在不影响主体验的前提下,进一步优化?本文给出了一个不太一样的答案。
发表于 6月以前   ·   阅读量:431
OpenGL ES 高级进阶:纹理数组
今天给大家介绍一下纹理数组,它是OpenGL ES 3.0引入的一个新特性,它能让我们以数组的方式往shader中传递纹理。
发表于 6月以前   ·   阅读量:310
大数据基础技能入门指南
本文介绍了数据工作中数据基础和复杂数据查询两个基础技能。
发表于 6月以前   ·   阅读量:341
基于大模型 + 知识库的 Code Review 实践
一句话就是:基于开源大模型 + 知识库的 Code Review 实践,类似一个代码评审助手(CR Copilot)。
发表于 6月以前   ·   阅读量:413
快速掌握 Go 工作区模式
在 Go 项目的模块管理中,先是 GOPATH,然后到废弃。再到强推 Go modules,从被社区抗拒到 rsc 硬上弓。现在最新要了解的,就是工作区模式(workspace mode)。这是一个在 Go1.18 引入的重要特性。
发表于 6月以前   ·   阅读量:228
业务系统架构实践总结
作者从2015年起至2022年,在业务平台(结算、订购、资金)、集团财务平台(应收应付、账务核算、财资、财务分析、预算)、本地生活财务平台(发票、结算、预算、核算、稽核)所经历的业务系统研发实践的一个总结。
发表于 7月以前   ·   阅读量:408
详解 Module Federation 的实现原理
MF 解决的问题其实和微前端有些类似,都是将一个应用拆分成多个子应用,每个应用都可以独立开发、部署,但是他们也有一些区别,比如微前端需要一个中心应用(简称基座)去承载子应用,而 MF 不需要,因为任何一个应用都可以作为中心应用,其次就是 MF 可以实现应用之间的依赖共享。
发表于 7月以前   ·   阅读量:391
Git常用命令介绍
当多人同时开发项目时,Git是一个必备的工具,它是一个优秀的版本控制系统,提供了许多命令,来协助开发者更好地管理项目。本着“知其所以然”的想法,我决定对Git相关知识进行系统性的整理,对于一些较难理解的命令,我会以图片的方式进行解释。
发表于 7月以前   ·   阅读量:329
构建RFM体系:优化客户分析和营销策略
RFM 分析是一种用于洞悉客户价值和行为的强大工具,广泛应用于市场营销和客户关系管理。本文将介绍 RFM 分析如何在数据产品不充分的情况下实现以及如何利用RFM分析来优化营销策略,提高客户满意度,增加业务收益。
发表于 7月以前   ·   阅读量:322
我们抢先体验了 iPhone 15 Pro,你想知道的都在这
关于iPhone 15 Pro,你想知道的都在这里。
发表于 7月以前   ·   阅读量:380
微信跨平台方案Donut快速上手
Donut 是微信开发出的多端框架,用于支持使用小程序原生语法开发移动应用的框架,开发者可以一次编码,就可以编译出小程序和 Android 以及 iOS 应用,实现多端开发。能够帮助企业有效降低多端应用开发的技术门槛和研发成本,以及提升开发效率和开发体验。
发表于 7月以前   ·   阅读量:282
Hello world实例 | 解析内核的Makefile、Kconfig和.config之间的关联!
Linux内核源码文件繁多,搞不清Makefile、Kconfig、.config间的关系,不了解内核编译体系,编译修改内核有问题无从下手,自己写的驱动不知道怎么编进内核,不知道怎么配置内核,这些问题都和Makefile、Kconfig、.config有关,下面简单谈谈Makefile、Kconfig和.config。希望对你有启发
发表于 7月以前   ·   阅读量:250
Jetpack Compose 最新进展
Jetpack Compose 1.0 发布已经快一年了,在此期间我们看到社区是它的热情,例如欣赏 Kotlin 语法的简洁性、使 UI 开发变得更加便捷和更轻松的声明式方法。
发表于 7月以前   ·   阅读量:244
图解「正向代理」的原理 + 实践应用
在工作中经常和正向代理和反向代理打交道,有必要总结下正向代理的原理和实践应用了。
发表于 7月以前   ·   阅读量:260
OpenGL 贴纸和磨皮理论
混合就是把两种颜色:源颜色和目标颜色混在一起。其中源是指现在要画的贴纸,目标则是已经画好的摄像头图像。
发表于 7月以前   ·   阅读量:206
面渣逆袭:微服务三十三问,两万字图文详解!速收藏!
面渣逆袭系列继续,这期给大家带来微服务相关的面试题。
发表于 7月以前   ·   阅读量:292
新一代 Web 预渲染技术!
预渲染就是当我们还没有访问页面是提前对页面进行渲染,等到我们真正访问页面时就不需要再花费额外的时间去渲染页面了。
发表于 7月以前   ·   阅读量:267
React 组件库都是怎么打包的?
大家都用过组件库,react 流行的组件库有阿里的 ant-design、字节的 semi-design、arco-design 等。那这些组件库都是怎么打包的呢?我们自己写个组件库的话,怎么写打包逻辑呢?这篇文章我们就来探究下。
发表于 7月以前   ·   阅读量:275
Nest 实现扫码登录
扫码登录是常见的功能,基本各种网站都支持,本文说明这类登录方式的实现方式。
发表于 7月以前   ·   阅读量:238
Golang高性能编程实践
go 中高性能编程是一个经久不衰的话题,本文尝试从实践及源码层面对 go 的高性能编程进行解析。
发表于 7月以前   ·   阅读量:292
WebAssembly:未来的字节编码技术
最终,几乎所有编程语言都将具备编译到WebAssembly的能力,并提供适用于托管WebAssembly的运行时环境(如果尚未提供的话);这将使所有编程语言都能够在浏览器、服务器甚至硬件上运行。
发表于 7月以前   ·   阅读量:267
极致优化 SSD 并行读调度
introduction提升检索漏斗一致性,要求在粗排阶段引入更丰富的信号,这些信号的需求量已经远远超出了内存的承受能力。为此,我们考虑引入基于NVMe SSD的分层存储。本文详细探讨了一种长尾可控的方法论,以及在这个方法论的约束下,如何极致优化读调度。这些方法对于实施类似LargerThanMem的技术也将提供有价值的启发。
发表于 7月以前   ·   阅读量:231
聊聊网页断点调试及其扩展
抖音小程序开发者工具是面向字节系小程序开发者推出的桌面端集成开发环境,支持小程序开发、调试、预览、上传等基本功能,旨在帮助开发者更高效地开发小程序,我也是负责本地开发能力的建设。
发表于 7月以前   ·   阅读量:281
不一样的懒+预加载带来不一般的用户体验
本文提到的便是一个基于webpack 插件与 react 组件实现的一套研发高度自定义、组件按需加载的资源预加载方案. 简单来说是为了通过配置 webpack 插件及少量业务代码即可实现Code Splitting + 组件懒加载 + 组件预加载。
发表于 7月以前   ·   阅读量:341
魔力之帧:VisActor 动画揭秘
一幅生动的可视化作品往往少不了动画的参与。无论是各色各样的图表还是叙事作品,组织周密、效果出色的动画都能更好地帮助用户理解潜藏在可视化背后的数据观点。与静态的图像相比,动画以生动的形式将复杂的数据与概念转化为更易理解的视觉形式,在展示数据的变化、关系和趋势的同时也能有效地描述随时间变化的信息。
发表于 7月以前   ·   阅读量:246
千万级数据深分页查询SQL性能优化实践
最近接到了一个新需求,要求提供查询关注对象的粉丝列表接口功能。该功能的难点就是关注对象的粉丝数量过多,不少店铺的粉丝数量都是千万级别,并且有些大V粉丝数量能够达到上亿级别。而这些粉丝列表数据目前全都存储在Mysql库中,然后通过业务对象ID进行分库分表,所有的粉丝列表数据分布在16个分片的256张表中。同时为了方便查询粉丝列表,同一个业务对象的所有粉丝都会路由到同一张表中,每个表的数据量都能够达到 2 亿+。
发表于 7月以前   ·   阅读量:260
主流大语言模型的技术原理细节
1.比较 LLaMA、ChatGLM、Falcon 等大语言模型的细节:tokenizer、位置编码、Layer Normalization、激活函数等。2. 大语言模型的分布式训练技术:数据并行、张量模型并行、流水线并行、3D 并行、零冗余优化器 ZeRO、CPU 卸载技术 ZeRo-offload、混合精度训练、激活重计算技术、Flash Attention、Paged Attention。3. 大语言模型的参数高效微调技术:prompt tuning、prefix tuning、adapter、LLaMA-adapter、 LoRA。
发表于 7月以前   ·   阅读量:316
请谨慎使用 @Builder 注解!
本文主要指出 @Builder 存在的一些问题,指出它并不是链式编程的最佳实践。
发表于 7月以前   ·   阅读量:319
线程池 ThreadPoolExecutor 基础介绍
线程是进程的一个实体,是 CPU 调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器,一组寄存器和栈),但是它可与同属一个进程的其他的线程共享进程所拥有的全部资源。
发表于 7月以前   ·   阅读量:283
大模型微调方法总结
LoRA,Adapter,Prefix-tuning,P-tuning,Prompt-tuning的微调方法总结。
发表于 7月以前   ·   阅读量:246
Linux Kernel入门指南—魅力内核的奇妙之旅
踏上 Linux 内核世界的探险将成为您职业生涯的一段迷人旅程。作为操作系统之心的 Linux 内核涵盖众多领域,如操作系统原理、硬件抽象以及驱动开发等。在这篇文章中,我们将一探 Linux 内核的奥秘,并为具备编程基础的技术人员提供一处学习起点。
发表于 7月以前   ·   阅读量:269
提升ChatGPT性能的实用指南:Prompt Engineering的艺术
一起探索 Prompt Engineering 的奥秘,并学习如何用它来让 ChatGPT 发挥出最大的潜力。
发表于 7月以前   ·   阅读量:252
腾讯QQ桌面版架构升级:内存优化探索与总结
相比用户停留时间短、用完即走的 Web 页面,桌面 QQ 用户在一次登录后,可能会挂机一周以上,这段期间,如果没有严格控制好 QQ 内存占用,那么结果可能是用户交互响应变慢、甚至 Crash。在系统监控工具里,高内存占用也会被直观地反映出来,带来不好的口碑。MAC QQ 灰度期间,也听到了一些用户关于内存占用偏高的声音。即然不能置若罔闻,那么必须得痛下决心系统地来一波内存占用分析与优化。在这个过程中,团队前前后后挖出来了不少优化项,最终,可以让桌面 QQ 在内存占用上达到一个相对较低且稳定的状态。本文内容是探索桌面 QQ 内存优化上的一个阶段性小结,肯定还有更多内存优化 trick,欢迎各位多多提意见。
发表于 7月以前   ·   阅读量:266
 热门专题
互联网深度分析
根据当前互联网热点,深度分析事件背后的原因。
语言规范指南
c/c++,Objective-C,Python,Golang等语言的代码规范指南,团队合作更需要代码规范。
任正非讲话合集
收集了历年来,任正非在各个内部会议上的讲话。
查看所有专题
 哈喽比特公众号
 热门标签
# Docker #

文章:109,阅读量:59.2k

# 东方甄选小作文事件 #

文章:13,阅读量:7.9k

# 裁员 #

文章:1225,阅读量:661.1k

# WebAssembty #

文章:25,阅读量:18.4k

# Python #

文章:5586,阅读量:4m

# 人工智能(AI) #

文章:6823,阅读量:3.8m

# JavaScript #

文章:1223,阅读量:800.1k

# Rust #

文章:248,阅读量:121.5k

# 华为2023年9月25日新品发布会 #

文章:8,阅读量:5.3k

# 前端面试宝典 #

文章:9,阅读量:3.7k

查看所有标签