Driver: no longer instantiating events when unnecessary ; general cleaning of the driver module

This commit is contained in:
Philippe Tillet
2015-12-21 18:43:05 -05:00
parent 05af3ccc10
commit f2c3aa0acb
12 changed files with 104 additions and 20 deletions

View File

@@ -42,6 +42,8 @@ class Buffer;
class CommandQueue;
class Context;
class Platform;
class Program;
class Kernel;
class ProgramCache;
class ISAACAPI backend
@@ -69,7 +71,18 @@ public:
DISABLE_MSVC_WARNING_C4251
static std::map<std::tuple<CommandQueue, expression_type, numeric_type>, ProgramCache * > cache_;
RESTORE_MSVC_WARNING_C4251
};
class ISAACAPI kernels
{
friend class backend;
public:
static void release();
static Kernel & get(Program const & program, std::string const & name);
private:
DISABLE_MSVC_WARNING_C4251
static std::map<std::tuple<Program, std::string>, Kernel * > cache_;
RESTORE_MSVC_WARNING_C4251
};
class ISAACAPI contexts