Simd Library Release Notes (2013).

Home | Release Notes | Download | Documentation | Issues | GitHub | SourceForge

2017 | 2016 | 2015 | 2014 | 2013

December 2, 2013 (version 1.1.12.171)

Algorithms

New features
  • Base implementation, SSE2 and AVX2 optimization of function Bgr48pToBgra32.
  • Function IntegralSum.
  • Base implementation, SSE2 and AVX2 optimization of function SobelDx.
  • Base implementation, SSE2 and AVX2 optimization of function SobelDy.
Changes
  • Using references instead of pointers in SimdUtils.
Removing
  • Removed all functions from SimdAlg.h.
  • Stopped using of types uchar, ushort and uint.
  • Removed functions InterleaveBgra and YuvToBgra.
Bug fixing
  • Wrong assert condition in function ConditionalSquareGradientSum.
  • Wrong checking of reference for NULL in function TextureGetDifferenceSum.
  • Wrong argument checking in function CopyFrame.
  • Wrong checking of AVX2 support for GCC.

Test framework

New features
  • Tests for verifying functionality of function Bgr48pToBgra32.
  • New function performance test report.
  • Tests for verifying functionality of function SobelDx.
  • Tests for verifying functionality of function SobelDy.

Infrastructure

New features
  • Added SimdBase, SimdSse2, SimdSse42, SimdAvx2 and Simd projects for Visual Studio 2012 (instead of SimdDll and SimdLib projects).
  • Added SimdBase, SimdSse2, SimdSse42, SimdAvx2 and Simd projects for Code::Blocks (instead of SimdDll and SimdLib projects).
Removing
  • Removed x64 platform for Code::Blocks.
Home

November 1, 2013 (version 1.0.11.152)

Algorithms

New features
  • Histogram function.
  • FillFrame function.
  • Base implementation, SSE2 and AVX2 optimization of function GrayToBgra.
  • Base implementation, SSE2 and AVX2 optimization of function AlphaBlending.
  • Base implementation, SSE2 and AVX2 optimization of function VectorProduct.
  • Base implementation, SSE2 and AVX2 optimization of function MedianFilterRhomb3x3.
  • Base implementation, SSE2 and AVX2 optimization of function MedianFilterRhomb5x5.
  • Base implementation, SSE2 and AVX2 optimization of function AbsDifferenceSums3x3.
  • Extend functionality of functions Binarization and AveragingBinarization.
  • Base implementation, SSE2 and AVX2 optimization of function ConditionalCount.
  • Base implementation, SSE2 and AVX2 optimization of function ConditionalSum.
  • Base implementation, SSE2 and AVX2 optimization of function ConditionalSquareSum.
  • Base implementation, SSE2 and AVX2 optimization of function ConditionalSquareGradientSum.
Bug fixing
  • Wrong assert condition in function AbsSecondDerivativeHistogram.
  • Wrong arguments for functions GreaterOrEqualThenU8 and LesserOrEqualThenU8.
  • Wrong memory alignment in function Yuv420ToBgra.
  • Compile error at function Round (GCC, x64 platform, when defined macro SIMD_SSE2_DEPRECATE).
  • Linker error: double definition of DllMain if Simd Library was linked statically into another DLL.
  • Crash at functions LoadBeforeFirst and LoadAfterLast for CPU without AVX support.
  • Compile error at GCC (64-bit Linux) : long long is not equal to int64_t.

Test framework

New features
  • Tests for verifying functionality of function GrayToBgra.
  • Tests for verifying functionality of function AlphaBlending.
  • Tests for verifying functionality of function VectorProduct.
  • Tests for verifying functionality of function MedianFilterRhomb3x3.
  • Tests for verifying functionality of function MedianFilterRhomb5x5.
  • Tests for verifying functionality of function AbsDifferenceSums3x3.
  • Tests for verifying functionality of function ConditionalCount.
  • Tests for verifying functionality of function ConditionalSum.
  • Tests for verifying functionality of function ConditionalSquareSum.
  • Tests for verifying functionality of function ConditionalSquareGradientSum.

Infrastructure

