summaryrefslogtreecommitdiff
path: root/src/utilities/compile.hpp
diff options
context:
space:
mode:
authorCedric Nugteren <web@cedricnugteren.nl>2017-11-19 20:05:15 +0100
committerGitHub <noreply@github.com>2017-11-19 20:05:15 +0100
commitda76d7ab81555452a1049eb1a6d130073427067d (patch)
tree92439d8bee44c34d63f288a73bdc372ba84dc42b /src/utilities/compile.hpp
parentc41d219ea42087c1b8d933b733b381005123cb91 (diff)
parentdefad3d1a249dd5f8c011cf28cc3c888d710d56a (diff)
Merge pull request #216 from CNugteren/integrated_tuner
Integrated tuner
Diffstat (limited to 'src/utilities/compile.hpp')
-rw-r--r--src/utilities/compile.hpp36
1 files changed, 36 insertions, 0 deletions
diff --git a/src/utilities/compile.hpp b/src/utilities/compile.hpp
new file mode 100644
index 00000000..0315d70c
--- /dev/null
+++ b/src/utilities/compile.hpp
@@ -0,0 +1,36 @@
+
+// =================================================================================================
+// This file is part of the CLBlast project. The project is licensed under Apache Version 2.0. This
+// project loosely follows the Google C++ styleguide and uses a tab-size of two spaces and a max-
+// width of 100 characters per line.
+//
+// Author(s):
+// Cedric Nugteren <www.cedricnugteren.nl>
+//
+// This file contains the CLBlast way to compile a kernel from source, used for the library and for
+// the auto-tuners.
+//
+// =================================================================================================
+
+#ifndef CLBLAST_UTILITIES_COMPILE_H_
+#define CLBLAST_UTILITIES_COMPILE_H_
+
+#include <string>
+#include <vector>
+
+#include "utilities/utilities.hpp"
+
+namespace clblast {
+// =================================================================================================
+
+// Compiles a program from source code
+Program CompileFromSource(const std::string &source_string, const Precision precision,
+ const std::string &routine_name,
+ const Device& device, const Context& context,
+ std::vector<std::string>& options, const bool silent = false);
+
+// =================================================================================================
+} // namespace clblast
+
+// CLBLAST_UTILITIES_COMPILE_H_
+#endif