2014-11-14 18:26:12 +00:00
|
|
|
.\" Manpage for volk_gnsssdr_profile
|
2020-02-08 00:20:02 +00:00
|
|
|
.\" SPDX-License-Identifier: GPL-3.0-or-later
|
|
|
|
.\" SPDX-FileCopyrightText: Carles Fernandez-Prades <carles.fernandez(at)cttc.es>
|
2014-11-14 18:26:12 +00:00
|
|
|
.\" Contact carles.fernandez@cttc.es to correct errors or typos.
|
2021-08-23 12:28:30 +00:00
|
|
|
.TH volk_gnsssdr_profile 1 "23 Aug 2021" "0.0.15" "volk_gnsssdr_profile man page"
|
2014-11-14 18:26:12 +00:00
|
|
|
.SH NAME
|
2014-11-15 19:40:58 +00:00
|
|
|
\fBvolk_gnsssdr_profile\fR \- Profiler application for libvolk_gnsssdr functions.
|
2014-11-14 18:26:12 +00:00
|
|
|
.SH SYNOPSIS
|
2014-11-15 19:40:58 +00:00
|
|
|
\fBvolk_gnsssdr_profile\fR [OPTION]
|
2014-11-14 18:26:12 +00:00
|
|
|
.SH DESCRIPTION
|
2021-10-29 12:26:55 +00:00
|
|
|
The Vector-Optimized Library of Kernels of GNSS-SDR (VOLK_GNSSSDR) is a software
|
|
|
|
library that provides developers with an interface to use Single Input -
|
|
|
|
Multiple Data (SIMD) instructions, which are of special interest for operations
|
|
|
|
that are in the receiver's critical path of the processing load.
|
2014-11-14 18:26:12 +00:00
|
|
|
.TP
|
2021-10-29 12:26:55 +00:00
|
|
|
Processors providing SIMD instruction sets compute with multiple processing
|
|
|
|
elements that perform the same operation on multiple data points simultaneously,
|
|
|
|
thus exploiting data-level parallelism, an can be found in most modern desktop
|
|
|
|
and laptop personal computers. In a nutshell, VOLK_GNSSSDR implements in
|
|
|
|
assembly language optimized versions of computationally-intensive operations for
|
|
|
|
different processor architectures that are commonly found in modern computers.
|
|
|
|
In order to use the most optimized version for the specific processor(s) of the
|
|
|
|
host machine running the software receiver (that is, the implementation than
|
|
|
|
runs the fastest).
|
2014-11-14 18:26:12 +00:00
|
|
|
.TP
|
2021-10-29 12:26:55 +00:00
|
|
|
\fBvolk_gnsssdr_profile\fR is a program that tests all known VOLK_GNSSSDR
|
|
|
|
kernels (that is, basic processing components like adders, multipliers,
|
|
|
|
correlators, and much more) for each architecture supported by the host machine,
|
|
|
|
measuring their performance. When finished, the profiler writes to
|
|
|
|
$HOME/.volk_gnsssdr/volk_gnsssdr_config the best architecture for each
|
|
|
|
VOLK_GSSSDR function. This file is read when using a function to know the best
|
|
|
|
version to execute.
|
2014-11-14 18:26:12 +00:00
|
|
|
.SH OPTIONS
|
|
|
|
\fBvolk_gnsssdr_profile\fR takes the following options:
|
|
|
|
.TP
|
2014-11-15 19:40:58 +00:00
|
|
|
\fB-h\fR [ \fB--help\fR ] Print help message.
|
2014-11-14 18:26:12 +00:00
|
|
|
.TP
|
2014-11-15 19:40:58 +00:00
|
|
|
\fB-b\fR [ \fB--benchmark\fR ] [ \fB=arg(=1)\fR ] (\fB=0\fR) Run all kernels (benchmark mode).
|
2014-11-14 18:26:12 +00:00
|
|
|
.TP
|
2016-05-11 17:20:01 +00:00
|
|
|
\fB-t\fR [ \fB--tol\fR ] <arg> (\fB=9.99999997e-07\fR) Set the default error tolerance for tests.
|
|
|
|
.TP
|
|
|
|
\fB-v\fR [ \fB--vlen\fR ] <arg> (\fB=8111\fR) Set the default vector length for tests.
|
|
|
|
.TP
|
|
|
|
\fB-i\fR [ \fB--iter\fR ] <arg> (\fB=1987\fR) Set the default number of test iterations per kernel.
|
|
|
|
.TP
|
2014-11-15 19:40:58 +00:00
|
|
|
\fB-R\fR [ \fB--tests-regex\fR ] <arg> Run tests matching regular expression.
|
2014-11-14 18:26:12 +00:00
|
|
|
.TP
|
2016-05-11 17:20:01 +00:00
|
|
|
\fB-u\fR [ \fB--update\fR ] [ \fB=arg(=1)\fR ] (\fB=0\fR) Run only kernels missing from config; use -R to further restrict the candidates.
|
|
|
|
.TP
|
|
|
|
\fB-n\fR [ \fB--dry-run\fR ] [ \fB=arg(=1)\fR ] (\fB=0\fR) Dry run. Respect other options, but do not write to file.
|
|
|
|
.TP
|
2014-11-15 19:40:58 +00:00
|
|
|
\fB-j\fR [ \fB--json\fR ] \fI<arg>\fR JSON output file.
|
2014-11-14 18:26:12 +00:00
|
|
|
.SH SEE ALSO
|
2014-11-15 19:40:58 +00:00
|
|
|
.BR gnss-sdr (1)
|
|
|
|
\.TP
|
2018-05-09 18:20:57 +00:00
|
|
|
Check https://gnss\-sdr.org for more information.
|
2014-11-15 19:40:58 +00:00
|
|
|
.SH HISTORY
|
2021-10-29 12:26:55 +00:00
|
|
|
This library was originally developed by Andres Cecilia Luque in the framework
|
|
|
|
of the Summer of Code in Space program (SOCIS 2014) by the European Space Agency
|
|
|
|
(ESA), and then integrated into \fBgnss-sdr\fR. This software is based on the
|
|
|
|
VOLK library https://www.libvolk.org/
|
2014-11-14 18:26:12 +00:00
|
|
|
.SH BUGS
|
|
|
|
No known bugs.
|
|
|
|
.SH AUTHOR
|
2014-11-15 19:40:58 +00:00
|
|
|
Andres Cecilia Luque (a.cecilia.luque@gmail.com)
|
|
|
|
\.TP
|
2018-05-09 18:20:57 +00:00
|
|
|
Carles Fernandez-Prades (carles.fernandez@cttc.es)
|