• 2024-04-092024.4.9 avx加速一维卷积操作(汇总)
    第三次作业提交内容一:源代码在-O3编译优化下执行结果:AVX指令集优化://conv_avx.cppboolConvolve1D_Ks5_F64_AVX(double*__restrict__y,constdouble*__restrict__x,constdouble*__restrict__kernel,int64_tnum_pts){constexprint64_tkernel_size=5
  • 2024-03-02AVX256指令集
    所有函数16位/32位/8位有符号整数向量的绝对值__m256i_mm256_abs_epi16(__m256ia)__m256i_mm256_abs_epi32(__m256ia)__m256i_mm256_abs_epi8(__m256ia)分别获取16个16位/8个32位/32个8位有符号整数向量的取绝对值的结果。16位/32位/64位/8位有符号整数向量的
  • 2023-11-04x86平台SIMD编程入门(4):整型指令
    1、算术指令算术类型函数示例加_mm_add_epi32、_mm256_sub_epi16减_mm_sub_epi32、_mm256_sub_epi16乘_mm_mul_epi32、_mm_mullo_epi32除无水平加/减_mm_hadd_epi16、_mm256_hsub_epi32饱和加/减_mm_adds_epi8、_mm256_subs_epi16最大/最小值_
  • 2023-11-04x86平台SIMD编程入门(3):浮点指令
    1、算术指令算术类型函数示例备注加_mm_add_sd、_mm256_add_ps减_mm_sub_sd、_mm256_sub_ps乘_mm_mul_sd、_mm256_mul_ps除_mm_div_sd、_mm256_div_ps平方根_mm_sqrt_sd、_mm256_sqrt_ps倒数_mm_rcp_ss、_mm_rcp_ps、_mm256_rcp_ps快速计算
  • 2023-11-04x86平台SIMD编程入门(2):通用指令
    1、重解释转换虽然128位的XMM寄存器在硬件上只是256位YMM寄存器的下半部分,但在C++中它们是不同的类型。有一些intrinsic函数可以将它们重新解释为不同的类型,如下表所示,行代表源类型,列代表目标类型。__m128__m128d__m128i__m256__m256d__m256d__m128=_mm_castps_
  • 2023-07-27Intel指令集及SIMD数据加速
    查看CPU相关信息执行结果举例:查看电脑CPU支持的指令集:cat/proc/cpuinfo|grep"processor"|wc-l支持的指令集:向量指令集Flynn分类法根据指令和数据进入CPU的方式,将计算机架构分为四种不同的类型。1.单指令流单数据流(SISD,SingleInstructionstreamSingleDat
  • 2022-11-17C# 使用SIMD向量类型加速浮点数组求和运算(3):循环展开
    作者:zyl910目录一、背景1.1循环展开简介1.2测试准备二、在C#中使用2.1对基础算法做循环展开2.1.1测试结果:2.2对Vector4版算法做循环展开2.2.1测试结果:2.3对V
  • 2022-10-16AVX图像算法优化系列二: 使用AVX2指令集加速查表算法。
    查表算法,无疑也是一种非常常用、有效而且快捷的算法,我们在很多算法的加速过程中都能看到他的影子,在图像处理中,尤其常用,但是查表在SSE指令的基础上很难得
  • 2022-10-16AVX图像算法优化系列一: 初步接触AVX。
    弄了SSE指令集,必然会在不同的场合不同的人群中了解到还有更为高级的AVX指令集的存在,早些年也确实有偶尔写点AVX的函数,但是一直没有深入的去了解,这个十一,
  • 2022-10-12AVX图像算法优化系列二: 使用AVX2指令集加速查表算法。
    查表算法,无疑也是一种非常常用、有效而且快捷的算法,我们在很多算法的加速过程中都能看到他的影子,在图像处理中,尤其常用,比如我们常见的各种基于直方图的增强,可以说,在pho
  • 2022-10-08AVX图像算法优化系列一: 初步接触AVX。
    弄了SSE指令集,必然会在不同的场合不同的人群中了解到还有更为高级的AVX指令集的存在,早些年也确实有偶尔写点AVX的函数,但是一直没有深入的去了解,今年十一期间也没到那里