New features
  • Supporting for static and dynamic linking interface for Simd Library.
  • Added SimdLib and SimdDll project files for Visual Studio 2012 (instead of Simd project).
  • Added SimdLib and SimdDll project files for Code::Blocks (instead of Simd project).
  • Project file filters Base, Sse2, Sse42, Avx2 and Lib instead of Alg.
Home

October 1, 2013 (version 0.0.10.119)

Algorithms

New features
  • Round function.
  • Base implementation, SSE2 and AVX2 optimization of function GetAbsDyRowSums.
  • Base implementation, SSE2 and AVX2 optimization of function GetAbsDxColSums.
  • Point structure.
  • Rectangle structure.
  • Base implementation, SSE2 and AVX2 optimization of function LbpEstimate.
  • Function CopyFrame.
  • Function Fill.
  • Base implementation, SSE2 and AVX2 optimization of function FillBgra.
Changes
  • Replace all View's functions to SimdUtils.
  • Refactoring of View.
Bug fixing
  • Wrong initialization of float point constants.

Test framework

New features
  • Tests for verifying functionality of function GetAbsDyRowSums.
  • Tests for verifying functionality of function GetAbsDxColSums.
  • Additional tests for all functions.
  • Tests for verifying functionality of function LbpEstimate.
  • Tests for verifying functionality of function FillBgra.
Home

September 2, 2013 (version 0.0.9.105)

Algorithms

New features
  • Base implementation, SSE2 and AVX2 optimization of function AddFeatureDifference.
  • Base implementation, SSE2 and AVX2 optimization of function TextureBoostedSaturatedGradient.
  • Base implementation, SSE2 and AVX2 optimization of function TextureBoostedUv.
  • Base implementation, SSE2 and AVX2 optimization of function TextureGetDifferenceSum.
  • Base implementation, SSE2 and AVX2 optimization of function TexturePerformCompensation.
  • Base implementation, SSE2 and AVX2 optimization of function GetMoments.
  • Base implementation, SSE2 and AVX2 optimization of function AveragingBinarization.
  • Base implementation, SSE2 and AVX2 optimization of function Operation(SaturatedSubtraction).
  • Base implementation, SSE2 and AVX2 optimization of function GetRowSums.
  • Base implementation, SSE2 and AVX2 optimization of function GetColSums.
Bug fixing
  • Wrong memory alignment for destination image in function ReduceGray3x3 for AVX2 optimization.
  • Wrong memory alignment in function Binarization for SSE2 and AVX2 optimizations.

Test framework

New features
  • Tests for verifying functionality of function AddFeatureDifference.
  • Tests for verifying functionality of function TextureBoostedSaturatedGradient.
  • Tests for verifying functionality of function TextureBoostedUv.
  • Tests for verifying functionality of function TextureGetDifferenceSum.
  • Tests for verifying functionality of function TexturePerformCompensation.
  • Tests for verifying functionality of function GetMoments.
  • Tests for verifying functionality of function AveragingBinarization.
  • Tests for verifying functionality of function Operation(SaturatedSubtraction).
  • Tests for verifying functionality of function GetRowSums.
  • Tests for verifying functionality of function GetColSums.
Changes
  • Replace all test declarations to file Test.h.
Home

August 1, 2013 (version 0.0.8.91)

Algorithms

New features
  • AVX2 optimization of function ReduceGray4x4.
  • AVX2 optimization of function ReduceGray5x5.
  • AVX2 optimization of function AbsDifferenceSum.
  • AVX2 optimization of function AbsGradientSaturatedSum.
  • AVX2 optimization of function AbsSecondDerivativeHistogram.
  • AVX2 optimization of function BgraToGray.
  • AVX2 optimization of function BgrToGray.
  • AVX2 optimization of function Binarization.
  • AVX2 optimization of function DeinterleaveUv.
  • AVX2 optimization of function GaussianBlur3x3.
  • AVX2 optimization of function SquaredDifferenceSum.
  • AVX2 optimization of function GetStatistic.
  • AVX2 optimization of function StretchGray2x2.
  • AVX2 optimization of functions Yuv420ToBgra and Yuv444ToBgra.
  • AVX2 optimization of functions Yuv420ToHue and Yuv444ToHue.
  • AVX2 optimization of function ShiftBilinear.
  • AVX2 optimization of function ResizeBilinear.
  • Base implementation, SSE2 and AVX2 optimization of function EdgeBackgroundGrowRangeSlow.
  • Base implementation, SSE2 and AVX2 optimization of function EdgeBackgroundGrowRangeFast.
  • Base implementation, SSE2 and AVX2 optimization of function EdgeBackgroundIncrementCount.
  • Base implementation, SSE2 and AVX2 optimization of function EdgeBackgroundAdjustRange.
  • Base implementation, SSE2 and AVX2 optimization of function EdgeBackgroundShiftRange.
