Junwei's Blog

To Be A Better Developer!

Tensorflow Under the MicroScope : Tensor & Allocator

显微镜下的Tensorflow之tensor & allocator

显微镜下的tensorflow—— Allocator 前言 本文首发于个人博客:🔗Wang Junwei’s Blog : Tensorflow Under the MicroScope : Tensor & Allocator 最近读了马伯庸的一本历史科普书 ——《显微镜下的大明》——深受启发,以几个小人物的悲哀写了大明朝的兴衰,每个章节只着眼解决/解释一个或几个小问题,......

Intro to RoaringBitmap | Every bit matters!

高性能bitmap的实现

Intro to RoaringBitmap | Every bit matters! 本文首发于个人博客 : 🔗Wang Junwei’s Blog :Intro to RoaringBitmap | Every bit matters! 前言 最开始学到这个单词的时候,还是19年秋选修《计算机视觉》、《计算机图形学》的时候,那个时候连想起来的中文词语含义还是点阵图像,比如......

TaskFlow + WorkStealing

高性能C++ DAG执行框架 之 WorkStealing策略

TaskFlow = DAG + WorkStealing 前言 本文首发于个人博客:🔗Wang Junwei’s Blog : TaskFlow + WorkStealingl 最开始使用学习brpc的时候,总听人提起大名鼎鼎的 bthread,也在之前的工作实践中用到过bthread线程池, M:N 的线程库能在多核应用中提供更好的scalability 和 cache ......

LSQ量化感知训练

索引 and 模型加速的突破口?

LSQ——量化感知训练 随着深度学习的广泛应用,对于模型的压缩和加速变得越来越重要。其中,模型参数量化是一种有效的压缩方法,通过将浮点数参数转换为整数,从而减少了模型的存储和计算开销。本文将介绍一种新的量化方法,即LSQ量化,它可以通过学习量化参数来优化量化误差,并在保持模型精度的同时,大大减少模型的存储和计算开销。 LSQ量化是一种基于梯度量化和误差反传的低比特量化方法,可以用来将......

以FDO、LTO、BOLT为代表的编译优化技术原理和技术方案

以FDO、LTO、BOLT为代表的编译优化技术原理和技术方案 在软件开发过程中,性能优化是一个至关重要的环节。编译优化技术可以显著提高程序的执行效率,降低资源消耗,从而提升用户体验。本文将介绍FDO(Feedback-directed Optimization,基于反馈的优化)、LTO(Link Time Optimization,链接时优化)以及BOLT(Binary Optimi......

Embedding Based Retrieval

向量召回,负样本的艺术!

向量召回|Embedding Based Retrieval 最近越来越感觉到闷头写代码优化代码不是长久之计,一直在琢磨我们的算法同事在研究哪些方向,晓哥甩给我了这篇论文 EBR@Facebook,让我好好研究一下,Facebook是怎么做搜广推的。都说这篇文章是近几年最好的一篇向量召回算法领域的综述,我读完之后发现还是很不一样的,DR、TDM、YouTubeDNN、DSSM这些论文......

Embedding is All You Need

万物皆可向量化

Embedding is all you need Embedding is all you need 入职以来经历过最忙的封闭项目阶段,我终于有空闲下来写点东西了。 我入职当天,还以为自己来写java后端,做搜广推引擎的b端,没想到被分配到来写C++,做的是搜广推引擎的向量召回系统——在一个向量空间内的近似临近搜索问题,简单来说就是疯狂计算向量的余弦相似度 cosA,其中A是q......

Cache Coherence

Order, Order, Order in the court, Said the Speaker

Cache Coherence "Order, Order, Order in the court " , Said the Speaker. Cache coherence ensures that each processors see a consistent view of memory. what properties must be enforce......

Where there is a Memory Hierarchy, there is a Cache.

Cache is a damn compromise!

Memory Hierachy & Caches Ideally one would desire an indefinitely large memory capacity such that any particular… word would be immediately available… We are… forced to recognize the possibili......

StringMatching

字符串匹配算法——KMP,AC自动机

字符串匹配算法——KMP,AC自动机 字符串,是定义在规定的有限字符集合上的一个字符自由组合的序列结果。 字符串匹配问题(String matching)是指在一个大字符串T中搜索另一个字符串S出现的所有位置,其中T,S都是定义在字符集上的字符串 前言 文本编辑问题经常需要到一串大文本序列中查找某一个文本的出现,在大字符串中去寻找匹配某个模式的字符串的问题叫做**“字符串匹配问......