-
Notifications
You must be signed in to change notification settings - Fork 20
/
Copy pathskylark.hpp
67 lines (55 loc) · 1.75 KB
/
skylark.hpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
#ifndef SKYLARK_HPP
#define SKYLARK_HPP
#include <boost/mpi.hpp>
#include <boost/random.hpp>
/*! \mainpage Skylark
*
* The immediate goal of this framework is to provide implementations
* of sketching-based NLA kernels on a distributed platform, and to broaden
* the classes of matrices for which these specific implementations work
* well.
*
* \section intro_sec Introduction
*
* This software stack provides sketching-based NLA kernels for more general
* data analysis and optimization applications; such tasks have significantly
* different input matrices and performance criteria than arise in the more
* traditional scientific computing applications.
* The crucial NLA kernels to be implemented include regression and low-rank
* approximations of matrices, akin to the Singular Value Decomposition
* (SVD).
*
* Additionally this library provides a simple distributed Python interface.
*
* \section req_sec Requirements
*
* The framework requires the following dependencies:
*
* - Boost
* - Python
* - Elemental
* - BLAS/LAPACK
* - FFTW (optional, required for fast transformations)
*
* See the INSTALL file for build instructions.
*/
/** TODO: Add #ifdef guard */
#include <El.hpp>
#if SKYLARK_HAVE_COMBBLAS
#include <CombBLAS.h>
#endif
/** Include all the configuration information */
#include "config.h"
/** Include all the utility functions */
#include "utility/utility.hpp"
/** Include the base of the library */
#include "base/base.hpp"
/** Include all the sketching primitives */
#include "sketch/sketch.hpp"
/** Include all basic algorithms provided */
#include "algorithms/algorithms.hpp"
/** Include all NLA routines */
#include "nla/nla.hpp"
/** Include all ML/Data-mining routines */
#include "ml/ml.hpp"
#endif // SKYLARK_HPP