Changes
  • Using function Binarization instead of BinarizationGreaterThen, BinarizationLesserThen and BinarizationEqualTo.

Test framework

New features
  • Tests for verifying functionality of Sse2 and Avx2 versions of function ReduceGray4x4.
  • Tests for verifying functionality of Sse2 and Avx2 versions of function ReduceGray5x5.
  • Tests for verifying functionality of Sse2 and Avx2 versions of function AbsDifferenceSum.
  • Tests for verifying functionality of Sse2 and Avx2 versions of function AbsGradientSaturatedSum.
  • Tests for verifying functionality of Sse2 and Avx2 versions of function AbsSecondDerivativeHistogram.
  • Tests for verifying functionality of Sse2 and Avx2 versions of function BgraToGray.
  • Tests for verifying functionality of Sse2 and Avx2 versions of function BgrToGray.
  • Tests for verifying functionality of function Binarization.
  • Tests for verifying functionality of Sse2 and Avx2 versions of function DeinterleaveUv.
  • Tests for verifying functionality of Sse2 and Avx2 versions of function GaussianBlur3x3.
  • Tests for verifying functionality of Sse2 and Avx2 versions of function SquaredDifferenceSum.
  • Tests for verifying functionality of Sse2 and Avx2 versions of function GetStatistic.
  • Tests for verifying functionality of Sse2 and Avx2 versions of function StretchGray2x2.
  • Tests for verifying functionality of Sse2 and Avx2 versions of functions Yuv420ToBgra and Yuv444ToBgra.
  • Tests for verifying functionality of Sse2 and Avx2 versions of functions Yuv420ToHue and Yuv444ToHue.
  • Tests for verifying functionality of Sse2 and Avx2 versions of function ShiftBilinear.
  • Tests for verifying functionality of Sse2 and Avx2 versions of function ResizeBilinear.
  • Tests for verifying functionality of function EdgeBackgroundGrowRangeSlow.
  • Tests for verifying functionality of function EdgeBackgroundGrowRangeFast.
  • Tests for verifying functionality of function EdgeBackgroundIncrementCount.
  • Tests for verifying functionality of function EdgeBackgroundAdjustRange.
  • Tests for verifying functionality of function EdgeBackgroundShiftRange.

Infrastructure

New features
  • Avx file filter.
Removing
  • Project files for Visual Studio 2008.
  • Project files for Visual Studio 2010.
Home

July 24, 2013 (version 0.0.7.71)

Algorithms

New features
  • Base implementation, SSE2 and AVX2 optimization of function Operation.
  • AVX2 optimization of function MedianFilterSquare3x3.
  • AVX2 optimization of function MedianFilterSquare5x5.
  • AVX2 optimization of function BackgroundGrowRangeSlow.
  • AVX2 optimization of function BackgroundGrowRangeFast.
  • AVX2 optimization of function BackgroundIncrementCount.
  • AVX2 optimization of function BackgroundAdjustRange.
  • AVX2 optimization of function BackgroundShiftRange.
  • AVX2 optimization of function BackgroundInitMask.
  • AVX2 optimization of function ReduceGray2x2.
  • AVX2 optimization of function ReduceGray3x3.
Bug fixing
  • Wrong initialization of SSE2 and AVX2 vector constants for GCC.
Changes
  • Using function Operation instead of Average.

Test framework

