--- perftest-1.2-OFED-1.4.2.orig/debian/changelog +++ perftest-1.2-OFED-1.4.2/debian/changelog @@ -0,0 +1,20 @@ +perftest (1.2-OFED-1.4.2-2ubuntu1) trusty; urgency=medium + + * Enable building on all Linux architectures (LP: #1414818) + * Backport commit a589682e90aefaa2c9ab03a3e1426b0f7c1a5eb2 + from upstream to sort the build on aarch64 (LP: #1470160) + + -- Adam Conrad Wed, 15 Jul 2015 07:12:32 -0600 + +perftest (1.2-OFED-1.4.2-2) unstable; urgency=low + + * FTBFS: get_clock.h:76:23: error: asm/timex.h: No such file or + directory (Closes: #560264) + + -- Benoit Mortier Mon, 21 Dec 2009 00:14:15 +0100 + +perftest (1.2-OFED-1.4.2-1) unstable; urgency=low + + * Initial release (Closes: #539829) + + -- Benoit Mortier Wed, 21 Oct 2009 11:32:00 +0100 --- perftest-1.2-OFED-1.4.2.orig/debian/compat +++ perftest-1.2-OFED-1.4.2/debian/compat @@ -0,0 +1 @@ +7 --- perftest-1.2-OFED-1.4.2.orig/debian/control +++ perftest-1.2-OFED-1.4.2/debian/control @@ -0,0 +1,18 @@ +Source: perftest +Section: net +Priority: extra +Maintainer: Ubuntu Developers +XSBC-Original-Maintainer: OFED and Debian Developement and Discussion +Uploaders: Benoit Mortier , Guy Coates , Mario Lang +Build-Depends: debhelper (>= 7), libibverbs-dev (>= 1.1.2), librdmacm-dev (>=1.0.8) +Standards-Version: 3.8.3 +Homepage: http://www.openfabrics.org + +Package: perftest +Architecture: linux-any +Depends: ${shlibs:Depends}, ${misc:Depends}, libibverbs1 (>= 1.1.2), librdmacm1 (>=1.0.8) +Description: Infiniband verbs performance tests + This is a collection of tests written using Infiniband verbs intended for + use as a performance micro-benchmark. The tests can measure the latency + and bandwidth of Infiniband fabrics. + --- perftest-1.2-OFED-1.4.2.orig/debian/copyright +++ perftest-1.2-OFED-1.4.2/debian/copyright @@ -0,0 +1,53 @@ +This package was debianized by Guy Coates on +Thu, 08 Jan 2009 13:14:21 +0000. + +It was downloaded from http://www.openfabrics.org/downloads/OFED/ofed-1.4/OFED-1.4.tgz + +Upstream Authors: + + Oren Meron, orenmeron@dev.mellanox.co.il + Michael S. Tsirkin + Grant Grundler + + +Copyright: + +Copyright (c) 2005 Topspin Communications. All rights reserved. +Copyright (c) 2005-2006 Mellanox Technologies Ltd. All rights reserved. +Copyright (c) 2005 Hewlett Packard, Inc (Grant Grundler) + + +License: + +This software is available to you under a choice of one of two +licenses. You may choose to be licensed under the terms of the GNU +General Public License (GPL) Version 2, available from the file +/usr/share/common-licenses/GPL-2 on your Debian system, or the +OpenIB.org BSD license below: + + Redistribution and use in source and binary forms, with or + without modification, are permitted provided that the following + conditions are met: + + - Redistributions of source code must retain the above + copyright notice, this list of conditions and the following + disclaimer. + + - Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials + provided with the distribution. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS +BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN +ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +The Debian packaging is Copyright (C) 2009, Genome Research Ltd and +is licensed under the GPL, see `/usr/share/common-licenses/GPL'. + --- perftest-1.2-OFED-1.4.2.orig/debian/dirs +++ perftest-1.2-OFED-1.4.2/debian/dirs @@ -0,0 +1,2 @@ +usr/bin + --- perftest-1.2-OFED-1.4.2.orig/debian/docs +++ perftest-1.2-OFED-1.4.2/debian/docs @@ -0,0 +1 @@ +README --- perftest-1.2-OFED-1.4.2.orig/debian/ib_clock_test.1 +++ perftest-1.2-OFED-1.4.2/debian/ib_clock_test.1 @@ -0,0 +1,15 @@ +.TH ib_clock_test 1 "February 23, 2007" "perftest" "User Commands" + +.SH NAME +ib_clock_test \- Test the accuracy of the system clock. + +.SH SYNOPSIS +.B ib_clock_test + +.SH DESCRIPTION +This program does not currently have any documentation. This manpage +is a placeholder. Please see the package documentation in +/usr/share/doc/ + +.SH AUTHOR +Guy Coates < gmpc@sanger.ac.uk > \ No newline at end of file --- perftest-1.2-OFED-1.4.2.orig/debian/ib_rdma_bw.1 +++ perftest-1.2-OFED-1.4.2/debian/ib_rdma_bw.1 @@ -0,0 +1,52 @@ +.TH ib_rdma_bw 1 "February 20, 2008" "perftest" "User Commands" + +.SH NAME +ib_rdma_bw \- RDMA bandwidth test + +.SH SYNOPSIS +.B ib_rdma_bw [ +.I options +.B ] [ +.I server IP address +.B ] + +.SH DESCRIPTION +This program tests the latency of RMDA write transactions. + +.SH OPTIONS +.TP +.B -p, --port= +listen on/connect to port (default: 18515) +.TP +.B -d, --ib-dev= +use IB device (default: first device found) +.TP +.B -i, --ib-port= +use port of IB device (default: 1) +.TP +.B -s, --size= +size of message to exchange (default: 65536) +.TP +.B -t, --tx-depth= +size of tx queue (default 100) +.TP +.B -n, --iters= +number of exchanges (at least 2, default: 1000) +.TP +.B -b, --bidrectional +measure bidirectional bandwidth (default unidirectional) +.TP +.B -c, --cma +use RDMA CM +.TP +.B -V, --version +display version number + + +.SH AUTHOR +.TP +Guy Coates < gmpc@sanger.ac.uk > + + + + --- perftest-1.2-OFED-1.4.2.orig/debian/ib_rdma_lat.1 +++ perftest-1.2-OFED-1.4.2/debian/ib_rdma_lat.1 @@ -0,0 +1,61 @@ +.TH ib_rdma_lat 1 "February 20, 2008" "perftest" "User Commands" + +.SH NAME +ib_rdma_lat \- RDM latency test + +.SH SYNOPSIS +.B ib_rdma_lat [ +.I options +.B ] [ +.I server IP address +.B ] + +.SH DESCRIPTION +This program tests the latency of RMDA write transactions. + +.SH OPTIONS +.TP +.B -p, --port= +listen on/connect to port (default: 18515) +.TP +.B -d, --ib-dev= +use IB device (default: first device found) +.TP +.B -i, --ib-port= +use port of IB device (default: 1) +.TP +.B -s, --size= +size of message to exchange (default: 65536) +.TP +.B -t, --tx-depth= +size of tx queue (default 100) +.TP +.B -n, --iters= +number of exchanges (at least 2, default: 1000) +.TP +.B -I, --inline_size= +max size of message to be sent in inline mode (default 400) +.TP +.B -C, --report-cycles +report times in cpu cycle units (default microseconds) +.TP +.B -H, --report-histogram +print out all results (default print summary only) +.TP +.B -U, --report-unsorted +(implies -H) print out unsorted results (default sorted) +.TP +.B -c, --cma +use the RDMA CMA to setup the RDMA connection +.TP +.B -V, --version +display version number + + +.SH AUTHOR +.TP +Guy Coates < gmpc@sanger.ac.uk > + + + + --- perftest-1.2-OFED-1.4.2.orig/debian/ib_read_bw.1 +++ perftest-1.2-OFED-1.4.2/debian/ib_read_bw.1 @@ -0,0 +1,61 @@ +.TH ib_read_bw 1 "February 20, 2008" "perftest" "User Commands" + +.SH NAME +ib_read_bw \- RDMA read bandwidth test + +.SH SYNOPSIS +.B ib_read_bw [ +.I options +.B ] [ +.I server IP address +.B ] + +.SH DESCRIPTION +This program tests the bandwidth of RMDA read transactions. + +.SH OPTIONS +.TP +.B -p, --port= +listen on/connect to port (default: 18515) +.TP +.B -m, --mtu= +mtu size (default: 1024) +.TP +.B -d, --ib-dev= +use IB device (default: first device found) +.TP +.B -i, --ib-port= +use port of IB device (default: 1) +.TP +.B -s, --size= +size of message to exchange (default: 1) +.TP +.B -a, --all +run sizes from 2 till 2^23 +.TP +.B -t, --tx-depth= +size of tx queue (default: 50) +.TP +.B -n, --iters= +number of exchanges (at least 100, default: 1000) +.TP +.B -C, --report-cycles +report times in cpu cycle units (default: microseconds) +.TP +.B -H, --report-histogram +print out all results (default: print summary only) +.TP +.B -U, --report-unsorted +(implies -H) print out unsorted results (default: sorted) +.TP +.B -V, --version +display version number + + +.SH AUTHOR +.TP +Guy Coates < gmpc@sanger.ac.uk > + + + + --- perftest-1.2-OFED-1.4.2.orig/debian/ib_read_lat.1 +++ perftest-1.2-OFED-1.4.2/debian/ib_read_lat.1 @@ -0,0 +1,61 @@ +.TH ib_read_lat 1 "February 20, 2008" "perftest" "User Commands" + +.SH NAME +ib_read_lat \- RDMA write latency test + +.SH SYNOPSIS +.B ib_read_lat [ +.I options +.B ] [ +.I server IP address +.B ] + +.SH DESCRIPTION +This program tests the latency of RMDA write transactions. + +.SH OPTIONS +.TP +.B -p, --port= +listen on/connect to port (default: 18515) +.TP +.B -m, --mtu= +mtu size (default: 1024) +.TP +.B -d, --ib-dev= +use IB device (default: first device found) +.TP +.B -i, --ib-port= +use port of IB device (default: 1) +.TP +.B -s, --size= +size of message to exchange (default: 1) +.TP +.B -a, --all +run sizes from 2 till 2^23 +.TP +.B -t, --tx-depth= +size of tx queue (default: 50) +.TP +.B -n, --iters= +number of exchanges (at least 100, default: 1000) +.TP +.B -C, --report-cycles +report times in cpu cycle units (default: microseconds) +.TP +.B -H, --report-histogram +print out all results (default: print summary only) +.TP +.B -U, --report-unsorted +(implies -H) print out unsorted results (default: sorted) +.TP +.B -V, --version +display version number + + +.SH AUTHOR +.TP +Guy Coates < gmpc@sanger.ac.uk > + + + + --- perftest-1.2-OFED-1.4.2.orig/debian/ib_send_bw.1 +++ perftest-1.2-OFED-1.4.2/debian/ib_send_bw.1 @@ -0,0 +1,61 @@ +.TH ib_send_bw 1 "February 20, 2008" "perftest" "User Commands" + +.SH NAME +ib_send_bw \- RDMA send bandwidth test + +.SH SYNOPSIS +.B ib_send_bw [ +.I options +.B ] [ +.I server IP address +.B ] + +.SH DESCRIPTION +This program tests the bandwidth of RMDA send transactions. + +.SH OPTIONS +.TP +.B -p, --port= +listen on/connect to port (default: 18515) +.TP +.B -m, --mtu= +mtu size (default: 1024) +.TP +.B -d, --ib-dev= +use IB device (default: first device found) +.TP +.B -i, --ib-port= +use port of IB device (default: 1) +.TP +.B -s, --size= +size of message to exchange (default: 1) +.TP +.B -a, --all +run sizes from 2 till 2^23 +.TP +.B -t, --tx-depth= +size of tx queue (default: 50) +.TP +.B -n, --iters= +number of exchanges (at least 100, default: 1000) +.TP +.B -C, --report-cycles +report times in cpu cycle units (default: microseconds) +.TP +.B -H, --report-histogram +print out all results (default: print summary only) +.TP +.B -U, --report-unsorted +(implies -H) print out unsorted results (default: sorted) +.TP +.B -V, --version +display version number + + +.SH AUTHOR +.TP +Guy Coates < gmpc@sanger.ac.uk > + + + + --- perftest-1.2-OFED-1.4.2.orig/debian/ib_send_lat.1 +++ perftest-1.2-OFED-1.4.2/debian/ib_send_lat.1 @@ -0,0 +1,61 @@ +.TH ib_send_lat 1 "February 20, 2008" "perftest" "User Commands" + +.SH NAME +ib_send_lat \- RDMA send latency test + +.SH SYNOPSIS +.B ib_send_lat [ +.I options +.B ] [ +.I server IP address +.B ] + +.SH DESCRIPTION +This program tests the latency of RMDA send transactions. + +.SH OPTIONS +.TP +.B -p, --port= +listen on/connect to port (default: 18515) +.TP +.B -m, --mtu= +mtu size (default: 1024) +.TP +.B -d, --ib-dev= +use IB device (default: first device found) +.TP +.B -i, --ib-port= +use port of IB device (default: 1) +.TP +.B -s, --size= +size of message to exchange (default: 1) +.TP +.B -a, --all +run sizes from 2 till 2^23 +.TP +.B -t, --tx-depth= +size of tx queue (default: 50) +.TP +.B -n, --iters= +number of exchanges (at least 100, default: 1000) +.TP +.B -C, --report-cycles +report times in cpu cycle units (default: microseconds) +.TP +.B -H, --report-histogram +print out all results (default: print summary only) +.TP +.B -U, --report-unsorted +(implies -H) print out unsorted results (default: sorted) +.TP +.B -V, --version +display version number + + +.SH AUTHOR +.TP +Guy Coates < gmpc@sanger.ac.uk > + + + + --- perftest-1.2-OFED-1.4.2.orig/debian/ib_write_bw.1 +++ perftest-1.2-OFED-1.4.2/debian/ib_write_bw.1 @@ -0,0 +1,58 @@ +.TH ib_write_bw 1 "February 20, 2008" "perftest" "User Commands" + +.SH NAME +ib_write_bw \- RDMA write bandwidth test + +.SH SYNOPSIS +.B ib_write_bw [ +.I options +.B ] [ +.I server IP address +.B ] + +.SH DESCRIPTION +This program tests the bandwidth of RMDA write transactions. + +.SH OPTIONS +.TP +.B -p, --port= +listen on/connect to port (default: 18515) +.TP +.B -m, --mtu= +mtu size (default: 1024) +.TP +.B -d, --ib-dev= +use IB device (default: first device found) +.TP +.B -i, --ib-port= +use port of IB device (default: 1) +.TP +.B -s, --size= +size of message to exchange (default: 1) +.TP +.B -a, --all +run sizes from 2 till 2^23 +.TP +.B -t, --tx-depth= +size of tx queue (default: 50) +.TP +.B -n, --iters= +number of exchanges (at least 100, default: 1000) +.TP +.B -C, --report-cycles +report times in cpu cycle units (default: microseconds) +.TP +.B -H, --report-histogram +print out all results (default: print summary only) +.TP +.B -U, --report-unsorted +(implies -H) print out unsorted results (default: sorted) +.TP +.B -V, --version +display version number + + +.SH AUTHOR +.TP +Guy Coates < gmpc@sanger.ac.uk > + --- perftest-1.2-OFED-1.4.2.orig/debian/ib_write_bw_postlist.1 +++ perftest-1.2-OFED-1.4.2/debian/ib_write_bw_postlist.1 @@ -0,0 +1,67 @@ +.TH ib_write_bw_postlist 1 "February 20, 2008" "perftest" "User Commands" + +.SH NAME +ib_write_bw_postlist \- RDMA write post list bandwidth test + +.SH SYNOPSIS +.B ib_write_bw_postlist [ +.I options +.B ] [ +.I server IP address +.B ] + +.SH DESCRIPTION +This program tests the bandwidth of RMDA write transactions. + +.SH OPTIONS +.TP +.B -p, --port= +listen on/connect to port (default 18515) +.TP +.B -d, --ib-dev= +use IB device (default first device found) +.TP +.B -i, --ib-port= +use port of IB device (default 1) +.TP +.B -c, --connection= +connection type RC/UC (default RC) +.TP +.B -m, --mtu= +mtu size (256 - 4096. default for hermon is 2048) +.TP +.B -g, --post= +number of posts for each qp in the chain (default tx_depth) +.TP +.B -q, --qp= +Num of qp's(default 1) +.TP +.B -s, --size= +size of message to exchange (default 65536) +.TP +.B -a, --all +Run sizes from 2 till 2^23 +.TP +.B -t, --tx-depth= +size of tx queue (default 100) +.TP +.B -n, --iters= +number of exchanges (at least 2, default 5000) +.TP +.B -I, --inline_size= +max size of message to be sent in inline mode (default 400) +.TP +.B -b, --bidirectional +measure bidirectional bandwidth (default unidirectional) +.TP +.B -V, --version +display version number +.TP +.B -F, --CPU-freq +do not fail even if cpufreq_ondemand module is loaded + + +.SH AUTHOR +.TP +Guy Coates < gmpc@sanger.ac.uk > + --- perftest-1.2-OFED-1.4.2.orig/debian/ib_write_lat.1 +++ perftest-1.2-OFED-1.4.2/debian/ib_write_lat.1 @@ -0,0 +1,61 @@ +.TH ib_write_lat 1 "February 20, 2008" "perftest" "User Commands" + +.SH NAME +ib_write_lat \- RDMA write latency test + +.SH SYNOPSIS +.B ib_write_lat [ +.I options +.B ] [ +.I server IP address +.B ] + +.SH DESCRIPTION +This program tests the latency of RMDA write transactions. + +.SH OPTIONS +.TP +.B -p, --port= +listen on/connect to port (default: 18515) +.TP +.B -m, --mtu= +mtu size (default: 1024) +.TP +.B -d, --ib-dev= +use IB device (default: first device found) +.TP +.B -i, --ib-port= +use port of IB device (default: 1) +.TP +.B -s, --size= +size of message to exchange (default: 1) +.TP +.B -a, --all +run sizes from 2 till 2^23 +.TP +.B -t, --tx-depth= +size of tx queue (default: 50) +.TP +.B -n, --iters= +number of exchanges (at least 100, default: 1000) +.TP +.B -C, --report-cycles +report times in cpu cycle units (default: microseconds) +.TP +.B -H, --report-histogram +print out all results (default: print summary only) +.TP +.B -U, --report-unsorted +(implies -H) print out unsorted results (default: sorted) +.TP +.B -V, --version +display version number + + +.SH AUTHOR +.TP +Guy Coates < gmpc@sanger.ac.uk > + + + + --- perftest-1.2-OFED-1.4.2.orig/debian/perftest.manpages +++ perftest-1.2-OFED-1.4.2/debian/perftest.manpages @@ -0,0 +1,10 @@ +debian/ib_read_bw.1 +debian/ib_read_lat.1 +debian/ib_send_bw.1 +debian/ib_send_lat.1 +debian/ib_write_bw.1 +debian/ib_write_lat.1 +debian/ib_clock_test.1 +debian/ib_write_bw_postlist.1 +debian/ib_rdma_bw.1 +debian/ib_rdma_lat.1 --- perftest-1.2-OFED-1.4.2.orig/debian/rules +++ perftest-1.2-OFED-1.4.2/debian/rules @@ -0,0 +1,82 @@ +#!/usr/bin/make -f +# -*- makefile -*- +# Sample debian/rules that uses debhelper. +# This file was originally written by Joey Hess and Craig Small. +# As a special exception, when this file is copied by dh-make into a +# dh-make output file, you may use that output file without restriction. +# This special exception was added by Craig Small in version 0.37 of dh-make. + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + + + + + +configure: configure-stamp +configure-stamp: + dh_testdir + # Add here commands to configure the package. + + touch configure-stamp + + +build: build-stamp + +build-stamp: configure-stamp + dh_testdir + + # Add here commands to compile the package. + $(MAKE) + #docbook-to-man debian/perftest.sgml > perftest.1 + + touch $@ + +clean: + dh_testdir + dh_testroot + rm -f build-stamp configure-stamp + + # Add here commands to clean up after the build process. + $(MAKE) clean + + -find $(CURDIR) -type d -name ".svn" -exec rm -rf {} \; + + dh_clean + +install: build + dh_testdir + dh_testroot + dh_prep + dh_installdirs + + # Add here commands to install the package into debian/perftest. +# $(MAKE) DESTDIR=$(CURDIR)/debian/perftest install + cp ib_* $(CURDIR)/debian/perftest/usr/bin + + +# Build architecture-independent files here. +binary-indep: install +# We have nothing to do by default. + +# Build architecture-dependent files here. +binary-arch: install + dh_testdir + dh_testroot + dh_installchangelogs + dh_installdocs + dh_installexamples +# dh_install + dh_installman + dh_link + dh_strip + dh_compress + dh_fixperms + dh_installdeb + dh_shlibdeps + dh_gencontrol + dh_md5sums + dh_builddeb + +binary: binary-indep binary-arch +.PHONY: build clean binary-indep binary-arch binary install configure --- perftest-1.2-OFED-1.4.2.orig/get_clock.c +++ perftest-1.2-OFED-1.4.2/get_clock.c @@ -175,7 +175,12 @@ double sample, proc, delta; sample = sample_get_cpu_mhz(); proc = proc_get_cpu_mhz(no_cpu_freq_fail); - + #ifdef __aarch64__ + if (proc < 1) //no cpu_freq info in /proc/cpuinfo + { + proc = sample; + } + #endif if (!proc || !sample) return 0; --- perftest-1.2-OFED-1.4.2.orig/get_clock.h +++ perftest-1.2-OFED-1.4.2/get_clock.h @@ -70,6 +70,16 @@ asm volatile ("mov %0=ar.itc" : "=r" (ret)); return ret; } +#elif defined(__aarch64__) + +typedef unsigned long cycles_t; +static inline cycles_t get_cycles() +{ + cycles_t cval; + asm volatile("isb" : : : "memory"); + asm volatile("mrs %0, cntvct_el0" : "=r" (cval)); + return cval; +} #else #warning get_cycles not implemented for this architecture: attempt asm/timex.h