Skip to content

Simd v8.0.166

Latest

Choose a tag to compare

@ermig1979 ermig1979 released this 01 Oct 08:48
· 33 commits to master since this release

Algorithms

New features
  • C++ wrapper Simd::SynetScale16b.
  • C++ wrapper Simd::CopyFrame.
  • Base implementation, SSE4.1, AVX2, AVX-512BW, AVX-512VNNI, AMX-INT8, NEON, SVE2 optimizations of class SynetQuantizedConvolutionNchwGemm.
Improving
  • AMX-BF16 optimizations of class SynetQuantizedConvolutionNhwcSpecV1.
  • SSE4.1 optimizations of class ImagePngLoader.
  • SSE4.1, AVX2, AVX-512BW, NEON, SVE2 optimizations of method SynetConvolution32fNhwcDirect::ReorderWeight.
  • SSE4.1, AVX2, AVX-512BW, NEON, SVE2 optimizations of methods SynetMergedConvolution32fCdc::ReorderFirstWeight, SynetMergedConvolution32fCdc::ReorderSecondWeight, SynetMergedConvolution32fCdc::ReorderThirdWeight.
  • SSE4.1, AVX2, AVX-512BW, NEON, SVE2 optimizations of methods SynetMergedConvolution32fCd::ReorderFirstWeight, SynetMergedConvolution32fCd::ReorderSecondWeight.
  • SSE4.1, AVX2, AVX-512BW, NEON, SVE2 optimizations of methods SynetMergedConvolution32fDc::ReorderFirstWeight, SynetMergedConvolution32fDc::ReorderSecondWeight.
Bug fixing
  • Error in SSE4.1, AVX2, AVX-512BW, NEON, SVE2 optimizations of class SynetMergedConvolution32f.
  • Error in AVX-512BW optimizations of class SynetConvolution32fNhwcDepthwise (microkernel Convolution32fNhwcDepthwise_k7p3d1s1w4).
  • Error in AMX-BF16 optimizations of class SynetMergedConvolution16bCdc (microkernel DepthwiseConvolution_k7p3d1s1w4).