New features
  • Tests for verifying functionality of function Operation.
  • Tests for verifying functionality of Sse2 and Avx2 versions of function MedianFilterSquare3x3.
  • Tests for verifying functionality of Sse2 and Avx2 versions of function MedianFilterSquare5x5.
  • Optional running of single test.
  • Tests for verifying functionality of Sse2 and Avx2 versions of function BackgroundGrowRangeSlow.
  • Tests for verifying functionality of Sse2 and Avx2 versions of function BackgroundGrowRangeFast.
  • Tests for verifying functionality of Sse2 and Avx2 versions of function BackgroundIncrementCount.
  • Tests for verifying functionality of Sse2 and Avx2 versions of function BackgroundAdjustRange.
  • Tests for verifying functionality of Sse2 and Avx2 versions of function BackgroundShiftRange.
  • Tests for verifying functionality of Sse2 and Avx2 versions of function BackgroundInitMask.
  • Tests for verifying functionality of Sse2 and Avx2 versions of function ReduceGray2x2.
  • Tests for verifying functionality of Sse2 and Avx2 versions of function ReduceGray3x3.
Home

June 28, 2013 (version 0.0.6.59)

Algorithms

New features
  • Base implementation and SSE2 optimization of function StretchGray2x2.
  • Base implementation and SSE2 optimization of function BackgroundGrowRangeSlow.
  • Base implementation and SSE2 optimization of function BackgroundGrowRangeFast.
  • Base implementation and SSE2 optimization of function BackgroundIncrementCount.
  • Base implementation and SSE2 optimization of function BackgroundAdjustRange.
  • Base implementation and SSE2 optimization of function BackgroundShiftRange.
  • Base implementation and SSE2 optimization of function BackgroundInitMask.

Test framework

New features
  • Tests for verifying functionality of function StretchGray2x2.
  • Tests for verifying functionality of function BackgroundGrowRangeSlow.
  • Tests for verifying functionality of function BackgroundGrowRangeFast.
  • Tests for verifying functionality of function BackgroundIncrementCount.
  • Tests for verifying functionality of function BackgroundAdjustRange.
  • Tests for verifying functionality of function BackgroundShiftRange.
  • Tests for verifying functionality of function BackgroundInitMask.
Home

May 8, 2013 (version 0.0.5.50)

Algorithms

New features
  • Base implementation and SSE2 optimization of function GreaterThenBinarization.
  • Base implementation and SSE2 optimization of function LesserThenBinarization.
  • Base implementation and SSE2 optimization of function EqialToBinarization.
  • Base implementation and SSE2 optimization of function AbsGradientSaturatedSum.
  • Base implementation and SSE2 optimization of function ShiftBilinear.
  • Base implementation and SSE2 optimization of function GetStatistic.
Bug fixing
  • Wrong initialization of SSE2 and AVX2 vector constants for GCC.

Test framework

New features
  • Tests for verifying functionality of function GreaterThenBinarization.
  • Tests for verifying functionality of function LesserThenBinarization.
  • Tests for verifying functionality of function EqualToBinarization.
  • Tests for verifying functionality of function AbsGradientSaturatedSum.
  • Tests for verifying functionality of function ShiftBilinear.
  • Tests for verifying functionality of function GetStatistic.
Bug fixing
  • Wrong time measurement for GCC.
Home

April 12, 2013 (version 0.0.4.41)

Algorithms

New features
  • Loading, storing and initialization of AVX2 vectors.
  • AVX2 optimization of function Average.
  • Base implementation and SSE2 optimization of function AbsSecondDerivativeHistogram.
Bug fixing
  • Function ExtractInt64 is not work correctly for Visual Studio 2008 (x64/Release).
  • Function ResizeBilinear (with View arguments) is not work correctly.
  • Function Allocate in GCC version is not work with align less than sizeof(void*).
Changes
  • Memory allocation for GCC.
  • Initialization of vector constants for GCC.
  • Renaming of "set2" functions.
  • Added arbitrary index of mask for functions AbsDifferenceSum and SquareDifferenceSum.

Test framework

New features
  • Tests for direct verifying functionality of functions Sse2::Average and Avx2::Average.
  • Tests for verifying functionality of function AbsSecondDerivativeHistogram.
Bug fixing
  • Compile errors for GCC.
Changes
  • Update tests for arbitrary index of mask for functions AbsDifferenceSum and SquareDifferenceSum.

Infrastructure

New features
  • Project files for Code::Blocks.
Home

March 15, 2013 (version 0.0.3.28)

Algorithms

