|
|
9115169 |
Name: sockperf
|
|
|
6e84bc9 |
Version: 3.6
|
|
|
0768560 |
Release: 3%{?dist}
|
|
|
9115169 |
Summary: Network benchmarking utility for testing latency and throughput
|
|
|
9115169 |
License: BSD
|
|
|
3376893 |
URL: https://github.com/Mellanox/%{name}
|
|
|
3376893 |
Source0: https://github.com/Mellanox/%{name}/archive/%{version}.tar.gz
|
|
|
6e84bc9 |
Patch0001: 0001-issue-1380243-Fix-close-SocketXtreme-established-TCP.patch
|
|
|
6e84bc9 |
Patch0002: 0002-issue-1679157-Fix-gcc8-build-warnings.patch
|
|
|
ce4dc6e |
|
|
|
3376893 |
BuildRequires: gcc-c++
|
|
|
ce4dc6e |
BuildRequires: autoconf automake
|
|
|
9115169 |
BuildRequires: doxygen
|
|
|
9115169 |
|
|
|
9115169 |
%description
|
|
|
9115169 |
sockperf is a network benchmarking utility over socket API that was designed
|
|
|
9115169 |
for testing performance (latency and throughput) of high-performance systems
|
|
|
9115169 |
(it is also good for testing performance of regular networking systems as
|
|
|
9115169 |
well). It covers most of the socket API calls and options.
|
|
|
9115169 |
|
|
|
9115169 |
Specifically, in addition to the standard throughput tests, sockperf, does the
|
|
|
9115169 |
following:
|
|
|
9115169 |
|
|
|
9115169 |
* Measure latency of each discrete packet at sub-nanosecond resolution (using
|
|
|
9115169 |
TSC register that counts CPU ticks with very low overhead).
|
|
|
9115169 |
|
|
|
9115169 |
* Does the above for both ping-pong mode and for latency under load mode. This
|
|
|
9115169 |
means that we measure latency of single packets even under load of millions
|
|
|
9115169 |
Packets Per Second (without waiting for reply of packet before sending
|
|
|
9115169 |
subsequent packet on time)
|
|
|
9115169 |
|
|
|
9115169 |
* Enable spike analysis by providing histogram, with various percentiles of the
|
|
|
9115169 |
packets’ latencies (for example: median, min, max, 99%% percentile, and more),
|
|
|
9115169 |
(this is in addition to average and standard deviation). Also, sockperf
|
|
|
9115169 |
provides full log with all packet’s tx/rx times that can be further analyzed
|
|
|
9115169 |
with external tools, such as MS-Excel or matplotlib - All this without
|
|
|
9115169 |
affecting the benchmark itself.
|
|
|
9115169 |
|
|
|
9115169 |
* Support MANY optional settings for good coverage of socket API and network
|
|
|
9115169 |
configurations, while still keeping very low overhead in the fast path to
|
|
|
9115169 |
allow cleanest results.
|
|
|
9115169 |
|
|
|
9115169 |
%prep
|
|
|
6e84bc9 |
%autosetup -p1
|
|
|
7fc00ea |
|
|
|
9115169 |
%build
|
|
|
ce4dc6e |
./autogen.sh
|
|
|
ce4dc6e |
# Upstream wants and defaults to "-O3 --param inline-unit-growth=200".
|
|
|
ce4dc6e |
# The Fedora optflags would override the former, so let's put it back.
|
|
|
ce4dc6e |
# Avner wrote:
|
|
|
ce4dc6e |
# > I reached that in the past after fine tuning the performance of sockperf.
|
|
|
ce4dc6e |
# > We used sockperf for measuring latency of extremely fast networks.
|
|
|
ce4dc6e |
# > Sometimes at sub microsecond resolution. This parameter helps us keeping
|
|
|
ce4dc6e |
# > the entire fast path of the application as "one big function" with no
|
|
|
ce4dc6e |
# > calls to other functions because it helps the compiler to respect all our
|
|
|
ce4dc6e |
# > "inline" directive for other functions that we call (while still keeping
|
|
|
ce4dc6e |
# > the "one big function" at a reasonable size for good performance at run
|
|
|
ce4dc6e |
# > time).
|
|
|
ce4dc6e |
export CXXFLAGS='%{optflags} -O3'
|
|
|
9115169 |
%configure --enable-doc
|
|
|
9115169 |
# --enable-tool --enable-test
|
|
|
9115169 |
make %{?_smp_mflags}
|
|
|
9115169 |
|
|
|
9115169 |
%install
|
|
|
9115169 |
%make_install
|
|
|
9115169 |
|
|
|
9115169 |
%files
|
|
|
9115169 |
%{_bindir}/sockperf
|
|
|
9115169 |
%{_mandir}/man3/sockperf.3.*
|
|
|
9115169 |
%{_pkgdocdir}
|
|
|
9115169 |
|
|
|
9115169 |
%changelog
|
|
|
0768560 |
* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3.6-3
|
|
|
0768560 |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
|
|
0768560 |
|
|
|
0e037d1 |
* Thu Jan 30 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3.6-2
|
|
|
0e037d1 |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
|
|
|
0e037d1 |
|
|
|
6e84bc9 |
* Mon Nov 04 2019 Michal Schmidt <mschmidt@redhat.com> - 3.6-1
|
|
|
6e84bc9 |
- Upstream release 3.6.
|
|
|
6e84bc9 |
- Plus a couple of fixes from upstream git.
|
|
|
6e84bc9 |
|
|
|
640562c |
* Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 3.5-3
|
|
|
640562c |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
|
|
|
640562c |
|
|
|
58d03d5 |
* Sun Feb 03 2019 Fedora Release Engineering <releng@fedoraproject.org> - 3.5-2
|
|
|
58d03d5 |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
|
|
|
58d03d5 |
|
|
|
f9ad518 |
* Wed Aug 01 2018 Michal Schmidt <mschmidt@redhat.com> - 3.5-1
|
|
|
f9ad518 |
- Upstream release 3.5.
|
|
|
f9ad518 |
|
|
|
1f2df3d |
* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 3.3-2
|
|
|
1f2df3d |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
|
|
|
1f2df3d |
|
|
|
3376893 |
* Wed Mar 07 2018 Michal Schmidt <mschmidt@redhat.com> - 3.3-1
|
|
|
3376893 |
- Upstream release 3.3.
|
|
|
3376893 |
- BR: gcc-c++
|
|
|
3376893 |
|
|
|
e2fd514 |
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.6-7.gitc1f3ca79bff9
|
|
|
e2fd514 |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
|
|
|
e2fd514 |
|
|
|
5e7963b |
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.6-6.gitc1f3ca79bff9
|
|
|
5e7963b |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
|
|
|
5e7963b |
|
|
|
a2879b6 |
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.6-5.gitc1f3ca79bff9
|
|
|
a2879b6 |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
|
|
|
a2879b6 |
|
|
|
ffb817f |
* Mon May 15 2017 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.6-4.gitc1f3ca79bff9
|
|
|
ffb817f |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_27_Mass_Rebuild
|
|
|
ffb817f |
|
|
|
30593da |
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.6-3.gitc1f3ca79bff9
|
|
|
30593da |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
|
|
|
30593da |
|
|
|
1a1046d |
* Fri Feb 05 2016 Fedora Release Engineering <releng@fedoraproject.org> - 2.6-2.gitc1f3ca79bff9
|
|
|
1a1046d |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
|
|
|
1a1046d |
|
|
|
ce4dc6e |
* Wed Sep 09 2015 Michal Schmidt <mschmidt@redhat.com> - 2.6-1.gitc1f3ca79bff9
|
|
|
ce4dc6e |
- Update to current upstream snapshot.
|
|
|
ce4dc6e |
- Adjust for upstream move to github.
|
|
|
ce4dc6e |
- Drop patches (upstreamed).
|
|
|
ce4dc6e |
- Compile with -O3 as recommended by upstream.
|
|
|
ce4dc6e |
|
|
|
7fc00ea |
* Thu Aug 27 2015 Ralf Corsepius <corsepiu@fedoraproject.org> - 2.5.244-4
|
|
|
7fc00ea |
- Modity 0001-Don-t-throw-away-Fedora-s-CXXFLAGS.patch to remove -Werror
|
|
|
7fc00ea |
from configure.ac (Fix F23FTBFS, RHBZ#1240012).
|
|
|
7fc00ea |
- Run doxygen -u.
|
|
|
7fc00ea |
|
|
|
b81e641 |
* Fri Jun 19 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.5.244-3
|
|
|
b81e641 |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
|
|
|
b81e641 |
|
|
|
65357d5 |
* Sat Oct 04 2014 Dan Horák <dan[at]danny.cz> - 2.5.244-2
|
|
|
65357d5 |
- Add s390(x) support
|
|
|
65357d5 |
|
|
|
8a2dfca |
* Mon Sep 08 2014 Michal Schmidt <mschmidt@redhat.com> - 2.5.244-1
|
|
|
69b0c9c |
- Update to current upstream from SVN. Has aarch64 and ppc64 support.
|
|
|
69b0c9c |
- Simplify svnversion substitution.
|
|
|
69b0c9c |
- Build fix. Make sure config/m4 exists.
|
|
|
8a2dfca |
|
|
|
74935ab |
* Mon Aug 18 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.5.241-6
|
|
|
74935ab |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
|
|
|
74935ab |
|
|
|
3c688f3 |
* Mon Jun 16 2014 Marcin Juszkiewicz <mjuszkiewicz@redhat.com> - 2.5.241-5
|
|
|
3c688f3 |
- Added AArch64 support
|
|
|
3c688f3 |
|
|
|
c23d294 |
* Sun Jun 08 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.5.241-4
|
|
|
c23d294 |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
|
|
|
c23d294 |
|
|
|
9115169 |
* Thu Apr 24 2014 Michal Schmidt <mschmidt@redhat.com> - 2.5.241-3
|
|
|
9115169 |
- Adjust the CXXFLAGS patch to drop all optimization flags changing.
|
|
|
9115169 |
- Run autoreconf with -f to force regenerating config/aux.
|
|
|
9115169 |
|
|
|
9115169 |
* Tue Apr 08 2014 Michal Schmidt <mschmidt@redhat.com> - 2.5.241-2
|
|
|
9115169 |
- Use %%autosetup.
|
|
|
9115169 |
|
|
|
9115169 |
* Fri Mar 21 2014 Michal Schmidt <mschmidt@redhat.com> - 2.5.241-1
|
|
|
9115169 |
- Initial Fedora packaging.
|