Ping は、TCP または UDP トラフィックを測定しません。アプリケーションで使用されないInternet Control Message Protocol(ICMP)が使用されます。SockPerf は、TCP または UDP Payloadの ラウンド トリップ時間 (RTT) を測定できます。
SockPerf は、高性能システムのパフォーマンス (レイテンシとスループット) をテストするために設計された、ソケット API 経由のネットワーク・ベンチマーク・ユーティリティで通常のネットワーク システムのパフォーマンスをテストするのにも適しています
具体的には、標準のスループット テストに加えて、sockperf は次のことを実行します。
-
ナノ秒レイテンシ測定:
各個別パケットのレイテンシを n(ナノ)秒未満の解像度で測定します。 -
2つのモード:
ping-pongモードと負荷モードのレイテンシの両方で実行します。これは、1秒あたり数百万パケットの負荷がかかった状態でも単一パケットのレイテンシを測定することを意味します。 -
ヒストグラム分析:
パケットのレイテンシのさまざまなパーセンタイル (例: 中央値、最小値、最大値、99% パーセンタイルなど) を含むヒストグラムを提供することで、スパイク分析を有効にします (これは平均と標準偏差に加えて提供されます)。また、sockperf は、すべてのパケットの tx/rx 時間を含む完全なログを提供し、MS-Excel や matplotlib などの外部ツールでさらに分析できます。これらすべては、ベンチマーク自体に影響を与えることなく行われます。 -
その他多くのオプション:
ソケット API とネットワーク構成を適切にカバーするための多くのオプション設定をサポートしながら、高速パスでのオーバーヘッドを非常に低く抑えて、最もクリーンな結果を実現します。
ということで、Redhat系と Debian系 OSへ SockPerfをインストールしてみてみます。
■ 前提条件
SockPerf は GitHub: Mellanox/sockperf: Network Benchmarking Utilityから利用します。
Unix システムで sockperf をコンパイルするために必要なものは次になります。
・ Perl 5.8+ (used by the automake tools)
・ GNU make tools: automake 1.7+, autoconf 2.57+, m4 1.4+ and libtool 1.4+
・ A C++11 Compiler, among those tested are:
- GCC
- Clang
- icc
■ Redhut系 Linuxへの SockPerf インストール
sudo yum install -y autoconf automake libtool gcc-c++
cd /opt
sudo wget https://github.com/Mellanox/sockperf/archive/refs/tags/3.8.tar.gz
sudo tar -zxf 3.8.tar.gz
cd sockperf-3.8/
sudo ./autogen.sh
sudo ./configure
sudo make -j `cat /proc/cpuinfo| grep process | wc -l`
sudo make install
● 必要モジュールのインストール
1) SockPerf依存パッケージインストール
[root@oci-inst ~]# sudo yum install -y autoconf automake libtool gcc-c++
Last metadata expiration check: 1:25:55 ago on Thu 14 Nov 2024 12:56:38 AM GMT.
Dependencies resolved.
=============================================================================================================================================================================
Package Architecture Version Repository Size
=============================================================================================================================================================================
Installing:
autoconf noarch 2.69-29.el8_10.1 ol8_appstream 710 k
automake noarch 1.16.1-8.el8 ol8_appstream 713 k
gcc-c++ x86_64 8.5.0-22.0.1.el8_10 ol8_appstream 12 M
libtool x86_64 2.4.6-25.el8 ol8_appstream 709 k
Installing dependencies:
libstdc++-devel x86_64 8.5.0-22.0.1.el8_10 ol8_appstream 2.1 M
perl-Thread-Queue noarch 3.13-1.el8 ol8_appstream 24 k
Transaction Summary
=============================================================================================================================================================================
Install 6 Packages
Total download size: 16 M
Installed size: 49 M
Downloading Packages:
(1/6): autoconf-2.69-29.el8_10.1.noarch.rpm 18 MB/s | 710 kB 00:00
(2/6): automake-1.16.1-8.el8.noarch.rpm 3.8 MB/s | 713 kB 00:00
(3/6): libtool-2.4.6-25.el8.x86_64.rpm 72 MB/s | 709 kB 00:00
(4/6): perl-Thread-Queue-3.13-1.el8.noarch.rpm 386 kB/s | 24 kB 00:00
(5/6): libstdc++-devel-8.5.0-22.0.1.el8_10.x86_64.rpm 6.8 MB/s | 2.1 MB 00:00
(6/6): gcc-c++-8.5.0-22.0.1.el8_10.x86_64.rpm 32 MB/s | 12 MB 00:00
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Total 42 MB/s | 16 MB 00:00
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
Preparing : 1/1
Installing : autoconf-2.69-29.el8_10.1.noarch 1/6
Running scriptlet: autoconf-2.69-29.el8_10.1.noarch 1/6
Installing : perl-Thread-Queue-3.13-1.el8.noarch 2/6
Installing : automake-1.16.1-8.el8.noarch 3/6
Installing : libstdc++-devel-8.5.0-22.0.1.el8_10.x86_64 4/6
Installing : gcc-c++-8.5.0-22.0.1.el8_10.x86_64 5/6
Installing : libtool-2.4.6-25.el8.x86_64 6/6
Running scriptlet: libtool-2.4.6-25.el8.x86_64 6/6
Verifying : autoconf-2.69-29.el8_10.1.noarch 1/6
Verifying : automake-1.16.1-8.el8.noarch 2/6
Verifying : gcc-c++-8.5.0-22.0.1.el8_10.x86_64 3/6
Verifying : libstdc++-devel-8.5.0-22.0.1.el8_10.x86_64 4/6
Verifying : libtool-2.4.6-25.el8.x86_64 5/6
Verifying : perl-Thread-Queue-3.13-1.el8.noarch 6/6
Installed:
autoconf-2.69-29.el8_10.1.noarch automake-1.16.1-8.el8.noarch gcc-c++-8.5.0-22.0.1.el8_10.x86_64 libstdc++-devel-8.5.0-22.0.1.el8_10.x86_64 libtool-2.4.6-25.el8.x86_64
perl-Thread-Queue-3.13-1.el8.noarch
Complete!
● SockPerf インストール
2) SockPerfパッケージ・ダウンロード
今回、/opt配下へインストールするために、/opt配下へパッケージファイルを配置します。
[root@oci-inst ~]# cd /opt
[root@oci-inst opt]# sudo wget https://github.com/Mellanox/sockperf/archive/refs/tags/3.8.tar.gz
--2024-11-14 02:23:04-- https://github.com/Mellanox/sockperf/archive/refs/tags/3.8.tar.gz
Resolving github.com (github.com)... 20.27.177.113
Connecting to github.com (github.com)|20.27.177.113|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: https://codeload.github.com/Mellanox/sockperf/tar.gz/refs/tags/3.8 [following]
--2024-11-14 02:23:05-- https://codeload.github.com/Mellanox/sockperf/tar.gz/refs/tags/3.8
Resolving codeload.github.com (codeload.github.com)... 20.27.177.114
Connecting to codeload.github.com (codeload.github.com)|20.27.177.114|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [application/x-gzip]
Saving to: ‘3.8.tar.gz’
3.8.tar.gz [ <=> ] 410.51K 1.60MB/s in 0.3s
2024-11-14 02:23:06 (1.60 MB/s) - ‘3.8.tar.gz’ saved [420367]
2) SockPerf Tarパッケージ解凍
[root@oci-inst opt]# sudo tar -zxf 3.8.tar.gz
[root@oci-inst opt]# ls -l
total 416
-rw-r--r--. 1 root root 420367 Nov 14 02:23 3.8.tar.gz
drwxr-xr-x. 4 root root 50 Jun 14 01:46 rh
drwxrwxr-x. 12 root root 4096 Mar 10 2022 sockperf-3.8
drwxr-xr-x. 6 root root 169 Aug 28 09:46 unified-monitoring-agent
drwxr-xr-x. 3 root root 17 Aug 20 14:32 unifiedmonitoringagent
drwxr-xr-x. 3 root root 21 Sep 27 16:40 wlp-agent
[root@oci-inst opt]# cd sockperf-3.8/
[root@oci-inst sockperf-3.8]# ls -l
total 40
-rw-rw-r--. 1 root root 79 Mar 10 2022 authors
-rwxrwxr-x. 1 root root 552 Mar 10 2022 autogen.sh
drwxrwxr-x. 2 root root 98 Mar 10 2022 build
drwxrwxr-x. 3 root root 16 Mar 10 2022 config
-rw-rw-r--. 1 root root 5932 Mar 10 2022 configure.ac
drwxrwxr-x. 3 root root 50 Mar 10 2022 contrib
-rw-rw-r--. 1 root root 1554 Mar 10 2022 copying
drwxrwxr-x. 4 root root 132 Mar 10 2022 debian
drwxrwxr-x. 2 root root 41 Mar 10 2022 doc
-rwxrwxr-x. 1 root root 1477 Mar 10 2022 Makefile.am
-rw-rw-r--. 1 root root 0 Mar 10 2022 news
-rw-rw-r--. 1 root root 3414 Mar 10 2022 README.md
drwxrwxr-x. 2 root root 4096 Mar 10 2022 src
drwxrwxr-x. 4 root root 4096 Mar 10 2022 tests
drwxrwxr-x. 2 root root 75 Mar 10 2022 tools
-rw-rw-r--. 1 root root 4 Mar 10 2022 version
drwxrwxr-x. 3 root root 39 Mar 10 2022 win
2) SockPerfパッケージ Auto Generation
make の下準備のための autogen.sh 実行
[root@oci-inst sockperf-3.8]# sudo ./autogen.sh
++ pwd
+ oldpwd=/opt/sockperf-3.8
++ dirname ./autogen.sh
+ topdir=.
+ cd .
+ CURRENT_VERSION_FILE=./build/current-version
+ . ./build/versioning.sh
+++ cat version
+++ tr -d '\n'
++ VERSION=3.8
+++ git rev-parse HEAD
+++ echo no.git
++ GIT_REF=no.git
+++ git describe --long --abbrev=12 --dirty
+++ echo ''
++ x=
++ '[' -n '' ']'
++ x=no.git
++ RELEASE=no.git
+ echo 3.8-no.git
+ echo no.git
+ rm -rf autom4te.cache
+ mkdir -p config/m4 config/aux
+ autoreconf -v --install
autoreconf: Entering directory `.'
autoreconf: configure.ac: not using Gettext
autoreconf: running: aclocal -I config/m4
autoreconf: configure.ac: tracing
autoreconf: running: libtoolize --copy
libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, 'config/aux'.
libtoolize: copying file 'config/aux/ltmain.sh'
libtoolize: putting macros in AC_CONFIG_MACRO_DIRS, 'config/m4'.
libtoolize: copying file 'config/m4/libtool.m4'
libtoolize: copying file 'config/m4/ltoptions.m4'
libtoolize: copying file 'config/m4/ltsugar.m4'
libtoolize: copying file 'config/m4/ltversion.m4'
libtoolize: copying file 'config/m4/lt~obsolete.m4'
autoreconf: running: /usr/bin/autoconf
autoreconf: running: /usr/bin/autoheader
autoreconf: running: automake --add-missing --copy --no-force
configure.ac:69: installing 'config/aux/ar-lib'
configure.ac:69: installing 'config/aux/compile'
configure.ac:9: installing 'config/aux/config.guess'
configure.ac:9: installing 'config/aux/config.sub'
configure.ac:60: installing 'config/aux/install-sh'
configure.ac:60: installing 'config/aux/missing'
Makefile.am: installing 'config/aux/depcomp'
tests/Makefile.am:1: warning: ':='-style assignments are not portable
autoreconf: Leaving directory `.'
+ rm -rf autom4te.cache
+ cd /opt/sockperf-3.8
+ '[' x = xc ']'
+ printf '\nNow run '\''./configure'\'' and '\''make'\''.\n\n'
Now run './configure' and 'make'.
+ rm -f ./build/current-version
+ exit 0
3) configure実行
インストールに必要な環境変数やライブラリが正しく設定、設置されているか等がチェックとMakeFile作成
[root@oci-inst sockperf-3.8]# sudo ./configure
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking target system type... x86_64-pc-linux-gnu
checking for a BSD-compatible install... /bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking whether to enable maintainer-specific portions of Makefiles... no
checking for g++... g++
checking whether the C++ compiler works... yes
checking for C++ compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking whether make supports the include directive... yes (GNU style)
checking dependency style of g++... gcc3
checking for gcc... gcc
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking whether gcc understands -c and -o together... yes
checking dependency style of gcc... gcc3
checking for ar... ar
checking the archiver (ar) interface... ar
checking how to print strings... printf
checking for a sed that does not truncate output... /bin/sed
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for fgrep... /bin/grep -F
checking for ld used by gcc... /bin/ld
checking if the linker (/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /bin/nm -B
checking the name lister (/bin/nm -B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 1572864
checking how to convert x86_64-pc-linux-gnu file names to x86_64-pc-linux-gnu format... func_convert_file_noop
checking how to convert x86_64-pc-linux-gnu file names to toolchain format... func_convert_file_noop
checking for /bin/ld option to reload object files... -r
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for dlltool... no
checking how to associate runtime and link libraries... printf %s\n
checking for archiver @FILE support... @
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /bin/nm -B output from gcc object... ok
checking for sysroot... no
checking for a working dd... /bin/dd
checking how to truncate binary pipes... /bin/dd bs=4096 count=1
checking for mt... no
checking if : is a manifest tool... no
checking how to run the C preprocessor... gcc -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC -DPIC
checking if gcc PIC flag -fPIC -DPIC works... yes
checking if gcc static flag -static works... no
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/bin/ld -m elf_x86_64) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
checking how to run the C++ preprocessor... g++ -E
checking for ld used by g++... /bin/ld -m elf_x86_64
checking if the linker (/bin/ld -m elf_x86_64) is GNU ld... yes
checking whether the g++ linker (/bin/ld -m elf_x86_64) supports shared libraries... yes
checking for g++ option to produce PIC... -fPIC -DPIC
checking if g++ PIC flag -fPIC -DPIC works... yes
checking if g++ static flag -static works... no
checking if g++ supports -c -o file.o... yes
checking if g++ supports -c -o file.o... (cached) yes
checking whether the g++ linker (/bin/ld -m elf_x86_64) supports shared libraries... yes
checking dynamic linker characteristics... (cached) GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether g++ supports -Wall in CXXFLAGS... yes
checking whether g++ supports --param inline-unit-growth=300 in CXXFLAGS... yes
checking for vma extra api... no
checking for tls support... no
checking for ANSI C header files... (cached) yes
checking arpa/inet.h usability... yes
checking arpa/inet.h presence... yes
checking for arpa/inet.h... yes
checking fcntl.h usability... yes
checking fcntl.h presence... yes
checking for fcntl.h... yes
checking netinet/in.h usability... yes
checking netinet/in.h presence... yes
checking for netinet/in.h... yes
checking for stdint.h... (cached) yes
checking for stdlib.h... (cached) yes
checking for string.h... (cached) yes
checking sys/ioctl.h usability... yes
checking sys/ioctl.h presence... yes
checking for sys/ioctl.h... yes
checking sys/socket.h usability... yes
checking sys/socket.h presence... yes
checking for sys/socket.h... yes
checking sys/time.h usability... yes
checking sys/time.h presence... yes
checking for sys/time.h... yes
checking syslog.h usability... yes
checking syslog.h presence... yes
checking for syslog.h... yes
checking termios.h usability... yes
checking termios.h presence... yes
checking for termios.h... yes
checking for unistd.h... (cached) yes
checking for ANSI C header files... (cached) yes
checking for library containing clock_gettime... none required
checking for library containing pthread_create... -lpthread
checking for library containing backtrace... none required
checking for library containing dlsym... -ldl
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating tools/Makefile
config.status: creating tests/Makefile
config.status: creating tests/gtest/Makefile
config.status: creating doc/Doxyfile
config.status: creating build/sockperf.spec
config.status: creating config.h
config.status: executing depfiles commands
config.status: executing libtool commands
sockperf 3.8-no.git
prefix: /usr/local
compiler: g++
cppflags:
cxxflags: -Wall --param inline-unit-growth=300 -O3 -g
ldflags:
doc: no
test: no
tool: no
vma_api: no
debug: no
4) make実行
[root@oci-inst sockperf-3.8]# sudo make -j `cat /proc/cpuinfo| grep process | wc -l`
make all-recursive
make[1]: Entering directory '/opt/sockperf-3.8'
make[2]: Entering directory '/opt/sockperf-3.8'
depbase=`echo src/aopt.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -DHAVE_CONFIG_H -I. -imacros ./config.h -Wall --param inline-unit-growth=300 -O3 -g -MT src/aopt.o -MD -MP -MF $depbase.Tpo -c -o src/aopt.o src/aopt.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/client.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -DHAVE_CONFIG_H -I. -imacros ./config.h -Wall --param inline-unit-growth=300 -O3 -g -MT src/client.o -MD -MP -MF $depbase.Tpo -c -o src/client.o src/client.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/common.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -DHAVE_CONFIG_H -I. -imacros ./config.h -Wall --param inline-unit-growth=300 -O3 -g -MT src/common.o -MD -MP -MF $depbase.Tpo -c -o src/common.o src/common.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/defs.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -DHAVE_CONFIG_H -I. -imacros ./config.h -Wall --param inline-unit-growth=300 -O3 -g -MT src/defs.o -MD -MP -MF $depbase.Tpo -c -o src/defs.o src/defs.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/iohandlers.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -DHAVE_CONFIG_H -I. -imacros ./config.h -Wall --param inline-unit-growth=300 -O3 -g -MT src/iohandlers.o -MD -MP -MF $depbase.Tpo -c -o src/iohandlers.o src/iohandlers.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/ip_address.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -DHAVE_CONFIG_H -I. -imacros ./config.h -Wall --param inline-unit-growth=300 -O3 -g -MT src/ip_address.o -MD -MP -MF $depbase.Tpo -c -o src/ip_address.o src/ip_address.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/message.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -DHAVE_CONFIG_H -I. -imacros ./config.h -Wall --param inline-unit-growth=300 -O3 -g -MT src/message.o -MD -MP -MF $depbase.Tpo -c -o src/message.o src/message.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/os_abstract.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -DHAVE_CONFIG_H -I. -imacros ./config.h -Wall --param inline-unit-growth=300 -O3 -g -MT src/os_abstract.o -MD -MP -MF $depbase.Tpo -c -o src/os_abstract.o src/os_abstract.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/packet.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -DHAVE_CONFIG_H -I. -imacros ./config.h -Wall --param inline-unit-growth=300 -O3 -g -MT src/packet.o -MD -MP -MF $depbase.Tpo -c -o src/packet.o src/packet.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/playback.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -DHAVE_CONFIG_H -I. -imacros ./config.h -Wall --param inline-unit-growth=300 -O3 -g -MT src/playback.o -MD -MP -MF $depbase.Tpo -c -o src/playback.o src/playback.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/server.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -DHAVE_CONFIG_H -I. -imacros ./config.h -Wall --param inline-unit-growth=300 -O3 -g -MT src/server.o -MD -MP -MF $depbase.Tpo -c -o src/server.o src/server.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/sockperf.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -DHAVE_CONFIG_H -I. -imacros ./config.h -Wall --param inline-unit-growth=300 -O3 -g -MT src/sockperf.o -MD -MP -MF $depbase.Tpo -c -o src/sockperf.o src/sockperf.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/ticks.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -DHAVE_CONFIG_H -I. -imacros ./config.h -Wall --param inline-unit-growth=300 -O3 -g -MT src/ticks.o -MD -MP -MF $depbase.Tpo -c -o src/ticks.o src/ticks.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/tls.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -DHAVE_CONFIG_H -I. -imacros ./config.h -Wall --param inline-unit-growth=300 -O3 -g -MT src/tls.o -MD -MP -MF $depbase.Tpo -c -o src/tls.o src/tls.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/vma-redirect.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -DHAVE_CONFIG_H -I. -imacros ./config.h -Wall --param inline-unit-growth=300 -O3 -g -MT src/vma-redirect.o -MD -MP -MF $depbase.Tpo -c -o src/vma-redirect.o src/vma-redirect.cpp &&\
mv -f $depbase.Tpo $depbase.Po
/bin/sh ./libtool --tag=CXX --mode=link g++ -Wall --param inline-unit-growth=300 -O3 -g -rdynamic -o sockperf src/aopt.o src/client.o src/common.o src/defs.o src/iohandlers.o src/ip_address.o src/message.o src/os_abstract.o src/packet.o src/playback.o src/server.o src/sockperf.o src/ticks.o src/tls.o src/vma-redirect.o -ldl -lpthread
libtool: link: g++ -Wall --param inline-unit-growth=300 -O3 -g -rdynamic -o sockperf src/aopt.o src/client.o src/common.o src/defs.o src/iohandlers.o src/ip_address.o src/message.o src/os_abstract.o src/packet.o src/playback.o src/server.o src/sockperf.o src/ticks.o src/tls.o src/vma-redirect.o -ldl -lpthread
make[2]: Leaving directory '/opt/sockperf-3.8'
make[1]: Leaving directory '/opt/sockperf-3.8'
2) make install 実行
[root@oci-inst sockperf-3.8]# sudo make install
make[1]: Entering directory '/opt/sockperf-3.8'
make[2]: Entering directory '/opt/sockperf-3.8'
/bin/mkdir -p '/usr/local/bin'
/bin/sh ./libtool --mode=install /bin/install -c sockperf '/usr/local/bin'
libtool: install: /bin/install -c sockperf /usr/local/bin/sockperf
/bin/mkdir -p '/usr/local/share/doc/sockperf'
/bin/install -c -m 644 README.md authors news version copying '/usr/local/share/doc/sockperf'
make[2]: Leaving directory '/opt/sockperf-3.8'
make[1]: Leaving directory '/opt/sockperf-3.8'
● SockPerf Install 確認
・ Version 確認
[root@oci-inst sockperf-3.8]# /opt/sockperf-3.8/sockperf --version
sockperf, version 3.8-no.git
compiled Nov 14 2024, 03:35:22
Copyright (C) 2011-2022 Mellanox Technologies Ltd.
SockPerf is open source software, see http://github.com/mellanox/sockperf
・ Help 確認
[root@oci-inst sockperf-3.8]# /opt/sockperf-3.8/sockperf --help
sockperf is a tool for testing network latency and throughput.
version 3.8-no.git
Usage: sockperf <subcommand> [options] [args]
Type: 'sockperf <subcommand> --help' for help on a specific subcommand.
Type: 'sockperf --version' to see the program version number.
Available subcommands:
help (h ,?) Display list of supported commands.
under-load (ul) Run sockperf client for latency under load test.
ping-pong (pp) Run sockperf client for latency test in ping pong mode.
playback (pb) Run sockperf client for latency test using playback of predefined traffic, based on timeline and message size.
throughput (tp) Run sockperf client for one way throughput test.
server (sr) Run sockperf as a server.
For additional information visit our website http://github.com/mellanox/sockperf , see README file, or Type 'sockperf <subcommand> --help'.
● Sockperf TCP Test
#sudo sockperf sr --tcp -i <ip of="" local="" host=""> -p <unused server="" port="">
#sockperf ping-pong -i <ip of="" destination="" host=""> --tcp -t 300 -p <destination server="" port=""> --full-rtt
・Server(受信)側実行
[opc@oci-inst ~]$ /opt/sockperf-3.8/sockperf sr --tcp -i 10.10.0.2 -p 15000
sockperf: == version #3.8-no.git ==
sockperf: [SERVER] listen on:
[ 0] IP = 10.10.0.2 PORT = 15000 # TCP
sockperf: Warmup stage (sending a few dummy messages)...
sockperf: [tid 511862] using recvfrom() to block on socket(s)
・ Client(送信)側実行
-tオプションを使用して 60秒間の 平均往復遅延時間を取得
[ec2-user@ip-10-1-1-20 sockperf-3.8]$ /opt/sockperf-3.8/sockperf ping-pong -i 10.10.0.2 --tcp -t 60 -p 15000 --full-rtt
sockperf: == version #3.8-no.git ==
sockperf[CLIENT] send on:sockperf: using recvfrom() to block on socket(s)
[ 0] IP = 10.10.0.2 PORT = 15000 # TCP
sockperf: Warmup stage (sending a few dummy messages)...
sockperf: Starting test...
sockperf: Test end (interrupted by timer)
sockperf: Test ended
sockperf: [Total Run] RunTime=60.000 sec; Warm up time=400 msec; SentMessages=86545; ReceivedMessages=86544
sockperf: ========= Printing statistics for Server No: 0
sockperf: [Valid Duration] RunTime=59.550 sec; SentMessages=85896; ReceivedMessages=85896
sockperf: ====> avg-rtt=693.140 (std-dev=31.704, mean-ad=24.100, median-ad=36.897, siqr=20.074, cv=0.046, std-error=0.108, 99.0% ci=[692.861, 693.419])
sockperf: # dropped messages = 0; # duplicated messages = 0; # out-of-order messages = 0
sockperf: Summary: Round trip is 693.140 usec
sockperf: Total 85896 observations; each percentile contains 858.96 observations
sockperf: ---> <MAX> observation = 3085.958
sockperf: ---> percentile 99.999 = 1800.785
sockperf: ---> percentile 99.990 = 1195.096
sockperf: ---> percentile 99.900 = 872.485
sockperf: ---> percentile 99.000 = 762.947
sockperf: ---> percentile 90.000 = 723.228
sockperf: ---> percentile 75.000 = 718.299
sockperf: ---> percentile 50.000 = 684.842
sockperf: ---> percentile 25.000 = 678.150
sockperf: ---> <MIN> observation = 616.387
--> Summary: Round trip is 693.140 usec から
693.140 μ秒 = 0.693 m秒 であることを確認できます。
■ Debian系 Linuxへの SockPerf インストール
sudo apt update
sudo apt-get install build-essential -y
sudo apt-get install git -y -q
sudo apt-get install -y autotools-dev
sudo apt-get install -y automake
sudo apt-get install -y autoconf
git clone https://github.com/mellanox/sockperf
cd sockperf/
./autogen.sh
./configure --prefix=
make
sudo make install
● 必要モジュールのインストール
1) apt update
パッケージ一覧を更新
ubuntu@ip-10-1-1-30:~/sockperf$ sudo apt update
Hit:1 http://ap-northeast-1.ec2.archive.ubuntu.com/ubuntu noble InRelease
Get:2 http://ap-northeast-1.ec2.archive.ubuntu.com/ubuntu noble-updates InRelease [126 kB]
Get:3 http://ap-northeast-1.ec2.archive.ubuntu.com/ubuntu noble-backports InRelease [126 kB]
Get:4 http://ap-northeast-1.ec2.archive.ubuntu.com/ubuntu noble/universe amd64 Packages [15.0 MB]
Get:5 http://security.ubuntu.com/ubuntu noble-security InRelease [126 kB]
Get:6 http://ap-northeast-1.ec2.archive.ubuntu.com/ubuntu noble/universe Translation-en [5982 kB]
Get:7 http://ap-northeast-1.ec2.archive.ubuntu.com/ubuntu noble/universe amd64 Components [3871 kB]
Get:8 http://ap-northeast-1.ec2.archive.ubuntu.com/ubuntu noble/universe amd64 c-n-f Metadata [301 kB]
Get:9 http://ap-northeast-1.ec2.archive.ubuntu.com/ubuntu noble/multiverse amd64 Packages [269 kB]
Get:10 http://ap-northeast-1.ec2.archive.ubuntu.com/ubuntu noble/multiverse Translation-en [118 kB]
Get:11 http://ap-northeast-1.ec2.archive.ubuntu.com/ubuntu noble/multiverse amd64 Components [35.0 kB]
Get:12 http://ap-northeast-1.ec2.archive.ubuntu.com/ubuntu noble/multiverse amd64 c-n-f Metadata [8328 B]
Get:13 http://ap-northeast-1.ec2.archive.ubuntu.com/ubuntu noble-updates/main amd64 Packages [633 kB]
Get:14 http://ap-northeast-1.ec2.archive.ubuntu.com/ubuntu noble-updates/main Translation-en [152 kB]
Get:15 http://ap-northeast-1.ec2.archive.ubuntu.com/ubuntu noble-updates/main amd64 Components [120 kB]
Get:16 http://ap-northeast-1.ec2.archive.ubuntu.com/ubuntu noble-updates/main amd64 c-n-f Metadata [10.4 kB]
Get:17 http://ap-northeast-1.ec2.archive.ubuntu.com/ubuntu noble-updates/universe amd64 Packages [716 kB]
Get:18 http://ap-northeast-1.ec2.archive.ubuntu.com/ubuntu noble-updates/universe Translation-en [212 kB]
Get:19 http://ap-northeast-1.ec2.archive.ubuntu.com/ubuntu noble-updates/universe amd64 Components [310 kB]
Get:20 http://ap-northeast-1.ec2.archive.ubuntu.com/ubuntu noble-updates/universe amd64 c-n-f Metadata [19.9 kB]
Get:21 http://ap-northeast-1.ec2.archive.ubuntu.com/ubuntu noble-updates/restricted amd64 Packages [434 kB]
Get:22 http://ap-northeast-1.ec2.archive.ubuntu.com/ubuntu noble-updates/restricted Translation-en [83.4 kB]
Get:23 http://ap-northeast-1.ec2.archive.ubuntu.com/ubuntu noble-updates/restricted amd64 Components [212 B]
Get:24 http://ap-northeast-1.ec2.archive.ubuntu.com/ubuntu noble-updates/restricted amd64 c-n-f Metadata [424 B]
Get:25 http://ap-northeast-1.ec2.archive.ubuntu.com/ubuntu noble-updates/multiverse amd64 Packages [15.0 kB]
Get:26 http://ap-northeast-1.ec2.archive.ubuntu.com/ubuntu noble-updates/multiverse Translation-en [3820 B]
Get:27 http://ap-northeast-1.ec2.archive.ubuntu.com/ubuntu noble-updates/multiverse amd64 Components [940 B]
Get:28 http://ap-northeast-1.ec2.archive.ubuntu.com/ubuntu noble-updates/multiverse amd64 c-n-f Metadata [552 B]
Get:29 http://ap-northeast-1.ec2.archive.ubuntu.com/ubuntu noble-backports/main amd64 Components [208 B]
Get:30 http://ap-northeast-1.ec2.archive.ubuntu.com/ubuntu noble-backports/main amd64 c-n-f Metadata [112 B]
Get:31 http://ap-northeast-1.ec2.archive.ubuntu.com/ubuntu noble-backports/universe amd64 Packages [10.6 kB]
Get:32 http://ap-northeast-1.ec2.archive.ubuntu.com/ubuntu noble-backports/universe Translation-en [10.8 kB]
Get:33 http://ap-northeast-1.ec2.archive.ubuntu.com/ubuntu noble-backports/universe amd64 Components [21.1 kB]
Get:34 http://ap-northeast-1.ec2.archive.ubuntu.com/ubuntu noble-backports/universe amd64 c-n-f Metadata [1104 B]
Get:35 http://ap-northeast-1.ec2.archive.ubuntu.com/ubuntu noble-backports/restricted amd64 Components [212 B]
Get:36 http://ap-northeast-1.ec2.archive.ubuntu.com/ubuntu noble-backports/restricted amd64 c-n-f Metadata [116 B]
Get:37 http://ap-northeast-1.ec2.archive.ubuntu.com/ubuntu noble-backports/multiverse amd64 Components [212 B]
Get:38 http://ap-northeast-1.ec2.archive.ubuntu.com/ubuntu noble-backports/multiverse amd64 c-n-f Metadata [116 B]
Get:39 http://security.ubuntu.com/ubuntu noble-security/main amd64 Packages [464 kB]
Get:40 http://security.ubuntu.com/ubuntu noble-security/main Translation-en [98.0 kB]
Get:41 http://security.ubuntu.com/ubuntu noble-security/main amd64 Components [7200 B]
Get:42 http://security.ubuntu.com/ubuntu noble-security/main amd64 c-n-f Metadata [5892 B]
Get:43 http://security.ubuntu.com/ubuntu noble-security/universe amd64 Packages [561 kB]
Get:44 http://security.ubuntu.com/ubuntu noble-security/universe Translation-en [149 kB]
Get:45 http://security.ubuntu.com/ubuntu noble-security/universe amd64 Components [51.9 kB]
Get:46 http://security.ubuntu.com/ubuntu noble-security/universe amd64 c-n-f Metadata [13.5 kB]
Get:47 http://security.ubuntu.com/ubuntu noble-security/restricted amd64 Packages [434 kB]
Get:48 http://security.ubuntu.com/ubuntu noble-security/restricted Translation-en [83.4 kB]
Get:49 http://security.ubuntu.com/ubuntu noble-security/restricted amd64 Components [208 B]
Get:50 http://security.ubuntu.com/ubuntu noble-security/restricted amd64 c-n-f Metadata [424 B]
Get:51 http://security.ubuntu.com/ubuntu noble-security/multiverse amd64 Packages [12.2 kB]
Get:52 http://security.ubuntu.com/ubuntu noble-security/multiverse Translation-en [2940 B]
Get:53 http://security.ubuntu.com/ubuntu noble-security/multiverse amd64 Components [208 B]
Get:54 http://security.ubuntu.com/ubuntu noble-security/multiverse amd64 c-n-f Metadata [356 B]
Fetched 30.6 MB in 5s (6202 kB/s)
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
30 packages can be upgraded. Run 'apt list --upgradable' to see them.
2) build-essentialパッケージ・インストール
ubuntu@oci-ubuntu:~$ sudo apt-get install build-essential -y
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
binutils binutils-common binutils-x86-64-linux-gnu bzip2 cpp cpp-13 cpp-13-x86-64-linux-gnu cpp-x86-64-linux-gnu dpkg-dev fakeroot fontconfig-config
fonts-dejavu-core fonts-dejavu-mono g++ g++-13 g++-13-x86-64-linux-gnu g++-x86-64-linux-gnu gcc gcc-13 gcc-13-base gcc-13-x86-64-linux-gnu gcc-14-base
gcc-x86-64-linux-gnu libalgorithm-diff-perl libalgorithm-diff-xs-perl libalgorithm-merge-perl libaom3 libasan8 libatomic1 libbinutils libc-dev-bin
libc-devtools libc6-dev libcc1-0 libcrypt-dev libctf-nobfd0 libctf0 libde265-0 libdeflate0 libdpkg-perl libfakeroot libfile-fcntllock-perl libfontconfig1
libgcc-13-dev libgcc-s1 libgd3 libgomp1 libgprofng0 libheif-plugin-aomdec libheif-plugin-aomenc libheif-plugin-libde265 libheif1 libhwasan0 libisl23 libitm1
libjbig0 libjpeg-turbo8 libjpeg8 liblerc4 liblsan0 libmpc3 libquadmath0 libsframe1 libsharpyuv0 libstdc++-13-dev libstdc++6 libtiff6 libtsan2 libubsan1
libwebp7 libxpm4 linux-libc-dev linux-tools-common lto-disabled-list make manpages-dev rpcsvc-proto
Suggested packages:
binutils-doc gprofng-gui bzip2-doc cpp-doc gcc-13-locales cpp-13-doc debian-keyring g++-multilib g++-13-multilib gcc-13-doc gcc-multilib autoconf automake
libtool flex bison gdb gcc-doc gcc-13-multilib gdb-x86-64-linux-gnu glibc-doc bzr libgd-tools libheif-plugin-x265 libheif-plugin-ffmpegdec
libheif-plugin-jpegdec libheif-plugin-jpegenc libheif-plugin-j2kdec libheif-plugin-j2kenc libheif-plugin-rav1e libheif-plugin-svtenc libstdc++-13-doc
make-doc
The following NEW packages will be installed:
binutils binutils-common binutils-x86-64-linux-gnu build-essential bzip2 cpp cpp-13 cpp-13-x86-64-linux-gnu cpp-x86-64-linux-gnu dpkg-dev fakeroot
fontconfig-config fonts-dejavu-core fonts-dejavu-mono g++ g++-13 g++-13-x86-64-linux-gnu g++-x86-64-linux-gnu gcc gcc-13 gcc-13-base gcc-13-x86-64-linux-gnu
gcc-x86-64-linux-gnu libalgorithm-diff-perl libalgorithm-diff-xs-perl libalgorithm-merge-perl libaom3 libasan8 libatomic1 libbinutils libc-dev-bin
libc-devtools libc6-dev libcc1-0 libcrypt-dev libctf-nobfd0 libctf0 libde265-0 libdeflate0 libdpkg-perl libfakeroot libfile-fcntllock-perl libfontconfig1
libgcc-13-dev libgd3 libgomp1 libgprofng0 libheif-plugin-aomdec libheif-plugin-aomenc libheif-plugin-libde265 libheif1 libhwasan0 libisl23 libitm1 libjbig0
libjpeg-turbo8 libjpeg8 liblerc4 liblsan0 libmpc3 libquadmath0 libsframe1 libsharpyuv0 libstdc++-13-dev libtiff6 libtsan2 libubsan1 libwebp7 libxpm4
linux-libc-dev lto-disabled-list make manpages-dev rpcsvc-proto
The following packages will be upgraded:
gcc-14-base libgcc-s1 libstdc++6 linux-tools-common
4 upgraded, 74 newly installed, 0 to remove and 17 not upgraded.
Need to get 81.1 MB of archives.
After this operation, 287 MB of additional disk space will be used.
Get:1 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble-updates/main amd64 gcc-14-base amd64 14.2.0-4ubuntu2~24.04 [50.8 kB]
Get:2 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble-updates/main amd64 libstdc++6 amd64 14.2.0-4ubuntu2~24.04 [791 kB]
Get:3 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble-updates/main amd64 libgcc-s1 amd64 14.2.0-4ubuntu2~24.04 [78.6 kB]
Get:4 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble-updates/main amd64 binutils-common amd64 2.42-4ubuntu2.3 [239 kB]
Get:5 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble-updates/main amd64 libsframe1 amd64 2.42-4ubuntu2.3 [14.9 kB]
Get:6 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble-updates/main amd64 libbinutils amd64 2.42-4ubuntu2.3 [575 kB]
Get:7 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble-updates/main amd64 libctf-nobfd0 amd64 2.42-4ubuntu2.3 [97.1 kB]
Get:8 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble-updates/main amd64 libctf0 amd64 2.42-4ubuntu2.3 [94.5 kB]
Get:9 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble-updates/main amd64 libgprofng0 amd64 2.42-4ubuntu2.3 [849 kB]
Get:10 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble-updates/main amd64 binutils-x86-64-linux-gnu amd64 2.42-4ubuntu2.3 [2463 kB]
Get:11 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble-updates/main amd64 binutils amd64 2.42-4ubuntu2.3 [18.1 kB]
Get:12 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble-updates/main amd64 libc-dev-bin amd64 2.39-0ubuntu8.3 [60.8 kB]
Get:13 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble-updates/main amd64 linux-libc-dev amd64 6.8.0-48.48 [1716 kB]
Get:14 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 libcrypt-dev amd64 1:4.4.36-4build1 [112 kB]
Get:15 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 rpcsvc-proto amd64 1.4.2-0ubuntu7 [67.4 kB]
Get:16 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble-updates/main amd64 libc6-dev amd64 2.39-0ubuntu8.3 [2164 kB]
Get:17 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 gcc-13-base amd64 13.2.0-23ubuntu4 [49.0 kB]
Get:18 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 libisl23 amd64 0.26-3build1 [680 kB]
Get:19 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 libmpc3 amd64 1.3.1-1build1 [54.5 kB]
Get:20 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 cpp-13-x86-64-linux-gnu amd64 13.2.0-23ubuntu4 [11.2 MB]
Get:21 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 cpp-13 amd64 13.2.0-23ubuntu4 [1032 B]
Get:22 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 cpp-x86-64-linux-gnu amd64 4:13.2.0-7ubuntu1 [5326 B]
Get:23 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 cpp amd64 4:13.2.0-7ubuntu1 [22.4 kB]
Get:24 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble-updates/main amd64 libcc1-0 amd64 14.2.0-4ubuntu2~24.04 [48.0 kB]
Get:25 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble-updates/main amd64 libgomp1 amd64 14.2.0-4ubuntu2~24.04 [148 kB]
Get:26 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble-updates/main amd64 libitm1 amd64 14.2.0-4ubuntu2~24.04 [29.7 kB]
Get:27 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble-updates/main amd64 libatomic1 amd64 14.2.0-4ubuntu2~24.04 [10.5 kB]
Get:28 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble-updates/main amd64 libasan8 amd64 14.2.0-4ubuntu2~24.04 [3031 kB]
Get:29 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble-updates/main amd64 liblsan0 amd64 14.2.0-4ubuntu2~24.04 [1322 kB]
Get:30 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble-updates/main amd64 libtsan2 amd64 14.2.0-4ubuntu2~24.04 [2772 kB]
Get:31 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble-updates/main amd64 libubsan1 amd64 14.2.0-4ubuntu2~24.04 [1184 kB]
Get:32 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble-updates/main amd64 libhwasan0 amd64 14.2.0-4ubuntu2~24.04 [1641 kB]
Get:33 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble-updates/main amd64 libquadmath0 amd64 14.2.0-4ubuntu2~24.04 [153 kB]
Get:34 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 libgcc-13-dev amd64 13.2.0-23ubuntu4 [2688 kB]
Get:35 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 gcc-13-x86-64-linux-gnu amd64 13.2.0-23ubuntu4 [21.9 MB]
Get:36 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 gcc-13 amd64 13.2.0-23ubuntu4 [482 kB]
Get:37 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 gcc-x86-64-linux-gnu amd64 4:13.2.0-7ubuntu1 [1212 B]
Get:38 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 gcc amd64 4:13.2.0-7ubuntu1 [5018 B]
Get:39 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 libstdc++-13-dev amd64 13.2.0-23ubuntu4 [2399 kB]
Get:40 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 g++-13-x86-64-linux-gnu amd64 13.2.0-23ubuntu4 [12.5 MB]
Get:41 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 g++-13 amd64 13.2.0-23ubuntu4 [14.5 kB]
Get:42 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 g++-x86-64-linux-gnu amd64 4:13.2.0-7ubuntu1 [964 B]
Get:43 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 g++ amd64 4:13.2.0-7ubuntu1 [1100 B]
Get:44 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 make amd64 4.3-4.1build2 [180 kB]
Get:45 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble-updates/main amd64 libdpkg-perl all 1.22.6ubuntu6.1 [269 kB]
Get:46 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble-updates/main amd64 bzip2 amd64 1.0.8-5.1build0.1 [34.5 kB]
Get:47 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 lto-disabled-list all 47 [12.4 kB]
Get:48 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble-updates/main amd64 dpkg-dev all 1.22.6ubuntu6.1 [1074 kB]
Get:49 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 build-essential amd64 12.10ubuntu1 [4928 B]
Get:50 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 libfakeroot amd64 1.33-1 [32.4 kB]
Get:51 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 fakeroot amd64 1.33-1 [67.2 kB]
Get:52 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 fonts-dejavu-mono all 2.37-8 [502 kB]
Get:53 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 fonts-dejavu-core all 2.37-8 [835 kB]
Get:54 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 fontconfig-config amd64 2.15.0-1.1ubuntu2 [37.3 kB]
Get:55 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 libalgorithm-diff-perl all 1.201-1 [41.8 kB]
Get:56 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 libalgorithm-diff-xs-perl amd64 0.04-8build3 [11.2 kB]
Get:57 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 libalgorithm-merge-perl all 0.08-5 [11.4 kB]
Get:58 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble-updates/main amd64 libaom3 amd64 3.8.2-2ubuntu0.1 [1941 kB]
Get:59 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 libfontconfig1 amd64 2.15.0-1.1ubuntu2 [139 kB]
Get:60 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 libsharpyuv0 amd64 1.3.2-0.4build3 [15.8 kB]
Get:61 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble-updates/main amd64 libheif-plugin-aomdec amd64 1.17.6-1ubuntu4.1 [10.4 kB]
Get:62 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 libde265-0 amd64 1.0.15-1build3 [166 kB]
Get:63 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble-updates/main amd64 libheif-plugin-libde265 amd64 1.17.6-1ubuntu4.1 [8176 B]
Get:64 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble-updates/main amd64 libheif1 amd64 1.17.6-1ubuntu4.1 [275 kB]
Get:65 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 libjpeg-turbo8 amd64 2.1.5-2ubuntu2 [150 kB]
Get:66 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 libjpeg8 amd64 8c-2ubuntu11 [2148 B]
Get:67 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble-updates/main amd64 libdeflate0 amd64 1.19-1build1.1 [43.9 kB]
Get:68 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 libjbig0 amd64 2.1-6.1ubuntu2 [29.7 kB]
Get:69 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 liblerc4 amd64 4.0.0+ds-4ubuntu2 [179 kB]
Get:70 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 libwebp7 amd64 1.3.2-0.4build3 [230 kB]
Get:71 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble-updates/main amd64 libtiff6 amd64 4.5.1+git230720-4ubuntu2.2 [199 kB]
Get:72 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 libxpm4 amd64 1:3.5.17-1build2 [36.5 kB]
Get:73 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 libgd3 amd64 2.3.3-9ubuntu5 [128 kB]
Get:74 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble-updates/main amd64 libc-devtools amd64 2.39-0ubuntu8.3 [69.7 kB]
Get:75 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 libfile-fcntllock-perl amd64 0.22-4ubuntu5 [30.7 kB]
Get:76 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble-updates/main amd64 libheif-plugin-aomenc amd64 1.17.6-1ubuntu4.1 [14.7 kB]
Get:77 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble-updates/main amd64 linux-tools-common all 6.8.0-48.48 [558 kB]
Get:78 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 manpages-dev all 6.7-2 [2013 kB]
Fetched 81.1 MB in 10s (8266 kB/s)
Extracting templates from packages: 100%
(Reading database ... 74230 files and directories currently installed.)
Preparing to unpack .../gcc-14-base_14.2.0-4ubuntu2~24.04_amd64.deb ...
Unpacking gcc-14-base:amd64 (14.2.0-4ubuntu2~24.04) over (14-20240412-0ubuntu1) ...
Setting up gcc-14-base:amd64 (14.2.0-4ubuntu2~24.04) ...
(Reading database ... 74230 files and directories currently installed.)
Preparing to unpack .../libstdc++6_14.2.0-4ubuntu2~24.04_amd64.deb ...
Unpacking libstdc++6:amd64 (14.2.0-4ubuntu2~24.04) over (14-20240412-0ubuntu1) ...
Setting up libstdc++6:amd64 (14.2.0-4ubuntu2~24.04) ...
(Reading database ... 74230 files and directories currently installed.)
Preparing to unpack .../libgcc-s1_14.2.0-4ubuntu2~24.04_amd64.deb ...
Unpacking libgcc-s1:amd64 (14.2.0-4ubuntu2~24.04) over (14-20240412-0ubuntu1) ...
Setting up libgcc-s1:amd64 (14.2.0-4ubuntu2~24.04) ...
Selecting previously unselected package binutils-common:amd64.
(Reading database ... 74230 files and directories currently installed.)
Preparing to unpack .../00-binutils-common_2.42-4ubuntu2.3_amd64.deb ...
Unpacking binutils-common:amd64 (2.42-4ubuntu2.3) ...
Selecting previously unselected package libsframe1:amd64.
Preparing to unpack .../01-libsframe1_2.42-4ubuntu2.3_amd64.deb ...
Unpacking libsframe1:amd64 (2.42-4ubuntu2.3) ...
Selecting previously unselected package libbinutils:amd64.
Preparing to unpack .../02-libbinutils_2.42-4ubuntu2.3_amd64.deb ...
Unpacking libbinutils:amd64 (2.42-4ubuntu2.3) ...
Selecting previously unselected package libctf-nobfd0:amd64.
Preparing to unpack .../03-libctf-nobfd0_2.42-4ubuntu2.3_amd64.deb ...
Unpacking libctf-nobfd0:amd64 (2.42-4ubuntu2.3) ...
Selecting previously unselected package libctf0:amd64.
Preparing to unpack .../04-libctf0_2.42-4ubuntu2.3_amd64.deb ...
Unpacking libctf0:amd64 (2.42-4ubuntu2.3) ...
Selecting previously unselected package libgprofng0:amd64.
Preparing to unpack .../05-libgprofng0_2.42-4ubuntu2.3_amd64.deb ...
Unpacking libgprofng0:amd64 (2.42-4ubuntu2.3) ...
Selecting previously unselected package binutils-x86-64-linux-gnu.
Preparing to unpack .../06-binutils-x86-64-linux-gnu_2.42-4ubuntu2.3_amd64.deb ...
Unpacking binutils-x86-64-linux-gnu (2.42-4ubuntu2.3) ...
Selecting previously unselected package binutils.
Preparing to unpack .../07-binutils_2.42-4ubuntu2.3_amd64.deb ...
Unpacking binutils (2.42-4ubuntu2.3) ...
Selecting previously unselected package libc-dev-bin.
Preparing to unpack .../08-libc-dev-bin_2.39-0ubuntu8.3_amd64.deb ...
Unpacking libc-dev-bin (2.39-0ubuntu8.3) ...
Selecting previously unselected package linux-libc-dev:amd64.
Preparing to unpack .../09-linux-libc-dev_6.8.0-48.48_amd64.deb ...
Unpacking linux-libc-dev:amd64 (6.8.0-48.48) ...
Selecting previously unselected package libcrypt-dev:amd64.
Preparing to unpack .../10-libcrypt-dev_1%3a4.4.36-4build1_amd64.deb ...
Unpacking libcrypt-dev:amd64 (1:4.4.36-4build1) ...
Selecting previously unselected package rpcsvc-proto.
Preparing to unpack .../11-rpcsvc-proto_1.4.2-0ubuntu7_amd64.deb ...
Unpacking rpcsvc-proto (1.4.2-0ubuntu7) ...
Selecting previously unselected package libc6-dev:amd64.
Preparing to unpack .../12-libc6-dev_2.39-0ubuntu8.3_amd64.deb ...
Unpacking libc6-dev:amd64 (2.39-0ubuntu8.3) ...
Selecting previously unselected package gcc-13-base:amd64.
Preparing to unpack .../13-gcc-13-base_13.2.0-23ubuntu4_amd64.deb ...
Unpacking gcc-13-base:amd64 (13.2.0-23ubuntu4) ...
Selecting previously unselected package libisl23:amd64.
Preparing to unpack .../14-libisl23_0.26-3build1_amd64.deb ...
Unpacking libisl23:amd64 (0.26-3build1) ...
Selecting previously unselected package libmpc3:amd64.
Preparing to unpack .../15-libmpc3_1.3.1-1build1_amd64.deb ...
Unpacking libmpc3:amd64 (1.3.1-1build1) ...
Selecting previously unselected package cpp-13-x86-64-linux-gnu.
Preparing to unpack .../16-cpp-13-x86-64-linux-gnu_13.2.0-23ubuntu4_amd64.deb ...
Unpacking cpp-13-x86-64-linux-gnu (13.2.0-23ubuntu4) ...
Selecting previously unselected package cpp-13.
Preparing to unpack .../17-cpp-13_13.2.0-23ubuntu4_amd64.deb ...
Unpacking cpp-13 (13.2.0-23ubuntu4) ...
Selecting previously unselected package cpp-x86-64-linux-gnu.
Preparing to unpack .../18-cpp-x86-64-linux-gnu_4%3a13.2.0-7ubuntu1_amd64.deb ...
Unpacking cpp-x86-64-linux-gnu (4:13.2.0-7ubuntu1) ...
Selecting previously unselected package cpp.
Preparing to unpack .../19-cpp_4%3a13.2.0-7ubuntu1_amd64.deb ...
Unpacking cpp (4:13.2.0-7ubuntu1) ...
Selecting previously unselected package libcc1-0:amd64.
Preparing to unpack .../20-libcc1-0_14.2.0-4ubuntu2~24.04_amd64.deb ...
Unpacking libcc1-0:amd64 (14.2.0-4ubuntu2~24.04) ...
Selecting previously unselected package libgomp1:amd64.
Preparing to unpack .../21-libgomp1_14.2.0-4ubuntu2~24.04_amd64.deb ...
Unpacking libgomp1:amd64 (14.2.0-4ubuntu2~24.04) ...
Selecting previously unselected package libitm1:amd64.
Preparing to unpack .../22-libitm1_14.2.0-4ubuntu2~24.04_amd64.deb ...
Unpacking libitm1:amd64 (14.2.0-4ubuntu2~24.04) ...
Selecting previously unselected package libatomic1:amd64.
Preparing to unpack .../23-libatomic1_14.2.0-4ubuntu2~24.04_amd64.deb ...
Unpacking libatomic1:amd64 (14.2.0-4ubuntu2~24.04) ...
Selecting previously unselected package libasan8:amd64.
Preparing to unpack .../24-libasan8_14.2.0-4ubuntu2~24.04_amd64.deb ...
Unpacking libasan8:amd64 (14.2.0-4ubuntu2~24.04) ...
Selecting previously unselected package liblsan0:amd64.
Preparing to unpack .../25-liblsan0_14.2.0-4ubuntu2~24.04_amd64.deb ...
Unpacking liblsan0:amd64 (14.2.0-4ubuntu2~24.04) ...
Selecting previously unselected package libtsan2:amd64.
Preparing to unpack .../26-libtsan2_14.2.0-4ubuntu2~24.04_amd64.deb ...
Unpacking libtsan2:amd64 (14.2.0-4ubuntu2~24.04) ...
Selecting previously unselected package libubsan1:amd64.
Preparing to unpack .../27-libubsan1_14.2.0-4ubuntu2~24.04_amd64.deb ...
Unpacking libubsan1:amd64 (14.2.0-4ubuntu2~24.04) ...
Selecting previously unselected package libhwasan0:amd64.
Preparing to unpack .../28-libhwasan0_14.2.0-4ubuntu2~24.04_amd64.deb ...
Unpacking libhwasan0:amd64 (14.2.0-4ubuntu2~24.04) ...
Selecting previously unselected package libquadmath0:amd64.
Preparing to unpack .../29-libquadmath0_14.2.0-4ubuntu2~24.04_amd64.deb ...
Unpacking libquadmath0:amd64 (14.2.0-4ubuntu2~24.04) ...
Selecting previously unselected package libgcc-13-dev:amd64.
Preparing to unpack .../30-libgcc-13-dev_13.2.0-23ubuntu4_amd64.deb ...
Unpacking libgcc-13-dev:amd64 (13.2.0-23ubuntu4) ...
Selecting previously unselected package gcc-13-x86-64-linux-gnu.
Preparing to unpack .../31-gcc-13-x86-64-linux-gnu_13.2.0-23ubuntu4_amd64.deb ...
Unpacking gcc-13-x86-64-linux-gnu (13.2.0-23ubuntu4) ...
Selecting previously unselected package gcc-13.
Preparing to unpack .../32-gcc-13_13.2.0-23ubuntu4_amd64.deb ...
Unpacking gcc-13 (13.2.0-23ubuntu4) ...
Selecting previously unselected package gcc-x86-64-linux-gnu.
Preparing to unpack .../33-gcc-x86-64-linux-gnu_4%3a13.2.0-7ubuntu1_amd64.deb ...
Unpacking gcc-x86-64-linux-gnu (4:13.2.0-7ubuntu1) ...
Selecting previously unselected package gcc.
Preparing to unpack .../34-gcc_4%3a13.2.0-7ubuntu1_amd64.deb ...
Unpacking gcc (4:13.2.0-7ubuntu1) ...
Selecting previously unselected package libstdc++-13-dev:amd64.
Preparing to unpack .../35-libstdc++-13-dev_13.2.0-23ubuntu4_amd64.deb ...
Unpacking libstdc++-13-dev:amd64 (13.2.0-23ubuntu4) ...
Selecting previously unselected package g++-13-x86-64-linux-gnu.
Preparing to unpack .../36-g++-13-x86-64-linux-gnu_13.2.0-23ubuntu4_amd64.deb ...
Unpacking g++-13-x86-64-linux-gnu (13.2.0-23ubuntu4) ...
Selecting previously unselected package g++-13.
Preparing to unpack .../37-g++-13_13.2.0-23ubuntu4_amd64.deb ...
Unpacking g++-13 (13.2.0-23ubuntu4) ...
Selecting previously unselected package g++-x86-64-linux-gnu.
Preparing to unpack .../38-g++-x86-64-linux-gnu_4%3a13.2.0-7ubuntu1_amd64.deb ...
Unpacking g++-x86-64-linux-gnu (4:13.2.0-7ubuntu1) ...
Selecting previously unselected package g++.
Preparing to unpack .../39-g++_4%3a13.2.0-7ubuntu1_amd64.deb ...
Unpacking g++ (4:13.2.0-7ubuntu1) ...
Selecting previously unselected package make.
Preparing to unpack .../40-make_4.3-4.1build2_amd64.deb ...
Unpacking make (4.3-4.1build2) ...
Selecting previously unselected package libdpkg-perl.
Preparing to unpack .../41-libdpkg-perl_1.22.6ubuntu6.1_all.deb ...
Unpacking libdpkg-perl (1.22.6ubuntu6.1) ...
Selecting previously unselected package bzip2.
Preparing to unpack .../42-bzip2_1.0.8-5.1build0.1_amd64.deb ...
Unpacking bzip2 (1.0.8-5.1build0.1) ...
Selecting previously unselected package lto-disabled-list.
Preparing to unpack .../43-lto-disabled-list_47_all.deb ...
Unpacking lto-disabled-list (47) ...
Selecting previously unselected package dpkg-dev.
Preparing to unpack .../44-dpkg-dev_1.22.6ubuntu6.1_all.deb ...
Unpacking dpkg-dev (1.22.6ubuntu6.1) ...
Selecting previously unselected package build-essential.
Preparing to unpack .../45-build-essential_12.10ubuntu1_amd64.deb ...
Unpacking build-essential (12.10ubuntu1) ...
Selecting previously unselected package libfakeroot:amd64.
Preparing to unpack .../46-libfakeroot_1.33-1_amd64.deb ...
Unpacking libfakeroot:amd64 (1.33-1) ...
Selecting previously unselected package fakeroot.
Preparing to unpack .../47-fakeroot_1.33-1_amd64.deb ...
Unpacking fakeroot (1.33-1) ...
Selecting previously unselected package fonts-dejavu-mono.
Preparing to unpack .../48-fonts-dejavu-mono_2.37-8_all.deb ...
Unpacking fonts-dejavu-mono (2.37-8) ...
Selecting previously unselected package fonts-dejavu-core.
Preparing to unpack .../49-fonts-dejavu-core_2.37-8_all.deb ...
Unpacking fonts-dejavu-core (2.37-8) ...
Selecting previously unselected package fontconfig-config.
Preparing to unpack .../50-fontconfig-config_2.15.0-1.1ubuntu2_amd64.deb ...
Unpacking fontconfig-config (2.15.0-1.1ubuntu2) ...
Selecting previously unselected package libalgorithm-diff-perl.
Preparing to unpack .../51-libalgorithm-diff-perl_1.201-1_all.deb ...
Unpacking libalgorithm-diff-perl (1.201-1) ...
Selecting previously unselected package libalgorithm-diff-xs-perl:amd64.
Preparing to unpack .../52-libalgorithm-diff-xs-perl_0.04-8build3_amd64.deb ...
Unpacking libalgorithm-diff-xs-perl:amd64 (0.04-8build3) ...
Selecting previously unselected package libalgorithm-merge-perl.
Preparing to unpack .../53-libalgorithm-merge-perl_0.08-5_all.deb ...
Unpacking libalgorithm-merge-perl (0.08-5) ...
Selecting previously unselected package libaom3:amd64.
Preparing to unpack .../54-libaom3_3.8.2-2ubuntu0.1_amd64.deb ...
Unpacking libaom3:amd64 (3.8.2-2ubuntu0.1) ...
Selecting previously unselected package libfontconfig1:amd64.
Preparing to unpack .../55-libfontconfig1_2.15.0-1.1ubuntu2_amd64.deb ...
Unpacking libfontconfig1:amd64 (2.15.0-1.1ubuntu2) ...
Selecting previously unselected package libsharpyuv0:amd64.
Preparing to unpack .../56-libsharpyuv0_1.3.2-0.4build3_amd64.deb ...
Unpacking libsharpyuv0:amd64 (1.3.2-0.4build3) ...
Selecting previously unselected package libheif-plugin-aomdec:amd64.
Preparing to unpack .../57-libheif-plugin-aomdec_1.17.6-1ubuntu4.1_amd64.deb ...
Unpacking libheif-plugin-aomdec:amd64 (1.17.6-1ubuntu4.1) ...
Selecting previously unselected package libde265-0:amd64.
Preparing to unpack .../58-libde265-0_1.0.15-1build3_amd64.deb ...
Unpacking libde265-0:amd64 (1.0.15-1build3) ...
Selecting previously unselected package libheif-plugin-libde265:amd64.
Preparing to unpack .../59-libheif-plugin-libde265_1.17.6-1ubuntu4.1_amd64.deb ...
Unpacking libheif-plugin-libde265:amd64 (1.17.6-1ubuntu4.1) ...
Selecting previously unselected package libheif1:amd64.
Preparing to unpack .../60-libheif1_1.17.6-1ubuntu4.1_amd64.deb ...
Unpacking libheif1:amd64 (1.17.6-1ubuntu4.1) ...
Selecting previously unselected package libjpeg-turbo8:amd64.
Preparing to unpack .../61-libjpeg-turbo8_2.1.5-2ubuntu2_amd64.deb ...
Unpacking libjpeg-turbo8:amd64 (2.1.5-2ubuntu2) ...
Selecting previously unselected package libjpeg8:amd64.
Preparing to unpack .../62-libjpeg8_8c-2ubuntu11_amd64.deb ...
Unpacking libjpeg8:amd64 (8c-2ubuntu11) ...
Selecting previously unselected package libdeflate0:amd64.
Preparing to unpack .../63-libdeflate0_1.19-1build1.1_amd64.deb ...
Unpacking libdeflate0:amd64 (1.19-1build1.1) ...
Selecting previously unselected package libjbig0:amd64.
Preparing to unpack .../64-libjbig0_2.1-6.1ubuntu2_amd64.deb ...
Unpacking libjbig0:amd64 (2.1-6.1ubuntu2) ...
Selecting previously unselected package liblerc4:amd64.
Preparing to unpack .../65-liblerc4_4.0.0+ds-4ubuntu2_amd64.deb ...
Unpacking liblerc4:amd64 (4.0.0+ds-4ubuntu2) ...
Selecting previously unselected package libwebp7:amd64.
Preparing to unpack .../66-libwebp7_1.3.2-0.4build3_amd64.deb ...
Unpacking libwebp7:amd64 (1.3.2-0.4build3) ...
Selecting previously unselected package libtiff6:amd64.
Preparing to unpack .../67-libtiff6_4.5.1+git230720-4ubuntu2.2_amd64.deb ...
Unpacking libtiff6:amd64 (4.5.1+git230720-4ubuntu2.2) ...
Selecting previously unselected package libxpm4:amd64.
Preparing to unpack .../68-libxpm4_1%3a3.5.17-1build2_amd64.deb ...
Unpacking libxpm4:amd64 (1:3.5.17-1build2) ...
Selecting previously unselected package libgd3:amd64.
Preparing to unpack .../69-libgd3_2.3.3-9ubuntu5_amd64.deb ...
Unpacking libgd3:amd64 (2.3.3-9ubuntu5) ...
Selecting previously unselected package libc-devtools.
Preparing to unpack .../70-libc-devtools_2.39-0ubuntu8.3_amd64.deb ...
Unpacking libc-devtools (2.39-0ubuntu8.3) ...
Selecting previously unselected package libfile-fcntllock-perl.
Preparing to unpack .../71-libfile-fcntllock-perl_0.22-4ubuntu5_amd64.deb ...
Unpacking libfile-fcntllock-perl (0.22-4ubuntu5) ...
Selecting previously unselected package libheif-plugin-aomenc:amd64.
Preparing to unpack .../72-libheif-plugin-aomenc_1.17.6-1ubuntu4.1_amd64.deb ...
Unpacking libheif-plugin-aomenc:amd64 (1.17.6-1ubuntu4.1) ...
Preparing to unpack .../73-linux-tools-common_6.8.0-48.48_all.deb ...
Unpacking linux-tools-common (6.8.0-48.48) over (6.8.0-45.45) ...
Selecting previously unselected package manpages-dev.
Preparing to unpack .../74-manpages-dev_6.7-2_all.deb ...
Unpacking manpages-dev (6.7-2) ...
Setting up libsharpyuv0:amd64 (1.3.2-0.4build3) ...
Setting up libaom3:amd64 (3.8.2-2ubuntu0.1) ...
Setting up manpages-dev (6.7-2) ...
Setting up lto-disabled-list (47) ...
Setting up liblerc4:amd64 (4.0.0+ds-4ubuntu2) ...
Setting up libxpm4:amd64 (1:3.5.17-1build2) ...
Setting up libfile-fcntllock-perl (0.22-4ubuntu5) ...
Setting up libalgorithm-diff-perl (1.201-1) ...
Setting up binutils-common:amd64 (2.42-4ubuntu2.3) ...
Setting up libdeflate0:amd64 (1.19-1build1.1) ...
Setting up linux-libc-dev:amd64 (6.8.0-48.48) ...
Setting up libctf-nobfd0:amd64 (2.42-4ubuntu2.3) ...
Setting up libgomp1:amd64 (14.2.0-4ubuntu2~24.04) ...
Setting up bzip2 (1.0.8-5.1build0.1) ...
Setting up libjbig0:amd64 (2.1-6.1ubuntu2) ...
Setting up libsframe1:amd64 (2.42-4ubuntu2.3) ...
Setting up libfakeroot:amd64 (1.33-1) ...
Setting up fakeroot (1.33-1) ...
update-alternatives: using /usr/bin/fakeroot-sysv to provide /usr/bin/fakeroot (fakeroot) in auto mode
Setting up rpcsvc-proto (1.4.2-0ubuntu7) ...
Setting up gcc-13-base:amd64 (13.2.0-23ubuntu4) ...
Setting up make (4.3-4.1build2) ...
Setting up libquadmath0:amd64 (14.2.0-4ubuntu2~24.04) ...
Setting up fonts-dejavu-mono (2.37-8) ...
Setting up libmpc3:amd64 (1.3.1-1build1) ...
Setting up libatomic1:amd64 (14.2.0-4ubuntu2~24.04) ...
Setting up fonts-dejavu-core (2.37-8) ...
Setting up libjpeg-turbo8:amd64 (2.1.5-2ubuntu2) ...
Setting up libdpkg-perl (1.22.6ubuntu6.1) ...
Setting up libwebp7:amd64 (1.3.2-0.4build3) ...
Setting up libubsan1:amd64 (14.2.0-4ubuntu2~24.04) ...
Setting up libhwasan0:amd64 (14.2.0-4ubuntu2~24.04) ...
Setting up libcrypt-dev:amd64 (1:4.4.36-4build1) ...
Setting up libasan8:amd64 (14.2.0-4ubuntu2~24.04) ...
Setting up libtsan2:amd64 (14.2.0-4ubuntu2~24.04) ...
Setting up libbinutils:amd64 (2.42-4ubuntu2.3) ...
Setting up libisl23:amd64 (0.26-3build1) ...
Setting up libde265-0:amd64 (1.0.15-1build3) ...
Setting up libc-dev-bin (2.39-0ubuntu8.3) ...
Setting up linux-tools-common (6.8.0-48.48) ...
Setting up libalgorithm-diff-xs-perl:amd64 (0.04-8build3) ...
Setting up libcc1-0:amd64 (14.2.0-4ubuntu2~24.04) ...
Setting up liblsan0:amd64 (14.2.0-4ubuntu2~24.04) ...
Setting up libitm1:amd64 (14.2.0-4ubuntu2~24.04) ...
Setting up libalgorithm-merge-perl (0.08-5) ...
Setting up libctf0:amd64 (2.42-4ubuntu2.3) ...
Setting up libjpeg8:amd64 (8c-2ubuntu11) ...
Setting up cpp-13-x86-64-linux-gnu (13.2.0-23ubuntu4) ...
Setting up fontconfig-config (2.15.0-1.1ubuntu2) ...
Setting up libgprofng0:amd64 (2.42-4ubuntu2.3) ...
Setting up libgcc-13-dev:amd64 (13.2.0-23ubuntu4) ...
Setting up libtiff6:amd64 (4.5.1+git230720-4ubuntu2.2) ...
Setting up libc6-dev:amd64 (2.39-0ubuntu8.3) ...
Setting up libstdc++-13-dev:amd64 (13.2.0-23ubuntu4) ...
Setting up binutils-x86-64-linux-gnu (2.42-4ubuntu2.3) ...
Setting up cpp-x86-64-linux-gnu (4:13.2.0-7ubuntu1) ...
Setting up cpp-13 (13.2.0-23ubuntu4) ...
Setting up gcc-13-x86-64-linux-gnu (13.2.0-23ubuntu4) ...
Setting up binutils (2.42-4ubuntu2.3) ...
Setting up dpkg-dev (1.22.6ubuntu6.1) ...
Setting up gcc-13 (13.2.0-23ubuntu4) ...
Setting up cpp (4:13.2.0-7ubuntu1) ...
Setting up g++-13-x86-64-linux-gnu (13.2.0-23ubuntu4) ...
Setting up gcc-x86-64-linux-gnu (4:13.2.0-7ubuntu1) ...
Setting up gcc (4:13.2.0-7ubuntu1) ...
Setting up g++-x86-64-linux-gnu (4:13.2.0-7ubuntu1) ...
Setting up g++-13 (13.2.0-23ubuntu4) ...
Setting up g++ (4:13.2.0-7ubuntu1) ...
update-alternatives: using /usr/bin/g++ to provide /usr/bin/c++ (c++) in auto mode
Setting up build-essential (12.10ubuntu1) ...
Setting up libheif-plugin-aomdec:amd64 (1.17.6-1ubuntu4.1) ...
Setting up libheif1:amd64 (1.17.6-1ubuntu4.1) ...
Setting up libheif-plugin-libde265:amd64 (1.17.6-1ubuntu4.1) ...
Setting up libheif-plugin-aomenc:amd64 (1.17.6-1ubuntu4.1) ...
Processing triggers for libc-bin (2.39-0ubuntu8.3) ...
Processing triggers for man-db (2.12.0-4build2) ...
Processing triggers for sgml-base (1.31) ...
Setting up libfontconfig1:amd64 (2.15.0-1.1ubuntu2) ...
Setting up libgd3:amd64 (2.3.3-9ubuntu5) ...
Setting up libc-devtools (2.39-0ubuntu8.3) ...
Processing triggers for libc-bin (2.39-0ubuntu8.3) ...
Scanning processes...
Scanning candidates...
Scanning linux images...
Running kernel seems to be up-to-date.
Restarting services...
systemctl restart multipathd.service
Service restarts being deferred:
systemctl restart unattended-upgrades.service
No containers need to be restarted.
No user sessions are running outdated binaries.
No VM guests are running outdated hypervisor (qemu) binaries on this host.
2) gitパッケージ・インストール
ubuntu@oci-ubuntu:~$ sudo apt-get install git -y -q
Reading package lists...
Building dependency tree...
Reading state information...
git is already the newest version (1:2.43.0-1ubuntu7.1).
git set to manually installed.
0 upgraded, 0 newly installed, 0 to remove and 17 not upgraded.
3) autotools-devパッケージ・インストール
ubuntu@oci-ubuntu:~$ sudo apt-get install -y autotools-dev
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following NEW packages will be installed:
autotools-dev
0 upgraded, 1 newly installed, 0 to remove and 17 not upgraded.
Need to get 44.9 kB of archives.
After this operation, 137 kB of additional disk space will be used.
Get:1 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 autotools-dev all 20220109.1 [44.9 kB]
Fetched 44.9 kB in 1s (68.6 kB/s)
Selecting previously unselected package autotools-dev.
(Reading database ... 80559 files and directories currently installed.)
Preparing to unpack .../autotools-dev_20220109.1_all.deb ...
Unpacking autotools-dev (20220109.1) ...
Setting up autotools-dev (20220109.1) ...
Processing triggers for man-db (2.12.0-4build2) ...
Scanning processes...
Scanning candidates...
Scanning linux images...
Running kernel seems to be up-to-date.
Restarting services...
Service restarts being deferred:
systemctl restart unattended-upgrades.service
No containers need to be restarted.
No user sessions are running outdated binaries.
No VM guests are running outdated hypervisor (qemu) binaries on this host.
3) automake パッケージ・インストール
ubuntu@oci-ubuntu:~$ sudo apt-get install -y automake
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
autoconf m4
Suggested packages:
autoconf-archive gnu-standards autoconf-doc libtool gettext m4-doc
The following NEW packages will be installed:
autoconf automake m4
0 upgraded, 3 newly installed, 0 to remove and 17 not upgraded.
Need to get 1141 kB of archives.
After this operation, 4325 kB of additional disk space will be used.
Get:1 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 m4 amd64 1.4.19-4build1 [244 kB]
Get:2 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 autoconf all 2.71-3 [339 kB]
Get:3 http://ap-tokyo-1-ad-1.clouds.archive.ubuntu.com/ubuntu noble/main amd64 automake all 1:1.16.5-1.3ubuntu1 [558 kB]
Fetched 1141 kB in 2s (471 kB/s)
Selecting previously unselected package m4.
(Reading database ... 80575 files and directories currently installed.)
Preparing to unpack .../m4_1.4.19-4build1_amd64.deb ...
Unpacking m4 (1.4.19-4build1) ...
Selecting previously unselected package autoconf.
Preparing to unpack .../autoconf_2.71-3_all.deb ...
Unpacking autoconf (2.71-3) ...
Selecting previously unselected package automake.
Preparing to unpack .../automake_1%3a1.16.5-1.3ubuntu1_all.deb ...
Unpacking automake (1:1.16.5-1.3ubuntu1) ...
Setting up m4 (1.4.19-4build1) ...
Setting up autoconf (2.71-3) ...
Setting up automake (1:1.16.5-1.3ubuntu1) ...
update-alternatives: using /usr/bin/automake-1.16 to provide /usr/bin/automake (automake) in auto mode
Processing triggers for install-info (7.1-3build2) ...
Processing triggers for man-db (2.12.0-4build2) ...
Scanning processes...
Scanning candidates...
Scanning linux images...
Running kernel seems to be up-to-date.
Restarting services...
Service restarts being deferred:
systemctl restart unattended-upgrades.service
No containers need to be restarted.
No user sessions are running outdated binaries.
No VM guests are running outdated hypervisor (qemu) binaries on this host.
4) autoconf パッケージ・インストール
ubuntu@oci-ubuntu:~$ sudo apt-get install -y autoconf
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
autoconf is already the newest version (2.71-3).
autoconf set to manually installed.
0 upgraded, 0 newly installed, 0 to remove and 17 not upgraded.
● SockPerf インストール
1) sockperfパッケージ・インストール
ubuntu@oci-ubuntu:~$ git clone https://github.com/mellanox/sockperf
Cloning into 'sockperf'...
remote: Enumerating objects: 2845, done.
remote: Counting objects: 100% (1136/1136), done.
remote: Compressing objects: 100% (304/304), done.
remote: Total 2845 (delta 898), reused 994 (delta 824), pack-reused 1709 (from 1)
Receiving objects: 100% (2845/2845), 1.57 MiB | 4.32 MiB/s, done.
Resolving deltas: 100% (2010/2010), done.
2) autogen.sh実行
ubuntu@oci-ubuntu:~$ cd sockperf/
ubuntu@oci-ubuntu:~/sockperf$ ./autogen.sh
+ pwd
+ oldpwd=/home/ubuntu/sockperf
+ dirname ./autogen.sh
+ topdir=.
+ cd .
+ CURRENT_VERSION_FILE=./build/current-version
+ . ./build/versioning.sh
+ cat sockperf-version
+ tr -d \n
+ VERSION=3.10
+ git rev-parse HEAD
+ GIT_REF=91b10ca095ea2efe6aaab830e34c2afe2c3e4cbf
+ git describe --long --abbrev=12 --dirty
+ x=3.10-29-g91b10ca095ea
+ [ -n 3.10-29-g91b10ca095ea ]
+ echo 3.10-29-g91b10ca095ea
+ sed -e s/-g/.git/ -e s/-dirty/.dirty/
+ sed s/.*-//
+ x=29.git91b10ca095ea
+ RELEASE=29.git91b10ca095ea
+ echo 3.10-29.git91b10ca095ea
+ echo 91b10ca095ea2efe6aaab830e34c2afe2c3e4cbf
+ rm -rf autom4te.cache
+ mkdir -p config/m4 config/aux
+ autoreconf -v --install
autoreconf: export WARNINGS=
autoreconf: Entering directory '.'
autoreconf: configure.ac: not using Gettext
autoreconf: running: aclocal -I config/m4
autoreconf: configure.ac: tracing
autoreconf: configure.ac: not using Libtool
autoreconf: configure.ac: not using Intltool
autoreconf: configure.ac: not using Gtkdoc
autoreconf: running: /usr/bin/autoconf
autoreconf: running: /usr/bin/autoheader
autoreconf: running: automake --add-missing --copy --no-force
configure.ac:73: installing 'config/aux/ar-lib'
configure.ac:73: installing 'config/aux/compile'
configure.ac:13: installing 'config/aux/config.guess'
configure.ac:13: installing 'config/aux/config.sub'
configure.ac:64: installing 'config/aux/install-sh'
configure.ac:64: installing 'config/aux/missing'
Makefile.am: installing 'config/aux/depcomp'
tests/Makefile.am:1: warning: ':='-style assignments are not portable
tests/gtest/Makefile.am:44: error: Libtool library used but 'LIBTOOL' is undefined
tests/gtest/Makefile.am:44: The usual way to define 'LIBTOOL' is to add 'LT_INIT'
tests/gtest/Makefile.am:44: to 'configure.ac' and run 'aclocal' and 'autoconf' again.
tests/gtest/Makefile.am:44: If 'LT_INIT' is in 'configure.ac', make sure
tests/gtest/Makefile.am:44: its definition is in aclocal's search path.
autoreconf: error: automake failed with exit status: 1
+ exit 1
ubuntu@oci-ubuntu:~/sockperf$
ubuntu@oci-ubuntu:~/sockperf$
ubuntu@oci-ubuntu:~/sockperf$ ./configure --prefix=
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking target system type... x86_64-pc-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a race-free mkdir -p... /usr/bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking whether to enable maintainer-specific portions of Makefiles... no
checking for g++... g++
checking whether the C++ compiler works... yes
checking for C++ compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether the compiler supports GNU C++... yes
checking whether g++ accepts -g... yes
checking for g++ option to enable C++11 features... none needed
checking whether make supports the include directive... yes (GNU style)
checking dependency style of g++... gcc3
checking for gcc... gcc
checking whether the compiler supports GNU C... yes
checking whether gcc accepts -g... yes
checking for gcc option to enable C11 features... none needed
checking whether gcc understands -c and -o together... yes
checking dependency style of gcc... gcc3
checking for ar... ar
checking the archiver (ar) interface... ar
./configure: line 5633: LT_INIT: command not found
checking whether g++ supports C++11 features by default... yes
checking whether g++ supports -Wall in CXXFLAGS... yes
checking whether g++ supports --param inline-unit-growth=300 in CXXFLAGS... yes
checking for stdio.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for strings.h... yes
checking for sys/stat.h... yes
checking for sys/types.h... yes
checking for unistd.h... yes
checking for vma extra api... no
checking for xlio extra api... no
checking for tls support... no
checking for arpa/inet.h... yes
checking for fcntl.h... yes
checking for netinet/in.h... yes
checking for stdint.h... (cached) yes
checking for stdlib.h... (cached) yes
checking for string.h... (cached) yes
checking for sys/ioctl.h... yes
checking for sys/socket.h... yes
checking for sys/time.h... yes
checking for syslog.h... yes
checking for termios.h... yes
checking for unistd.h... (cached) yes
checking for library containing clock_gettime... none required
checking for library containing pthread_create... none required
checking for library containing backtrace... none required
checking for library containing dlsym... none required
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: error: cannot find input file: `tools/Makefile.in'
ubuntu@oci-ubuntu:~/sockperf$
ubuntu@oci-ubuntu:~/sockperf$
ubuntu@oci-ubuntu:~/sockperf$ make
cd . && /bin/bash ./config.status config.h
config.status: creating config.h
make all-recursive
make[1]: Entering directory '/home/ubuntu/sockperf'
make[2]: Entering directory '/home/ubuntu/sockperf'
depbase=`echo src/aopt.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -DHAVE_CONFIG_H -I. -imacros ./config.h -Wall --param inline-unit-growth=300 -O3 -g -MT src/aopt.o -MD -MP -MF $depbase.Tpo -c -o src/aopt.o src/aopt.cpp &&\
mv -f $depbase.Tpo $depbase.Po
In file included from src/defs.h:109,
from src/aopt.cpp:37:
src/ip_address.h:120:50: warning: ‘template<class _Arg, class _Result> struct std::unary_function’ is deprecated [-Wdeprecated-declarations]
120 | template <> struct hash<IPAddress> : public std::unary_function<IPAddress, int> {
| ^~~~~~~~~~~~~~
In file included from /usr/include/c++/13/bits/hashtable.h:37,
from /usr/include/c++/13/bits/unordered_map.h:33,
from /usr/include/c++/13/unordered_map:41,
from src/defs.h:74:
/usr/include/c++/13/bits/stl_function.h:117:12: note: declared here
117 | struct unary_function
| ^~~~~~~~~~~~~~
src/ip_address.h:137:42: warning: ‘template<class _Arg1, class _Arg2, class _Result> struct std::binary_function’ is deprecated [-Wdeprecated-declarations]
137 | struct equal_to<IPAddress> : public std::binary_function<IPAddress, IPAddress,
| ^~~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_function.h:131:12: note: declared here
131 | struct binary_function
| ^~~~~~~~~~~~~~~
src/defs.h:604:64: warning: ‘template<class _Arg, class _Result> struct std::unary_function’ is deprecated [-Wdeprecated-declarations]
604 | template <> struct hash<struct sockaddr_store_t> : public std::unary_function<struct sockaddr_store_t, int> {
| ^~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_function.h:117:12: note: declared here
117 | struct unary_function
| ^~~~~~~~~~~~~~
src/defs.h:626:21: warning: ‘template<class _Arg1, class _Arg2, class _Result> struct std::binary_function’ is deprecated [-Wdeprecated-declarations]
626 | public std::binary_function<struct sockaddr_store_t,
| ^~~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_function.h:131:12: note: declared here
131 | struct binary_function
| ^~~~~~~~~~~~~~~
depbase=`echo src/client.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -DHAVE_CONFIG_H -I. -imacros ./config.h -Wall --param inline-unit-growth=300 -O3 -g -MT src/client.o -MD -MP -MF $depbase.Tpo -c -o src/client.o src/client.cpp &&\
mv -f $depbase.Tpo $depbase.Po
In file included from src/defs.h:109,
from src/client.cpp:30:
src/ip_address.h:120:50: warning: ‘template<class _Arg, class _Result> struct std::unary_function’ is deprecated [-Wdeprecated-declarations]
120 | template <> struct hash<IPAddress> : public std::unary_function<IPAddress, int> {
| ^~~~~~~~~~~~~~
In file included from /usr/include/c++/13/bits/hashtable.h:37,
from /usr/include/c++/13/bits/unordered_map.h:33,
from /usr/include/c++/13/unordered_map:41,
from src/defs.h:74:
/usr/include/c++/13/bits/stl_function.h:117:12: note: declared here
117 | struct unary_function
| ^~~~~~~~~~~~~~
src/ip_address.h:137:42: warning: ‘template<class _Arg1, class _Arg2, class _Result> struct std::binary_function’ is deprecated [-Wdeprecated-declarations]
137 | struct equal_to<IPAddress> : public std::binary_function<IPAddress, IPAddress,
| ^~~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_function.h:131:12: note: declared here
131 | struct binary_function
| ^~~~~~~~~~~~~~~
src/defs.h:604:64: warning: ‘template<class _Arg, class _Result> struct std::unary_function’ is deprecated [-Wdeprecated-declarations]
604 | template <> struct hash<struct sockaddr_store_t> : public std::unary_function<struct sockaddr_store_t, int> {
| ^~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_function.h:117:12: note: declared here
117 | struct unary_function
| ^~~~~~~~~~~~~~
src/defs.h:626:21: warning: ‘template<class _Arg1, class _Arg2, class _Result> struct std::binary_function’ is deprecated [-Wdeprecated-declarations]
626 | public std::binary_function<struct sockaddr_store_t,
| ^~~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_function.h:131:12: note: declared here
131 | struct binary_function
| ^~~~~~~~~~~~~~~
depbase=`echo src/common.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -DHAVE_CONFIG_H -I. -imacros ./config.h -Wall --param inline-unit-growth=300 -O3 -g -MT src/common.o -MD -MP -MF $depbase.Tpo -c -o src/common.o src/common.cpp &&\
mv -f $depbase.Tpo $depbase.Po
In file included from src/defs.h:109,
from src/common.h:35,
from src/common.cpp:30:
src/ip_address.h:120:50: warning: ‘template<class _Arg, class _Result> struct std::unary_function’ is deprecated [-Wdeprecated-declarations]
120 | template <> struct hash<IPAddress> : public std::unary_function<IPAddress, int> {
| ^~~~~~~~~~~~~~
In file included from /usr/include/c++/13/string:49,
from src/common.h:33:
/usr/include/c++/13/bits/stl_function.h:117:12: note: declared here
117 | struct unary_function
| ^~~~~~~~~~~~~~
src/ip_address.h:137:42: warning: ‘template<class _Arg1, class _Arg2, class _Result> struct std::binary_function’ is deprecated [-Wdeprecated-declarations]
137 | struct equal_to<IPAddress> : public std::binary_function<IPAddress, IPAddress,
| ^~~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_function.h:131:12: note: declared here
131 | struct binary_function
| ^~~~~~~~~~~~~~~
src/defs.h:604:64: warning: ‘template<class _Arg, class _Result> struct std::unary_function’ is deprecated [-Wdeprecated-declarations]
604 | template <> struct hash<struct sockaddr_store_t> : public std::unary_function<struct sockaddr_store_t, int> {
| ^~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_function.h:117:12: note: declared here
117 | struct unary_function
| ^~~~~~~~~~~~~~
src/defs.h:626:21: warning: ‘template<class _Arg1, class _Arg2, class _Result> struct std::binary_function’ is deprecated [-Wdeprecated-declarations]
626 | public std::binary_function<struct sockaddr_store_t,
| ^~~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_function.h:131:12: note: declared here
131 | struct binary_function
| ^~~~~~~~~~~~~~~
depbase=`echo src/defs.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -DHAVE_CONFIG_H -I. -imacros ./config.h -Wall --param inline-unit-growth=300 -O3 -g -MT src/defs.o -MD -MP -MF $depbase.Tpo -c -o src/defs.o src/defs.cpp &&\
mv -f $depbase.Tpo $depbase.Po
In file included from src/defs.h:109,
from src/defs.cpp:30:
src/ip_address.h:120:50: warning: ‘template<class _Arg, class _Result> struct std::unary_function’ is deprecated [-Wdeprecated-declarations]
120 | template <> struct hash<IPAddress> : public std::unary_function<IPAddress, int> {
| ^~~~~~~~~~~~~~
In file included from /usr/include/c++/13/bits/hashtable.h:37,
from /usr/include/c++/13/bits/unordered_map.h:33,
from /usr/include/c++/13/unordered_map:41,
from src/defs.h:74:
/usr/include/c++/13/bits/stl_function.h:117:12: note: declared here
117 | struct unary_function
| ^~~~~~~~~~~~~~
src/ip_address.h:137:42: warning: ‘template<class _Arg1, class _Arg2, class _Result> struct std::binary_function’ is deprecated [-Wdeprecated-declarations]
137 | struct equal_to<IPAddress> : public std::binary_function<IPAddress, IPAddress,
| ^~~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_function.h:131:12: note: declared here
131 | struct binary_function
| ^~~~~~~~~~~~~~~
src/defs.h:604:64: warning: ‘template<class _Arg, class _Result> struct std::unary_function’ is deprecated [-Wdeprecated-declarations]
604 | template <> struct hash<struct sockaddr_store_t> : public std::unary_function<struct sockaddr_store_t, int> {
| ^~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_function.h:117:12: note: declared here
117 | struct unary_function
| ^~~~~~~~~~~~~~
src/defs.h:626:21: warning: ‘template<class _Arg1, class _Arg2, class _Result> struct std::binary_function’ is deprecated [-Wdeprecated-declarations]
626 | public std::binary_function<struct sockaddr_store_t,
| ^~~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_function.h:131:12: note: declared here
131 | struct binary_function
| ^~~~~~~~~~~~~~~
depbase=`echo src/iohandlers.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -DHAVE_CONFIG_H -I. -imacros ./config.h -Wall --param inline-unit-growth=300 -O3 -g -MT src/iohandlers.o -MD -MP -MF $depbase.Tpo -c -o src/iohandlers.o src/iohandlers.cpp &&\
mv -f $depbase.Tpo $depbase.Po
In file included from src/defs.h:109,
from src/iohandlers.h:33,
from src/iohandlers.cpp:30:
src/ip_address.h:120:50: warning: ‘template<class _Arg, class _Result> struct std::unary_function’ is deprecated [-Wdeprecated-declarations]
120 | template <> struct hash<IPAddress> : public std::unary_function<IPAddress, int> {
| ^~~~~~~~~~~~~~
In file included from /usr/include/c++/13/bits/hashtable.h:37,
from /usr/include/c++/13/bits/unordered_map.h:33,
from /usr/include/c++/13/unordered_map:41,
from src/defs.h:74:
/usr/include/c++/13/bits/stl_function.h:117:12: note: declared here
117 | struct unary_function
| ^~~~~~~~~~~~~~
src/ip_address.h:137:42: warning: ‘template<class _Arg1, class _Arg2, class _Result> struct std::binary_function’ is deprecated [-Wdeprecated-declarations]
137 | struct equal_to<IPAddress> : public std::binary_function<IPAddress, IPAddress,
| ^~~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_function.h:131:12: note: declared here
131 | struct binary_function
| ^~~~~~~~~~~~~~~
src/defs.h:604:64: warning: ‘template<class _Arg, class _Result> struct std::unary_function’ is deprecated [-Wdeprecated-declarations]
604 | template <> struct hash<struct sockaddr_store_t> : public std::unary_function<struct sockaddr_store_t, int> {
| ^~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_function.h:117:12: note: declared here
117 | struct unary_function
| ^~~~~~~~~~~~~~
src/defs.h:626:21: warning: ‘template<class _Arg1, class _Arg2, class _Result> struct std::binary_function’ is deprecated [-Wdeprecated-declarations]
626 | public std::binary_function<struct sockaddr_store_t,
| ^~~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_function.h:131:12: note: declared here
131 | struct binary_function
| ^~~~~~~~~~~~~~~
depbase=`echo src/ip_address.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -DHAVE_CONFIG_H -I. -imacros ./config.h -Wall --param inline-unit-growth=300 -O3 -g -MT src/ip_address.o -MD -MP -MF $depbase.Tpo -c -o src/ip_address.o src/ip_address.cpp &&\
mv -f $depbase.Tpo $depbase.Po
In file included from src/ip_address.cpp:30:
src/ip_address.h:120:50: warning: ‘template<class _Arg, class _Result> struct std::unary_function’ is deprecated [-Wdeprecated-declarations]
120 | template <> struct hash<IPAddress> : public std::unary_function<IPAddress, int> {
| ^~~~~~~~~~~~~~
In file included from /usr/include/c++/13/functional:49,
from src/ip_address.h:50:
/usr/include/c++/13/bits/stl_function.h:117:12: note: declared here
117 | struct unary_function
| ^~~~~~~~~~~~~~
src/ip_address.h:137:42: warning: ‘template<class _Arg1, class _Arg2, class _Result> struct std::binary_function’ is deprecated [-Wdeprecated-declarations]
137 | struct equal_to<IPAddress> : public std::binary_function<IPAddress, IPAddress,
| ^~~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_function.h:131:12: note: declared here
131 | struct binary_function
| ^~~~~~~~~~~~~~~
In file included from src/common.h:35,
from src/ip_address.cpp:31:
src/defs.h:604:64: warning: ‘template<class _Arg, class _Result> struct std::unary_function’ is deprecated [-Wdeprecated-declarations]
604 | template <> struct hash<struct sockaddr_store_t> : public std::unary_function<struct sockaddr_store_t, int> {
| ^~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_function.h:117:12: note: declared here
117 | struct unary_function
| ^~~~~~~~~~~~~~
src/defs.h:626:21: warning: ‘template<class _Arg1, class _Arg2, class _Result> struct std::binary_function’ is deprecated [-Wdeprecated-declarations]
626 | public std::binary_function<struct sockaddr_store_t,
| ^~~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_function.h:131:12: note: declared here
131 | struct binary_function
| ^~~~~~~~~~~~~~~
depbase=`echo src/message.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -DHAVE_CONFIG_H -I. -imacros ./config.h -Wall --param inline-unit-growth=300 -O3 -g -MT src/message.o -MD -MP -MF $depbase.Tpo -c -o src/message.o src/message.cpp &&\
mv -f $depbase.Tpo $depbase.Po
In file included from src/defs.h:109,
from src/common.h:35,
from src/message.cpp:37:
src/ip_address.h:120:50: warning: ‘template<class _Arg, class _Result> struct std::unary_function’ is deprecated [-Wdeprecated-declarations]
120 | template <> struct hash<IPAddress> : public std::unary_function<IPAddress, int> {
| ^~~~~~~~~~~~~~
In file included from /usr/include/c++/13/string:49,
from /usr/include/c++/13/stdexcept:39,
from src/message.h:34,
from src/message.cpp:30:
/usr/include/c++/13/bits/stl_function.h:117:12: note: declared here
117 | struct unary_function
| ^~~~~~~~~~~~~~
src/ip_address.h:137:42: warning: ‘template<class _Arg1, class _Arg2, class _Result> struct std::binary_function’ is deprecated [-Wdeprecated-declarations]
137 | struct equal_to<IPAddress> : public std::binary_function<IPAddress, IPAddress,
| ^~~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_function.h:131:12: note: declared here
131 | struct binary_function
| ^~~~~~~~~~~~~~~
src/defs.h:604:64: warning: ‘template<class _Arg, class _Result> struct std::unary_function’ is deprecated [-Wdeprecated-declarations]
604 | template <> struct hash<struct sockaddr_store_t> : public std::unary_function<struct sockaddr_store_t, int> {
| ^~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_function.h:117:12: note: declared here
117 | struct unary_function
| ^~~~~~~~~~~~~~
src/defs.h:626:21: warning: ‘template<class _Arg1, class _Arg2, class _Result> struct std::binary_function’ is deprecated [-Wdeprecated-declarations]
626 | public std::binary_function<struct sockaddr_store_t,
| ^~~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_function.h:131:12: note: declared here
131 | struct binary_function
| ^~~~~~~~~~~~~~~
depbase=`echo src/os_abstract.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -DHAVE_CONFIG_H -I. -imacros ./config.h -Wall --param inline-unit-growth=300 -O3 -g -MT src/os_abstract.o -MD -MP -MF $depbase.Tpo -c -o src/os_abstract.o src/os_abstract.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/packet.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -DHAVE_CONFIG_H -I. -imacros ./config.h -Wall --param inline-unit-growth=300 -O3 -g -MT src/packet.o -MD -MP -MF $depbase.Tpo -c -o src/packet.o src/packet.cpp &&\
mv -f $depbase.Tpo $depbase.Po
In file included from src/defs.h:109,
from src/packet.cpp:31:
src/ip_address.h:120:50: warning: ‘template<class _Arg, class _Result> struct std::unary_function’ is deprecated [-Wdeprecated-declarations]
120 | template <> struct hash<IPAddress> : public std::unary_function<IPAddress, int> {
| ^~~~~~~~~~~~~~
In file included from /usr/include/c++/13/string:49,
from /usr/include/c++/13/stdexcept:39,
from src/packet.cpp:30:
/usr/include/c++/13/bits/stl_function.h:117:12: note: declared here
117 | struct unary_function
| ^~~~~~~~~~~~~~
src/ip_address.h:137:42: warning: ‘template<class _Arg1, class _Arg2, class _Result> struct std::binary_function’ is deprecated [-Wdeprecated-declarations]
137 | struct equal_to<IPAddress> : public std::binary_function<IPAddress, IPAddress,
| ^~~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_function.h:131:12: note: declared here
131 | struct binary_function
| ^~~~~~~~~~~~~~~
src/defs.h:604:64: warning: ‘template<class _Arg, class _Result> struct std::unary_function’ is deprecated [-Wdeprecated-declarations]
604 | template <> struct hash<struct sockaddr_store_t> : public std::unary_function<struct sockaddr_store_t, int> {
| ^~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_function.h:117:12: note: declared here
117 | struct unary_function
| ^~~~~~~~~~~~~~
src/defs.h:626:21: warning: ‘template<class _Arg1, class _Arg2, class _Result> struct std::binary_function’ is deprecated [-Wdeprecated-declarations]
626 | public std::binary_function<struct sockaddr_store_t,
| ^~~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_function.h:131:12: note: declared here
131 | struct binary_function
| ^~~~~~~~~~~~~~~
depbase=`echo src/playback.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -DHAVE_CONFIG_H -I. -imacros ./config.h -Wall --param inline-unit-growth=300 -O3 -g -MT src/playback.o -MD -MP -MF $depbase.Tpo -c -o src/playback.o src/playback.cpp &&\
mv -f $depbase.Tpo $depbase.Po
In file included from src/defs.h:109,
from src/playback.cpp:34:
src/ip_address.h:120:50: warning: ‘template<class _Arg, class _Result> struct std::unary_function’ is deprecated [-Wdeprecated-declarations]
120 | template <> struct hash<IPAddress> : public std::unary_function<IPAddress, int> {
| ^~~~~~~~~~~~~~
In file included from /usr/include/c++/13/string:49,
from src/playback.cpp:30:
/usr/include/c++/13/bits/stl_function.h:117:12: note: declared here
117 | struct unary_function
| ^~~~~~~~~~~~~~
src/ip_address.h:137:42: warning: ‘template<class _Arg1, class _Arg2, class _Result> struct std::binary_function’ is deprecated [-Wdeprecated-declarations]
137 | struct equal_to<IPAddress> : public std::binary_function<IPAddress, IPAddress,
| ^~~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_function.h:131:12: note: declared here
131 | struct binary_function
| ^~~~~~~~~~~~~~~
src/defs.h:604:64: warning: ‘template<class _Arg, class _Result> struct std::unary_function’ is deprecated [-Wdeprecated-declarations]
604 | template <> struct hash<struct sockaddr_store_t> : public std::unary_function<struct sockaddr_store_t, int> {
| ^~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_function.h:117:12: note: declared here
117 | struct unary_function
| ^~~~~~~~~~~~~~
src/defs.h:626:21: warning: ‘template<class _Arg1, class _Arg2, class _Result> struct std::binary_function’ is deprecated [-Wdeprecated-declarations]
626 | public std::binary_function<struct sockaddr_store_t,
| ^~~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_function.h:131:12: note: declared here
131 | struct binary_function
| ^~~~~~~~~~~~~~~
depbase=`echo src/server.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -DHAVE_CONFIG_H -I. -imacros ./config.h -Wall --param inline-unit-growth=300 -O3 -g -MT src/server.o -MD -MP -MF $depbase.Tpo -c -o src/server.o src/server.cpp &&\
mv -f $depbase.Tpo $depbase.Po
In file included from src/defs.h:109,
from src/server.h:33,
from src/server.cpp:30:
src/ip_address.h:120:50: warning: ‘template<class _Arg, class _Result> struct std::unary_function’ is deprecated [-Wdeprecated-declarations]
120 | template <> struct hash<IPAddress> : public std::unary_function<IPAddress, int> {
| ^~~~~~~~~~~~~~
In file included from /usr/include/c++/13/bits/hashtable.h:37,
from /usr/include/c++/13/bits/unordered_map.h:33,
from /usr/include/c++/13/unordered_map:41,
from src/defs.h:74:
/usr/include/c++/13/bits/stl_function.h:117:12: note: declared here
117 | struct unary_function
| ^~~~~~~~~~~~~~
src/ip_address.h:137:42: warning: ‘template<class _Arg1, class _Arg2, class _Result> struct std::binary_function’ is deprecated [-Wdeprecated-declarations]
137 | struct equal_to<IPAddress> : public std::binary_function<IPAddress, IPAddress,
| ^~~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_function.h:131:12: note: declared here
131 | struct binary_function
| ^~~~~~~~~~~~~~~
src/defs.h:604:64: warning: ‘template<class _Arg, class _Result> struct std::unary_function’ is deprecated [-Wdeprecated-declarations]
604 | template <> struct hash<struct sockaddr_store_t> : public std::unary_function<struct sockaddr_store_t, int> {
| ^~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_function.h:117:12: note: declared here
117 | struct unary_function
| ^~~~~~~~~~~~~~
src/defs.h:626:21: warning: ‘template<class _Arg1, class _Arg2, class _Result> struct std::binary_function’ is deprecated [-Wdeprecated-declarations]
626 | public std::binary_function<struct sockaddr_store_t,
| ^~~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_function.h:131:12: note: declared here
131 | struct binary_function
| ^~~~~~~~~~~~~~~
depbase=`echo src/sockperf.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -DHAVE_CONFIG_H -I. -imacros ./config.h -Wall --param inline-unit-growth=300 -O3 -g -MT src/sockperf.o -MD -MP -MF $depbase.Tpo -c -o src/sockperf.o src/sockperf.cpp &&\
mv -f $depbase.Tpo $depbase.Po
In file included from src/defs.h:109,
from src/common.h:35,
from src/sockperf.cpp:95:
src/ip_address.h:120:50: warning: ‘template<class _Arg, class _Result> struct std::unary_function’ is deprecated [-Wdeprecated-declarations]
120 | template <> struct hash<IPAddress> : public std::unary_function<IPAddress, int> {
| ^~~~~~~~~~~~~~
In file included from /usr/include/c++/13/string:49,
from /usr/include/c++/13/bitset:52,
from /usr/include/c++/13/regex:40,
from src/sockperf.cpp:91:
/usr/include/c++/13/bits/stl_function.h:117:12: note: declared here
117 | struct unary_function
| ^~~~~~~~~~~~~~
src/ip_address.h:137:42: warning: ‘template<class _Arg1, class _Arg2, class _Result> struct std::binary_function’ is deprecated [-Wdeprecated-declarations]
137 | struct equal_to<IPAddress> : public std::binary_function<IPAddress, IPAddress,
| ^~~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_function.h:131:12: note: declared here
131 | struct binary_function
| ^~~~~~~~~~~~~~~
src/defs.h:604:64: warning: ‘template<class _Arg, class _Result> struct std::unary_function’ is deprecated [-Wdeprecated-declarations]
604 | template <> struct hash<struct sockaddr_store_t> : public std::unary_function<struct sockaddr_store_t, int> {
| ^~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_function.h:117:12: note: declared here
117 | struct unary_function
| ^~~~~~~~~~~~~~
src/defs.h:626:21: warning: ‘template<class _Arg1, class _Arg2, class _Result> struct std::binary_function’ is deprecated [-Wdeprecated-declarations]
626 | public std::binary_function<struct sockaddr_store_t,
| ^~~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_function.h:131:12: note: declared here
131 | struct binary_function
| ^~~~~~~~~~~~~~~
In file included from src/sockperf.cpp:99:
src/port_descriptor.h:57:51: warning: ‘template<class _Arg, class _Result> struct std::unary_function’ is deprecated [-Wdeprecated-declarations]
57 | struct hash<struct port_descriptor> : public std::unary_function<struct port_descriptor, int> {
| ^~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_function.h:117:12: note: declared here
117 | struct unary_function
| ^~~~~~~~~~~~~~
src/port_descriptor.h:64:55: warning: ‘template<class _Arg1, class _Arg2, class _Result> struct std::binary_function’ is deprecated [-Wdeprecated-declarations]
64 | struct equal_to<struct port_descriptor> : public std::binary_function<struct port_descriptor,
| ^~~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_function.h:131:12: note: declared here
131 | struct binary_function
| ^~~~~~~~~~~~~~~
depbase=`echo src/ticks.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -DHAVE_CONFIG_H -I. -imacros ./config.h -Wall --param inline-unit-growth=300 -O3 -g -MT src/ticks.o -MD -MP -MF $depbase.Tpo -c -o src/ticks.o src/ticks.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/tls.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -DHAVE_CONFIG_H -I. -imacros ./config.h -Wall --param inline-unit-growth=300 -O3 -g -MT src/tls.o -MD -MP -MF $depbase.Tpo -c -o src/tls.o src/tls.cpp &&\
mv -f $depbase.Tpo $depbase.Po
In file included from src/defs.h:109,
from src/common.h:35,
from src/tls.cpp:34:
src/ip_address.h:120:50: warning: ‘template<class _Arg, class _Result> struct std::unary_function’ is deprecated [-Wdeprecated-declarations]
120 | template <> struct hash<IPAddress> : public std::unary_function<IPAddress, int> {
| ^~~~~~~~~~~~~~
In file included from /usr/include/c++/13/string:49,
from src/tls.cpp:32:
/usr/include/c++/13/bits/stl_function.h:117:12: note: declared here
117 | struct unary_function
| ^~~~~~~~~~~~~~
src/ip_address.h:137:42: warning: ‘template<class _Arg1, class _Arg2, class _Result> struct std::binary_function’ is deprecated [-Wdeprecated-declarations]
137 | struct equal_to<IPAddress> : public std::binary_function<IPAddress, IPAddress,
| ^~~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_function.h:131:12: note: declared here
131 | struct binary_function
| ^~~~~~~~~~~~~~~
src/defs.h:604:64: warning: ‘template<class _Arg, class _Result> struct std::unary_function’ is deprecated [-Wdeprecated-declarations]
604 | template <> struct hash<struct sockaddr_store_t> : public std::unary_function<struct sockaddr_store_t, int> {
| ^~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_function.h:117:12: note: declared here
117 | struct unary_function
| ^~~~~~~~~~~~~~
src/defs.h:626:21: warning: ‘template<class _Arg1, class _Arg2, class _Result> struct std::binary_function’ is deprecated [-Wdeprecated-declarations]
626 | public std::binary_function<struct sockaddr_store_t,
| ^~~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_function.h:131:12: note: declared here
131 | struct binary_function
| ^~~~~~~~~~~~~~~
depbase=`echo src/vma-xlio-redirect.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -DHAVE_CONFIG_H -I. -imacros ./config.h -Wall --param inline-unit-growth=300 -O3 -g -MT src/vma-xlio-redirect.o -MD -MP -MF $depbase.Tpo -c -o src/vma-xlio-redirect.o src/vma-xlio-redirect.cpp &&\
mv -f $depbase.Tpo $depbase.Po
g++ -Wall --param inline-unit-growth=300 -O3 -g -rdynamic -o sockperf src/aopt.o src/client.o src/common.o src/defs.o src/iohandlers.o src/ip_address.o src/message.o src/os_abstract.o src/packet.o src/playback.o src/server.o src/sockperf.o src/ticks.o src/tls.o src/vma-xlio-redirect.o
make[2]: Leaving directory '/home/ubuntu/sockperf'
make[1]: Leaving directory '/home/ubuntu/sockperf'
ubuntu@oci-ubuntu:~/sockperf$
ubuntu@oci-ubuntu:~/sockperf$
ubuntu@oci-ubuntu:~/sockperf$
ubuntu@oci-ubuntu:~/sockperf$ sudo make install
make[1]: Entering directory '/home/ubuntu/sockperf'
make[2]: Entering directory '/home/ubuntu/sockperf'
/usr/bin/mkdir -p '/bin'
/usr/bin/install -c sockperf '/bin'
/usr/bin/mkdir -p '/share/doc/sockperf'
/usr/bin/install -c -m 644 README.md authors news sockperf-version copying '/share/doc/sockperf'
make[2]: Leaving directory '/home/ubuntu/sockperf'
make[1]: Leaving directory '/home/ubuntu/sockperf'
● 3.インストール確認
・ Version
ubuntu@oci-ubuntu:~/sockperf$ sockperf --version
sockperf, version 3.10-29.git91b10ca095ea
compiled Nov 14 2024, 03:53:36
Copyright (C) 2011-2024 Mellanox Technologies Ltd.
SockPerf is open source software, see http://github.com/mellanox/sockperf
```
**・ Help**
```
ubuntu@oci-ubuntu:~/sockperf$ sockperf --help
sockperf is a tool for testing network latency and throughput.
version 3.10-29.git91b10ca095ea
Usage: sockperf <subcommand> [options] [args]
Type: 'sockperf <subcommand> --help' for help on a specific subcommand.
Type: 'sockperf --version' to see the program version number.
Available subcommands:
help (h ,?) Display list of supported commands.
under-load (ul) Run sockperf client for latency under load test.
ping-pong (pp) Run sockperf client for latency test in ping pong mode.
playback (pb) Run sockperf client for latency test using playback of predefined traffic, based on timeline and message size.
throughput (tp) Run sockperf client for one way throughput test.
server (sr) Run sockperf as a server.
For additional information visit our website http://github.com/mellanox/sockperf , see README file, or Type 'sockperf <subcommand> --help'.
● Sockperf TCP Test
#sockperf sr --tcp -i <ip of="" local="" host=""> -p <unused server="" port="">
#sockperf ping-pong -i <ip of="" destination="" host=""> --tcp -t 300 -p <destination server="" port=""> --full-rtt
・Server(受信)側実行
ubuntu@ip-10-1-1-30:~/sockperf$ sudo ./sockperf sr --tcp -i 10.1.1.30 -p 15000
sockperf: == version #3.10-29.git91b10ca095ea ==
sockperf: [SERVER] listen on:
[ 0] IP = 10.1.1.30 PORT = 15000 # TCP
sockperf: Warmup stage (sending a few dummy messages)...
sockperf: [tid 5197] using recvfrom() to block on socket(s)
・ Client(送信)側実行
-tオプションを使用して 60秒間の 平均往復遅延時間を取得
ubuntu@oci-ubuntu:~/sockperf$ sockperf ping-pong -i 10.1.1.30 --tcp -t 60 -p 15000 --full-rtt
sockperf: == version #3.10-29.git91b10ca095ea ==
sockperf[CLIENT] send on:sockperf: using recvfrom() to block on socket(s)
[ 0] IP = 10.1.1.30 PORT = 15000 # TCP
sockperf: Warmup stage (sending a few dummy messages)...
sockperf: Starting test...
sockperf: Test end (interrupted by timer)
sockperf: Test ended
sockperf: [Total Run] RunTime=60.000 sec; Warm up time=400 msec; SentMessages=82791; ReceivedMessages=82790
sockperf: ========= Printing statistics for Server No: 0
sockperf: [Valid Duration] RunTime=59.550 sec; SentMessages=82179; ReceivedMessages=82179
sockperf: ====> avg-rtt=724.458 (std-dev=24.056, mean-ad=17.475, median-ad=17.477, siqr=12.045, cv=0.033, std-error=0.084, 99.0% ci=[724.242, 724.674])
sockperf: # dropped messages = 0; # duplicated messages = 0; # out-of-order messages = 0
sockperf: Summary: Round trip is 724.458 usec
sockperf: Total 82179 observations; each percentile contains 821.79 observations
sockperf: ---> <MAX> observation = 1010.452
sockperf: ---> percentile 99.999 = 928.940
sockperf: ---> percentile 99.990 = 899.665
sockperf: ---> percentile 99.900 = 841.846
sockperf: ---> percentile 99.000 = 798.392
sockperf: ---> percentile 90.000 = 759.073
sockperf: ---> percentile 75.000 = 734.482
sockperf: ---> percentile 50.000 = 720.694
sockperf: ---> percentile 25.000 = 710.391
sockperf: ---> <MIN> observation = 635.902
■ おまけ
● SockPerf 用 Firewall設定
・ Firewall 15000ポート解放
Sockperfで使用するデフォルト・ポート 15000 TCP/UDPを解放します。
sudo ufw allow 15000/tcp
sudo ufw allow 15000/udp
sudo ufw status numbered | grep 15000
sudo iptables -I INPUT 5 -p tcp --dport 15000 -j ACCEPT
sudo iptables -I INPUT 5 -p udp --dport 15000 -j ACCEPT
sudo iptables -L | grep 15000
ACCEPT tcp -- anywhere anywhere tcp dpt:15000
ACCEPT tcp -- anywhere anywhere udp dpt:15000
sudo firewall-cmd --permanent --add-port=15000/tcp
sudo firewall-cmd --permanent --add-port=15000/udp
sudo firewall-cmd --reload
sudo firewall-cmd --list-ports | grep 15000
15000/tcp 15000/udp
■ 参考
・ Mellanox/sockperf: Network Benchmarking Utility
・ Test network latency
・ Azure VM 間のネットワーク待機時間をテストする
・ SockPerf のインストール
・ OCI-Azure Interconnectを使用したネットワーク・レイテンシとベスト・プラクティス