Vector Optimized Library of Kernels 3.1.0
Architecture-tuned implementations of math kernels
volk_rank_archs.h
Go to the documentation of this file.
1/* -*- c++ -*- */
2/*
3 * Copyright 2011-2012 Free Software Foundation, Inc.
4 *
5 * This file is part of VOLK
6 *
7 * SPDX-License-Identifier: LGPL-3.0-or-later
8 */
9
10#ifndef INCLUDED_VOLK_RANK_ARCHS_H
11#define INCLUDED_VOLK_RANK_ARCHS_H
12
13#include <stdbool.h>
14#include <stdlib.h>
15
16#ifdef __cplusplus
17extern "C" {
18#endif
19
20int volk_get_index(const char* impl_names[], // list of implementations by name
21 const size_t n_impls, // number of implementations available
22 const char* impl_name // the implementation name to find
23);
24
25int volk_rank_archs(const char* kern_name, // name of the kernel to rank
26 const char* impl_names[], // list of implementations by name
27 const int* impl_deps, // requirement mask per implementation
28 const bool* alignment, // alignment status of each implementation
29 size_t n_impls, // number of implementations available
30 const bool align // if false, filter aligned implementations
31);
32
33#ifdef __cplusplus
34}
35#endif
36#endif /*INCLUDED_VOLK_RANK_ARCHS_H*/