New features
  • Base implementation and SSE2 optimization of function DeinterleaveUv.
  • Supporting of image format Uv16 (UV-plane of NV12).
  • Base implementation and SSE2 optimization of function GaussianBlur3x3.
  • Base implementation and SSE2 optimization of function AbsDifferenceSum.
  • Base implementation and SSE2 optimization of function Average.
  • Template version of functions Swap, Square, Min, Max and RestrictRange.
Bug fixing
  • Wrong memory align in the internal buffer of function Sse2::ResizeBilinear.
  • Unnecessary parentheses in GCC version of function Cpuid::CheckBit.

Test framework

New features
  • Tests for verifying functionality of function ResizeBilinear.
  • Tests for verifying functionality of function DeinterleaveUv.
  • Additional tests for images in format Uv16 (UV-plane of NV12).
  • Tests for verifying functionality of function GaussianBlur3x3.
  • Tests for verifying functionality of function AbsDifferenceSum.
  • Tests for verifying functionality of function Average.

Infrastructure

New features
  • File with release notes (this file).
Changes
  • System of version numbering of the library.
Home

February 13, 2013 (version 0.0.2.18)

Algorithms

New features
  • SSE2 optimization of functions Yuv420ToBgra and Yuv444ToBgra.
  • Checking of supporting AVX and AVX2 extensions by OS and CPU.
  • Base implementation and SSE2 optimization of function MedianFilterSquare3x3.
  • Base implementation and SSE2 optimization of function MedianFilterSquare5x5.
  • Structure View for storing of images (moved from Test project). View-specific functions for all algoritms.
  • Function Copy (moved from Test project).
  • Parameter alpha (transparence) to function BgrToBgra.
  • Base implementation and SSE2 optimization of function SquaredDifferenceSum.
  • Library version (automatically generated from SVN revision).
Changes
  • Allocation of temporary buffers on stack was removed.
  • The using of pointers to functions was terminated.
  • Function SquaredDifferenceSum32 was removed.
Bug fixing
  • The bug in the base implementation of function Yuv420ToHue.

Test framework

New features
  • Tests for verifying functionality of functions Yuv420ToHue and Yuv444ToHue.
  • Tests for verifying functionality of functions Yuv420ToBgra and Yuv444ToBgra.
  • Tests for verifying functionality of functions MedianFilterSquare3x3 and MedianFilterSquare5x5.
  • Special macro for performance testing.
  • Tests for verifying functionality of function SquaredDifferenceSum.
Changes
  • Structure View and function Copy were moved to Simd project.

Infrastructure

New features
  • Project files for Visual Studio 2010.
  • Project files for Visual Studio 2012.
  • Supporting of x64 platform.
  • File filters in Simd and Test projects.
  • A script for generation of library version from SVN revision.
  • A script for building of library release archive.
Home

February 1, 2013 (version 0.0.1.3)

Algorithms

New features
  • Base implementation of functions Yuv420ToHue and Yuv444ToHue.
  • Base implementation of functions Yuv420ToBgra and Yuv444ToBgra.
  • Base implementation of functions Yuv420ToBgr and Yuv444ToBgr.
  • Base implementation and SSE2 optimization (for aligned case) of function SquaredDifferenceSum32.
  • Base implementation and SSE2 optimization (for gray images) of function ResizeBilinear.
  • Base implementation and SSE2 optimization of functions ReduceGray2x2, ReduceGray3x3, ReduceGray4x4 and ReduceGray5x5.
  • Checking of supporting SSE2 and SSE4.2 extensions by OS and CPU.
  • Base implementation and SSE4.2 optimization of function Crc32.
  • Base implementation and SSE2 optimization of function BgrToGray.
  • Base implementation of function BgrToBgra.
  • Base implementation and SSE2 optimization of function BgraToGray.
  • Base implementation of function BgraToBgr.

Test framework

New features
  • Structure View for storing of images.
  • Class Performance for testing of algorithm performance.
  • Utilities for initialization and for comparison of images.
  • Tests for verifying functionality of function BgrToGray.
  • Tests for verifying functionality of function BgraToGray.
  • Tests for verifying functionality of function Crc32.
  • Tests for verifying functionality of functions ReduceGray2x2, ReduceGray3x3, ReduceGray4x4 and ReduceGray5x5.

Infrastructure

New features
  • Project files for Visual Studio 2008.
Home
2017 | 2016 | 2015 | 2014 | 2013