Removing
  • Function SimdCopyFrame.
  • Function SimdFill.
  • Function SimdFillBgr.
  • Function SimdFillBgra.
  • Function SimdHogDirectionHistograms.
  • C++ wrapper Simd::HogDirectionHistograms.
  • Function SimdHogExtractFeatures.
  • C++ wrapper Simd::HogExtractFeatures.
  • Function SimdHogDeinterleave.
  • Function SimdHogFilterSeparable.
  • Types and functions of namespace Simd::Neural.
  • Function SimdNeuralConvert.
  • C++ wrapper Simd::NeuralConvert.
  • Function SimdNeuralProductSum.
  • Function SimdNeuralAddVector.
  • Function SimdNeuralAddValue.
  • Function SimdNeuralPow.
  • Function SimdNeuralDerivativeSigmoid.
  • Function SimdNeuralDerivativeTanh.
  • Function SimdNeuralDerivativeRelu.
  • Function SimdNeuralUpdateWeights.
  • Function SimdNeuralAdaptiveGradientUpdate.
  • Function SimdNeuralPooling1x1Max3x3.
  • Function SimdNeuralPooling2x2Max2x2.
  • Function SimdNeuralPooling2x2Max3x3.
  • Function SimdNeuralAddConvolution2x2Forward.
  • Function SimdNeuralAddConvolution3x3Forward.
  • Function SimdNeuralAddConvolution4x4Forward.
  • Function SimdNeuralAddConvolution5x5Forward.
  • Function SimdNeuralAddConvolution2x2Backward.
  • Function SimdNeuralAddConvolution3x3Backward.
  • Function SimdNeuralAddConvolution4x4Backward.
  • Function SimdNeuralAddConvolution5x5Backward.
  • Function SimdNeuralAddConvolution2x2Sum.
  • Function SimdNeuralAddConvolution3x3Sum.
  • Function SimdNeuralAddConvolution4x4Sum.
  • Function SimdNeuralAddConvolution5x5Sum.
  • Function SimdNeuralConvolutionForward.
  • Function SimdSynetAdd8i.
  • Function SimdSynetInnerProduct8i.
  • Function SimdSynetScale8iInit.
  • Function SimdSynetScale8iInternalBufferSize.
  • Function SimdSynetScale8iSetParams.
  • Function SimdSynetScale8iForward.
  • C++ wrapper Simd::SynetScale8i.
  • Function SimdSynetMergedConvolution8iInit.
  • Function SimdSynetMergedConvolution8iExternalBufferSize.
  • Function SimdSynetMergedConvolution8iInternalBufferSize.
  • Function SimdSynetMergedConvolution8iInfo.
  • Function SimdSynetMergedConvolution8iSetParams.
  • Function SimdSynetMergedConvolution8iForward.
  • C++ wrapper Simd::SynetMergedConvolution8i.
  • Function SimdSynetConvolution8iInit.
  • Function SimdSynetConvolution8iExternalBufferSize.
  • Function SimdSynetConvolution8iInternalBufferSize.
  • Function SimdSynetConvolution8iInfo.
  • Function SimdSynetConvolution8iSetParams.
  • Function SimdSynetConvolution8iForward.
  • C++ wrapper Simd::SynetConvolution8i.
  • Function SimdDetectionLoadA.
  • Function SimdDetectionLoadStringXml.
  • Function SimdDetectionInfo.
  • Function SimdDetectionInit.
  • Function SimdDetectionPrepare.
  • Function SimdDetectionHaarDetect32fp.
  • Function SimdDetectionHaarDetect32fi.
  • Function SimdDetectionLbpDetect32fp.
  • Function SimdDetectionLbpDetect32fi.
  • Function SimdDetectionLbpDetect16ip.
  • Function SimdDetectionLbpDetect16ii.
  • Type SimdDetectionInfoFlags.
  • C++ wrapper Simd::Detection.
  • Use example FaceDetection.
  • Types and functions of namespace Simd::Xml.
  • Type InputConvolution1x1V0Ptr and function SetInputV0.
  • Function SetInputV2.
  • Type OutputConvolutionV0Ptr and function SetOutputV0.
  • Stopping of support of RISCV/RISCV64 platform.
  • Class AmxBf16::SynetQuantizedInnerProductGemmV0.
  • Class AmxBf16::SynetConvolution16bNhwcGemmV0.
  • Method AmxBf16::SynetConvolution16bNhwcGemmV1::SetMacro32x32i_old.
  • Method Base::SynetConvolution16bNhwcGemmV1::CanInv2x2_old.
  • Method AmxBf16::SynetConvolution16bNhwcGemmV1::SetMacro32x32d.
  • Method Base::SynetConvolution16bNhwcGemmV1::CanDir2x2.
  • Method AmxBf16::SynetConvolution16bNhwcGemmV1::SetMacro32x32i.
  • Method Base::SynetConvolution16bNhwcGemmV1::CanInv2x2.
  • Method AmxBf16::SynetConvolution16bNhwcGemmV1::SetMacro64x16i.
  • Method Base::SynetConvolution16bNhwcGemmV1::CanInv4x1.
  • Class Base::SynetConvolution16bNhwcSpecV1.
  • Class Sse41::SynetConvolution16bNhwcSpecV1.
  • Class Avx2::SynetConvolution16bNhwcSpecV1.
  • Class Avx512bw::SynetConvolution16bNhwcSpecV1.
  • Class AmxBf16::SynetConvolution16bNhwcSpecV1.
  • Class Base::SynetConvolution16bNhwcSpecV2.
  • Class AmxBf16::SynetConvolution16bNhwcSpecV2.
  • Class AmxBf16::SynetQuantizedConvolutionNhwcGemmV0.
  • Class AmxBf16::SynetQuantizedConvolutionNhwcSpecV0.
  • Function SimdAlphaBlending2x.
  • C++ wrapper Simd::AlphaBlending2x.
  • HVX optimization of function AbsDifference.
  • HVX optimization of function AbsDifferenceSum.
  • HVX optimization of function AbsGradientSaturatedSum.
  • HVX optimization of function AbsSecondDerivativeHistogram.
  • HVX optimization of function AddFeatureDifference.
  • HVX optimization of function BgrToGray.
  • HVX optimization of function BgrToRgb.
  • HVX optimization of function CorrelationSum.
  • HVX optimization of function FillBgra.
  • HVX optimization of function FillPixel.
  • HVX optimization of function GetAbsDxColSums.
  • HVX optimization of function GetAbsDyRowSums.
  • HVX optimization of function GetColSums.
  • HVX optimization of function GetRowSums.
  • HVX optimization of function GetStatistic.
  • HVX optimization of function HistogramConditional.
  • HVX optimization of function HistogramMasked.
  • HVX optimization of function OperationBinary8u.
  • HVX optimization of function SquareSum.
  • HVX optimization of function ValueSquareSum.
  • HVX optimization of function ValueSquareSums.
  • HVX optimization of function ValueSum.
  • Enum value SimdCpuInfoHvx.
  • Stopping of support of HVX extension (Hexagon platform).

