- 2024-08-29浮点数之间的比较,基本运算这些究竟是怎么实现的
科学计算当中会用到不少浮点数的操作,这些浮点数可能是16位,32位,64位,80位甚至是128位。开源项目SoftFloat提供了一个高效的浮点运算实现,可以在没有硬件支持的情况下,高效模拟浮点数的各种操作。那么,浮点数之间的比较,基本运算这些究竟是怎么实现的呢,可以拿32位浮点数作为例子。这是3
- 2024-08-28浮点数算法的内部实现
科学计算当中会用到不少浮点数的操作,这些浮点数可能是16位,32位,64位,80位甚至是128位。开源项目SoftFloat提供了一个高效的浮点运算实现,可以在没有硬件支持的情况下,高效模拟浮点数的各种操作。 那么,浮点数之间的比较,基本运算这些究竟是怎么实现的呢,可以拿32位浮点数作为例子。
- 2024-08-03iree 编译流程(2)——buildGlobalOptimizationPassPipeline
buildGlobalOptimizationPassPipelineIREE::Util::createSimplifyGlobalAccessesPass这个pass主要做这几件事:将不可变globaltensor的load提前到了block的开头,将globaltensor的store安全地挪到block的结尾。进行以下化简:如果loadafterstore,则把load
- 2024-06-21JAX-中文文档-九-
JAX中文文档(九)原文:jax.readthedocs.io/en/latest/使用jax.checkpoint控制自动微分的保存数值(又名jax.remat)原文:jax.readthedocs.io/en/latest/notebooks/autodiff_remat.htmlimportjaximportjax.numpyasjnp简而言之使用jax.checkpoint装饰器(别名为jax.remat),结合
- 2024-04-21简述:将带透明通道的PNG图片叠加到Framebuf上
PNG图片,维基百科简介:https://zh.wikipedia.org/wiki/PNG现在带透明通道的最常见的PNG文件都是PNG32格式,所以首先将PNG文件解析为RGBA-8-8-8-8即32位真彩像素(PNG32)(A代表Alpha透明通道)PNG帧解析PNG文件编码比BMP复杂一点,但还是可以解析的。在no_stdrust上我就偷懒使用了mi
- 2024-04-072024.4.7 向量化编程AVX/NEON
基本介绍X86:Intelx86是英特尔公司于1978年推出的16位微处理器;而x86泛指一系列基于Intel8086且向后兼容的中央处理器指令集架构IntelICC和开源的GCC编译器支持SSE/AVX指令的C语言接口(intrinsic,内置函数),在intrinsic.h头文件中(头文件可能有所不同)函数命名:第一部分:mm/mm256
- 2023-06-21近期高性能计算报班培训学习总结
工作以来,我鲜有时间停下来做一些总结,偶有所得也是记录在公司内部的文档里。我细细想来,发现原因主要是这份工作实在是有些螺丝钉了,脱离了公司的环境就很难成立。去年10月底以来,我开始报班培训C++,为什么要这样做呢?因为我发现大厂的算法工程师很容易变成“螺丝钉”,数据、训练和部署
- 2023-04-28rust中的self与Self
selfself是一个代表类型实例(或者是类型的引用或者是值)的关键字,在Rust的方法中使用self可以引用当前类型的实例或者类型本身。具体来说,当我们定义一个方法时,使用self关键字作为方法的第一个参数可以让我们在调用该方法时直接访问类型实例本身structPoint{x:f32,
- 2023-03-25深入Rust函数之函数参数与普遍函数
起这两天翻阅标准库的时候,有一个用法让我十分不解:assert_eq!([2.4,f32::NAN,1.3].into_iter().reduce(f32::max).unwrap(),2
- 2022-12-08Rust In Action 五 Data in depth
这一章包含学习计算机如何表示数据构建一个可以工作的CPU模拟器创建你自己的数字类型理解浮点数这一章完全是关于理解0与1是如何构成像文本、图片以及声音这样的
- 2022-11-22C/C++中拆分long/float/double等数据并重新组合的方法
在嵌入式编程时,常常会遇到需要做数据通信的场景。单片机往往只支持一次8位的数据传递,为了传输较长的数据类型,只能先在主机将数据拆分,再在从机重新组合,这里介绍一些实用的数
- 2022-11-20Rust实战系列-深入理解数据
本文是《Rustinaction》学习总结系列的第五部分,更多内容请看已发布文章:一、Rust实战系列-Rust介绍二、Rust实战系列-基本语法三、Rust实战系列-复合数据类型四、Rust
- 2022-11-10NEON加速【转】
NEON加速NEON技术是ARMCortex™-A系列处理器的128位SIMD(单指令,多数据)架构扩展,旨在为消费性多媒体应用程序提供灵活、强大的加速功能,从而显著改善用户体验。它具有
- 2022-10-14《MiniPRO H750开发指南》第五十三章 DSP测试实验
第五十三章DSP测试实验上一章,我们测试了STM32H750的硬件FPU。STM32H750除了集成硬件FPU外,还支持多种DSP指令集。同时ST还提供了一整套DSP库方便我们工程中开发应用。本
- 2022-10-13【安富莱二代示波器教程】第10章 示波器设计—数字信号处理
第10章 示波器设计—数字信号处理本章节为大家讲解二代示波器中用到的FFT和FIR。单纯从应用上来说,比较省事,调用API函数即可,从学习的角度来说,需要大家花点精力。10