summaryrefslogtreecommitdiff
path: root/src/routine.hpp
diff options
context:
space:
mode:
authorIvan Shapovalov <intelfx@intelfx.name>2016-11-26 20:53:42 +0300
committerIvan Shapovalov <intelfx@intelfx.name>2017-01-24 11:56:15 +0300
commit5bcd92f2974d94e8add31816d3b9d48a42289500 (patch)
tree51b24e302a08d62058311ead32ab626ce4c11263 /src/routine.hpp
parente943fe77d64f42ed1e57c9919de8ca6787760f2b (diff)
Routine, Cache: generalize, reduce amount of copying in fast path
Implement a generalized Cache<K, V>. Two variants are provided: the first one is based on std::map, using C++14-specific transparent std::less<> and generalized std::map::find() to allow searching by tuple of references. The second one is based on std::vector and O(n) lookup, but remains C++11-compliant.
Diffstat (limited to 'src/routine.hpp')
-rw-r--r--src/routine.hpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/routine.hpp b/src/routine.hpp
index 2d8b2415..8e9fd54d 100644
--- a/src/routine.hpp
+++ b/src/routine.hpp
@@ -57,6 +57,9 @@ class Routine {
// OpenCL device properties
const std::string device_name_;
+ // Compiled program (either retrieved from cache or compiled in slow path)
+ Program program_;
+
// Connection to the database for all the device-specific parameters
const Database db_;
};