Implementation of the simd-version of the dilation + erosion
Comparison of the SIMD vs non-SIMD version:
Benchmark | Time | CPU | Time_Old | Time_New | CPU_Old | CPU_New |
---|---|---|---|---|---|---|
BMMorpho/Dilation_ApproximatedDisc/2 |
-0.8659 | -0.8659 | 541950368 | 72669064 | 540700234 | 72502281 |
BMMorpho/Dilation_ApproximatedDisc/4 |
-0.7812 | -0.7812 | 1276842321 | 279377098 | 1274189319 | 278766630 |
BMMorpho/Dilation_ApproximatedDisc/8 |
-0.7310 | -0.7315 | 2061994131 | 554613159 | 2057824021 | 552622900 |
BMMorpho/Dilation_ApproximatedDisc/16 |
-0.7131 | -0.7142 | 2106786311 | 604408547 | 2103059669 | 601117129 |
BMMorpho/Dilation_ApproximatedDisc/32 |
-0.6704 | -0.6708 | 2866293847 | 944851239 | 2861064044 | 941946828 |
BMMorpho/Dilation_ApproximatedDisc/64 |
-0.5733 | -0.5735 | 2939813774 | 1254538857 | 2934387533 | 1251502080 |
BMMorpho/Dilation_ApproximatedDisc/128 |
-0.1777 | -0.1793 | 3061168779 | 2517120443 | 3055584439 | 2507812718 |
BMMorpho/Dilation_EuclideanDisc_naive/2 |
-0.0043 | -0.0045 | 1572851019 | 1566056458 | 1570632869 | 1563629938 |
BMMorpho/Dilation_EuclideanDisc_naive/4 |
-0.3396 | -0.3399 | 4172147063 | 2755124163 | 4167294200 | 2750848334 |
BMMorpho/Dilation_EuclideanDisc_naive/8 |
-0.4211 | -0.4209 | 10736498880 | 6215749783 | 10720037711 | 6207507286 |
BMMorpho/Dilation_EuclideanDisc_naive/16 |
-0.4712 | -0.4710 | 35201872554 | 18614376840 | 35141724957 | 18591223190 |
BMMorpho/Dilation_EuclideanDisc_incremental/2 |
+0.0104 | +0.0100 | 1804395403 | 1823108396 | 1801711079 | 1819744001 |
BMMorpho/Dilation_EuclideanDisc_incremental/4 |
-0.2970 | -0.2973 | 3428653486 | 2410183391 | 3423962174 | 2405866331 |
BMMorpho/Dilation_EuclideanDisc_incremental/8 |
-0.4155 | -0.4158 | 4643025765 | 2714062188 | 4636872034 | 2708805195 |
BMMorpho/Dilation_EuclideanDisc_incremental/16 |
-0.4156 | -0.4157 | 6866483607 | 4013023717 | 6857678208 | 4006796002 |
BMMorpho/Dilation_EuclideanDisc_incremental/32 |
-0.2896 | -0.2892 | 12259731397 | 8709050065 | 12235650606 | 8696760720 |
BMMorpho/Dilation_EuclideanDisc_incremental/64 |
-0.2355 | -0.2353 | 22787165218 | 17420871765 | 22750505766 | 17396416322 |
BMMorpho/Dilation_EuclideanDisc_incremental/128 |
-0.2541 | -0.2542 | 65683465698 | 48994085637 | 65584444573 | 48910673821 |
BMMorpho/Dilation_Square/2 |
-0.8569 | -0.8569 | 535187997 | 76609639 | 534178852 | 76439920 |
BMMorpho/Dilation_Square/4 |
-0.8542 | -0.8542 | 497961210 | 72603777 | 497002944 | 72441305 |
BMMorpho/Dilation_Square/8 |
-0.8553 | -0.8553 | 476434224 | 68960360 | 475475257 | 68812751 |
BMMorpho/Dilation_Square/16 |
-0.8440 | -0.8439 | 479265735 | 74788366 | 478241794 | 74633548 |
BMMorpho/Dilation_Square/32 |
-0.8067 | -0.8068 | 487729673 | 94258433 | 486739596 | 94048615 |
BMMorpho/Dilation_Square/64 |
-0.7168 | -0.7168 | 504197532 | 142776763 | 503008118 | 142462679 |
BMMorpho/Dilation_Square/128 |
-0.3785 | -0.3787 | 519816850 | 323080487 | 518815272 | 322350927 |
BMMorpho/Opening_Disc |
-0.6666 | -0.6666 | 5717045025 | 1906197243 | 5705134568 | 1901967861 |
BMMorpho/Median_Filter_Disc |
+0.0016 | +0.0020 | 69837168106 | 69946279052 | 69721674401 | 69860260896 |
BMMorpho/Opening_By_Reconstruction_Disc |
-0.0207 | -0.0206 | 4558977809 | 4464462162 | 4541016274 | 4447599919 |
BMMorpho/Hit_or_miss_corner |
-0.0225 | -0.0217 | 1387897485 | 1356710501 | 1384690825 | 1354707968 |
BMMorpho/minima |
-0.0585 | -0.0578 | 589723367 | 555244031 | 588260799 | 554237788 |
BMMorpho/cdt_2_3 |
-0.0308 | -0.0301 | 215305608 | 208673984 | 214707456 | 208246069 |
BMMorpho/watershed |
-0.0539 | -0.0536 | 3534137449 | 3343791817 | 3522403121 | 3333436941 |
Comparaison of parallel vs non-parallel version
Benchmark | Time | CPU | Time Old | Time New | CPU Old | CPU New |
---|---|---|---|---|---|---|
BMMorpho/Dilation_[Square/ vs. Square_parallel/]2 |
-0.6791 | -0.6941 | 78810069 | 25288063 | 78612017 | 24044876 |
BMMorpho/Dilation_[Square/ vs. Square_parallel/]4 |
-0.6856 | -0.6963 | 73916845 | 23236893 | 73736597 | 22395696 |
BMMorpho/Dilation_[Square/ vs. Square_parallel/]8 |
-0.6573 | -0.6648 | 71660750 | 24557115 | 71479678 | 23962315 |
BMMorpho/Dilation_[Square/ vs. Square_parallel/]16 |
-0.6590 | -0.6675 | 78098386 | 26629532 | 77901621 | 25904505 |
BMMorpho/Dilation_[Square/ vs. Square_parallel/]32 |
-0.6444 | -0.6522 | 96415998 | 34283505 | 96185968 | 33455582 |
BMMorpho/Dilation_[Square/ vs. Square_parallel/]64 |
-0.5759 | -0.6990 | 157041036 | 66606366 | 156622454 | 47142568 |
BMMorpho/Dilation_[Square/ vs. Square_parallel/]128 |
-0.3119 | -0.3914 | 336139285 | 231307399 | 335332546 | 204088832 |
BMMorpho/Dilation_Approximated[Disc/ vs. Disc_parallel/]2 |
-0.6782 | -0.6794 | 73174220 | 23547710 | 72976635 | 23396538 |
BMMorpho/Dilation_Approximated[Disc/ vs. Disc_parallel/]4 |
-0.7370 | -0.7562 | 285669656 | 75131583 | 284848259 | 69442747 |
BMMorpho/Dilation_Approximated[Disc/ vs. Disc_parallel/]8 |
-0.7278 | -0.7313 | 539221300 | 146749628 | 537679508 | 144498558 |
BMMorpho/Dilation_Approximated[Disc/ vs. Disc_parallel/]16 |
-0.7176 | -0.7745 | 572206983 | 161611116 | 570699309 | 128665346 |
BMMorpho/Dilation_Approximated[Disc/ vs. Disc_parallel/]32 |
-0.7166 | -0.7385 | 911374909 | 258248164 | 908826244 | 237686751 |
BMMorpho/Dilation_Approximated[Disc/ vs. Disc_parallel/]64 |
-0.7161 | -0.7392 | 1372911329 | 389777893 | 1367295017 | 356587962 |
BMMorpho/Dilation_Approximated[Disc/ vs. Disc_parallel/]128 |
-0.7020 | -0.7364 | 2572677734 | 766539054 | 2563006202 | 675557071 |
BMMorpho/Dilation_Euclidean[Disc_incremental/ vs. Disc_incremental_parallel/]2 |
-0.8242 | -0.8292 | 1939866065 | 341043728 | 1934534643 | 330411677 |
BMMorpho/Dilation_Euclidean[Disc_incremental/ vs. Disc_incremental_parallel/]4 |
-0.8122 | -0.8319 | 2259840836 | 424426909 | 2254287309 | 378961019 |
BMMorpho/Dilation_Euclidean[Disc_incremental/ vs. Disc_incremental_parallel/]8 |
-0.7958 | -0.8101 | 2925576822 | 597489704 | 2917669432 | 554129424 |
BMMorpho/Dilation_Euclidean[Disc_incremental/ vs. Disc_incremental_parallel/]16 |
-0.7754 | -0.7800 | 4451636152 | 999677102 | 4438622741 | 976556404 |
BMMorpho/Dilation_Euclidean[Disc_incremental/ vs. Disc_incremental_parallel/]32 |
-0.7335 | -0.7442 | 7771847389 | 2070849727 | 7755588083 | 1983504805 |
BMMorpho/Dilation_Euclidean[Disc_incremental/ vs. Disc_incremental_parallel/]64 |
-0.7309 | -0.7463 | 19311055990 | 5196990540 | 19273381417 | 4888800531 |
BMMorpho/Dilation_Euclidean[Disc_incremental/ vs. Disc_incremental_parallel/]128 |
-0.7098 | -0.7318 | 50419306359 | 14633237286 | 50324428719 | 13496630665 |