Python wrapper

New features
  • Method Simd.Image.CopyFrame.
Improving
  • Method Simd.Lib.Fill.
  • Method Simd.Lib.FillBgr.
  • Method Simd.Lib.FillBgra.
Removing
  • Function Simd.Lib.AlphaBlending2x.
  • Enum value Simd.CpuInfo.HVX.

Test framework

New features
  • Tests for verifying functionality of C++ wrapper Simd::SynetScale16b.
  • Tests for verifying functionality of method Simd.Image.CopyFrame.
  • Tests for verifying functionality of method Simd.Image.Fill.
  • Tests for verifying functionality of method Simd.Lib.FillBgr.
  • Tests for verifying functionality of method Simd.Lib.FillBgra.
Improving
  • Special tests of ContourDetector, ShiftDetector and ImageMatcher use data/image/forest.jpg.
Removing
  • Tests for verifying functionality of function CopyFrame.
  • Tests for verifying functionality of function Fill.
  • Tests for verifying functionality of function FillBgr.
  • Tests for verifying functionality of function FillBgra.
  • Tests for verifying functionality of function HogDirectionHistograms.
  • Tests for verifying functionality of function HogExtractFeatures.
  • Tests for verifying functionality of function HogDeinterleave.
  • Tests for verifying functionality of function HogFilterSeparable.
  • Tests for verifying functionality of Simd::Neural::Network::Predict.
  • Tests for verifying functionality of Simd::Neural::Network::Train.
  • Tests for verifying functionality of function NeuralConvert.
  • Tests for verifying functionality of function NeuralProductSum.
  • Tests for verifying functionality of function NeuralAddVector.
  • Tests for verifying functionality of function NeuralAddValue.
  • Tests for verifying functionality of function NeuralPow.
  • Tests for verifying functionality of function NeuralDerivativeSigmoid.
  • Tests for verifying functionality of function NeuralDerivativeTanh.
  • Tests for verifying functionality of function NeuralDerivativeRelu.
  • Tests for verifying functionality of function NeuralUpdateWeights.
  • Tests for verifying functionality of function NeuralAdaptiveGradientUpdate.
  • Tests for verifying functionality of function NeuralPooling1x1Max3x3.
  • Tests for verifying functionality of function NeuralPooling2x2Max2x2.
  • Tests for verifying functionality of function NeuralPooling2x2Max3x3.
  • Tests for verifying functionality of function NeuralAddConvolution2x2Forward.
  • Tests for verifying functionality of function NeuralAddConvolution3x3Forward.
  • Tests for verifying functionality of function NeuralAddConvolution4x4Forward.
  • Tests for verifying functionality of function NeuralAddConvolution5x5Forward.
  • Tests for verifying functionality of function NeuralAddConvolution2x2Backward.
  • Tests for verifying functionality of function NeuralAddConvolution3x3Backward.
  • Tests for verifying functionality of function NeuralAddConvolution4x4Backward.
  • Tests for verifying functionality of function NeuralAddConvolution5x5Backward.
  • Tests for verifying functionality of function NeuralAddConvolution2x2Sum.
  • Tests for verifying functionality of function NeuralAddConvolution3x3Sum.
  • Tests for verifying functionality of function NeuralAddConvolution4x4Sum.
  • Tests for verifying functionality of function NeuralAddConvolution5x5Sum.
  • Tests for verifying functionality of function NeuralConvolutionForward.
  • Tests for verifying functionality of function SynetAdd8i.
  • Tests for verifying functionality of function SynetInnerProduct8i.
  • Tests for verifying functionality of function SynetScale8iForward.
  • Tests for verifying functionality of function SynetMergedConvolution8iForward.
  • Tests for verifying functionality of C++ wrapper Simd::SynetMergedConvolution8i.
  • Tests for verifying functionality of function SynetConvolution8iForward.
  • Tests for verifying functionality of C++ wrapper Simd::SynetConvolution8i.
  • Tests for verifying functionality of function DetectionHaarDetect32fp.
  • Tests for verifying functionality of function DetectionHaarDetect32fi.
  • Tests for verifying functionality of function DetectionLbpDetect32fp.
  • Tests for verifying functionality of function DetectionLbpDetect32fi.
  • Tests for verifying functionality of function DetectionLbpDetect16ip.
  • Tests for verifying functionality of function DetectionLbpDetect16ii.
  • Tests for verifying functionality of C++ wrapper Simd::Detection.
  • Test image data/image/face/lena.pgm.
  • Test image data/image/digit/0.pgm.
  • Test image data/image/digit/1.pgm.
  • Test image data/image/digit/2.pgm.
  • Test image data/image/digit/3.pgm.
  • Test image data/image/digit/4.pgm.
  • Test image data/image/digit/5.pgm.
  • Test image data/image/digit/6.pgm.
  • Test image data/image/digit/7.pgm.
  • Test image data/image/digit/8.pgm.
  • Test image data/image/digit/9.pgm.
  • Tests for verifying functionality of function AlphaBlending2x.
  • OpenCV LBP cascade data/cascade/lbp_face.xml.
  • OpenCV HAAR cascade data/cascade/haar_face_1.xml.
  • OpenCV HAAR cascade data/cascade/haar_face_0.xml.

