115 lines
4.7 KiB
Plaintext
115 lines
4.7 KiB
Plaintext
[/===========================================================================
|
|
Copyright (c) 2017 Steven Ross, Francisco Tapia, Orson Peters
|
|
|
|
|
|
Distributed under the Boost Software License, Version 1.0
|
|
See accompanying file LICENSE_1_0.txt or copy at
|
|
http://www.boost.org/LICENSE_1_0.txt
|
|
=============================================================================/]
|
|
|
|
[section:linux_parallel 3.4- Linux Benchmarks]
|
|
[:
|
|
The following results are from complex benchmarks, not include in the library because they use non free software.
|
|
(If you are interested in them, contact fjtapia@gmail.com)
|
|
|
|
There are 3 types of benchmarks,
|
|
[:
|
|
*64 bits integers
|
|
|
|
*strings
|
|
|
|
*objects of several sizes.
|
|
|
|
The objects are arrays of integers. The heavy comparison sums all the elements in each, and the light comparison uses only the first number in the array.
|
|
|
|
These were run on an Intel(R) Core(TM) i7-5820K CPU @ 3.30GHz, with 6 cores and 2 threads by core, and 15M of cache. The compiler used was a GCC 6.3 64 bits
|
|
|
|
]
|
|
|
|
|
|
[h4[_100 000 000 NUMBERS OF 64 BITS RANDOMLY FILLED]]
|
|
|
|
[*[teletype]
|
|
``
|
|
| | |
|
|
| Time | Maximum |
|
|
| secs | Memory Used |
|
|
-------------------------+---------+-------------+
|
|
OMP parallel sort | 1.1990 | 1564 MB |
|
|
TBB parallel_sort | 1.6411 | 789 MB |
|
|
block_indirect_sort | 0.9270 | 790 MB |
|
|
| | |
|
|
OMP parallel stable sort | 1.5814 | 1972 MB |
|
|
TBB parallel stable sort | 1.1745 | 1570 MB |
|
|
sample sort | 1.2872 | 1566 MB |
|
|
parallel stable sort | 1.7158 | 1176 MB |
|
|
| | |
|
|
|
|
``
|
|
]
|
|
|
|
[h4[_10 000 000 STRINGS RANDOMLY FILLED]]
|
|
[*[teletype]
|
|
``
|
|
| | |
|
|
| Time | Maximum |
|
|
| secs | Memory Used |
|
|
-------------------------+---------+-------------+
|
|
OMP parallel sort | 1.5738 | 2023 MB |
|
|
TBB parallel_sort | 1.8626 | 826 MB |
|
|
block_indirect_sort | 1.2411 | 825 MB |
|
|
| | |
|
|
OMP parallel stable sort | 2.3214 | 2024 MB |
|
|
TBB parallel stable sort | 1.4383 | 1143 MB |
|
|
sample sort | 1.5097 | 1135 MB |
|
|
parallel stable sort | 2.0970 | 978 MB |
|
|
| | |
|
|
``
|
|
]
|
|
|
|
|
|
[h4[_OBJECTS RANDOMLY FILLED]]
|
|
|
|
[:
|
|
The objects are arrays of 64 bits numbers
|
|
|
|
They are compared in two ways :
|
|
[:
|
|
(H) Heavy : The comparison is the sum of all the numbers of the array.
|
|
|
|
(L) Light : The comparison is using only the first element of the array,
|
|
as a key
|
|
]
|
|
]
|
|
[*[teletype]
|
|
``
|
|
|
|
|
|
| | | | | | | |
|
|
| 100000000 | 50000000 | 25000000 | 12500000 | 6250000 | 1562500 | |
|
|
| objects of| objects of|objects of |objects of |objects of |objects of | Maximum |
|
|
| 8 bytes | 16 bytes | 32 bytes | 64 bytes | 128 bytes | 512 bytes | Memory |
|
|
| | | | | | | Used |
|
|
| H L | H L | H L | H L | H L | H L | |
|
|
--------------------+-----------+-----------+-----------+-----------+-----------+-----------+-------------+
|
|
OMP parallel sort | 1.18 1.17| 0.73 0.66| 0.51 0.45| 0.43 0.39| 0.41 0.37| 0.37 0.32| 1569 MB |
|
|
TBB parallel_sort | 1.71 1.59| 0.85 0.81| 0.56 0.54| 0.51 0.42| 0.45 0.39| 0.36 0.32| 788 MB |
|
|
block_indirect_sort | 1.11 1.08| 0.66 0.63| 0.49 0.46| 0.43 0.39| 0.40 0.37| 0.37 0.33| 794 MB |
|
|
| | | | | | | |
|
|
OMP par stable sort | 1.55 1.55| 1.38 1.35| 1.23 1.22| 1.17 1.17| 1.09 1.08| 0.97 0.97| 1980 MB |
|
|
TBB par stable sort | 1.23 1.23| 0.89 0.85| 0.74 0.72| 0.71 0.69| 0.69 0.69| 0.68 0.68| 1573 MB |
|
|
| | | | | | | |
|
|
sample sort | 1.32 1.32| 0.84 0.78| 0.66 0.63| 0.63 0.62| 0.62 0.61| 0.60 0.60| 1568 MB |
|
|
parallel stable sort| 1.80 1.90| 1.17 1.07| 0.83 0.75| 0.76 0.71| 0.72 0.70| 0.70 0.69| 1177 MB |
|
|
| | | | | | | |
|
|
|
|
|
|
|
|
``
|
|
]
|
|
]
|
|
[endsect]
|
|
|
|
|
|
|