懒人李冰

记录我的生活、学习

性能优化之vallgrind之callgrind分析瓶颈

对程序进行性能优化的前提是知道程序性能瓶颈在哪里。本文记录 vallgrind 工具之 callgrind 来测试程序性能。

AV1(DAV1D) 解码详解(四)之LOOP RESTORATION

LOOP RESTORATION,环内重建滤波器,是一个重要的增强图像质量处理方法。它包含了两种滤波器,编码器会从两者中选择其一。Wiener Filter(维纳滤波器)采用可分离的对称设计。SelfGuided(自导向投影滤波器)使用两个重建信号的线性组合来近似真实信号。编码器通过比较滤波结果,选择合适的参数,并传输给解码器。

AV1(DAV1D) 解码详解(三)之CDEF

CDEF(constrained directional enhancement)约束方向增强滤波器是 AV1 里的几种滤波器之一, SPEC 中定义的该部分在 7.15 CDEF process 中。AOM 代码中在 cdef.c 相关的文件中。除此外,还可以参考 The AV1 CONSTRAINED DIRECTIONAL ENHANCEMENT FILTER论文,本文就是基于上面三个部分分析的结果。

NEON 编程2——处理多余的数据

上一篇关于NEON 加载和存储的文章中,在NEON 处理单元(寄存器)和内存之间进行数据传输。这篇文章中,我们会处理经常遇到的问题:输入数据并不对齐,也就是输入数据的长度并不是向量长度的整数倍。我们需要在数组开始或结束的位置处理剩余的元素。使用 NEON 哪种方式最有效呢?