Infrastructure

Removing
  • SIMD_INT8_DEBUG cmake option.
  • SIMD_INT8_DEBUG_DISABLE macro.
  • SIMD_HVX_DISABLE macro.
  • CMake build for Hexagon platform.
  • Job build_and_test_hexagon_cross in Github actions script for CMake.

Documentation

Improving
  • Improved description of structure Simd::Font.
  • Improved description of structure Simd::Frame.
  • Added description of class Simd::SynetScale16b.
  • Improved description of function Simd::CopyFrame.
  • Improved description of function Simd::Fill.
  • Improved description of function Simd::FillBgr.
  • Improved description of function Simd::FillBgra.
  • Improved description of structure Simd::ImageMatcher.
  • Improved description of types and functions of namespace Simd::Motion.
  • Added description of function Simd::Parallel.
  • Improved description of types and functions of namespace Simd::Pixel.
  • Improved description of structure Simd::Point and related functions.
  • Improved description of structure Simd::Pyramid and function Simd::Scale.
  • Improved description of structure Simd::Rectangle and related functions.
  • Improved description of structure Simd::ShiftDetector.
  • Improved description of structure Simd::View and related functions.
  • Examples of structures Simd::View, Simd::ContourDetector and Simd::ShiftDetector load data/image/forest.jpg.
Removing
  • Description of namespace Simd::Neural.
  • Description of function SimdSynetInnerProduct8i.
  • Description of class Simd::SynetScale8i.
  • Description of function SimdSynetScale8iInit.
  • Description of function SimdSynetScale8iInternalBufferSize.
  • Description of function SimdSynetScale8iSetParams.
  • Description of function SimdSynetScale8iForward.
  • Description of class Simd::SynetMergedConvolution8i.
  • Description of function SimdSynetMergedConvolution8iInit.
  • Description of function SimdSynetMergedConvolution8iExternalBufferSize.
  • Description of function SimdSynetMergedConvolution8iInternalBufferSize.
  • Description of function SimdSynetMergedConvolution8iInfo.
  • Description of function SimdSynetMergedConvolution8iSetParams.
  • Description of function SimdSynetMergedConvolution8iForward.
  • Description of class Simd::SynetConvolution8i.
  • Description of function SimdSynetConvolution8iInit.
  • Description of function SimdSynetConvolution8iExternalBufferSize.
  • Description of function SimdSynetConvolution8iInternalBufferSize.
  • Description of function SimdSynetConvolution8iInfo.
  • Description of function SimdSynetConvolution8iSetParams.
  • Description of function SimdSynetConvolution8iForward.
  • Description of enum SimdDetectionInfoFlags.
  • Description of function SimdDetectionLoadA.
  • Description of function SimdDetectionLoadStringXml.
  • Description of function SimdDetectionInfo.
  • Description of function SimdDetectionInit.
  • Description of function SimdDetectionPrepare.
  • Description of function SimdDetectionHaarDetect32fp.
  • Description of function SimdDetectionHaarDetect32fi.
  • Description of function SimdDetectionLbpDetect32fp.
  • Description of function SimdDetectionLbpDetect32fi.
  • Description of function SimdDetectionLbpDetect16ip.
  • Description of function SimdDetectionLbpDetect16ii.
  • Description of structure Simd::Detection.