Vector Optimized Library of Kernels  3.0.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
17 extern "C" {
18 #endif
19 
20 int 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 
25 int 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*/
int volk_rank_archs(const char *kern_name, const char *impl_names[], const int *impl_deps, const bool *alignment, size_t n_impls, const bool align)
Definition: volk_rank_archs.c:35
int volk_get_index(const char *impl_names[], const size_t n_impls, const char *impl_name)
Definition: volk_rank_archs.c:18