AUB CSRs to use a shared physical address allocator

This commit introduces AUB-specific control class to execution environment.

Change-Id: I525c9c93a4f10f769dbedb7d097674c35693f0b1
This commit is contained in:
Milczarek, Slawomir
2018-09-26 15:28:11 +02:00
committed by sys_ocldev
parent 6aab39fd9b
commit efdbde245a
11 changed files with 252 additions and 131 deletions

View File

@ -6,7 +6,7 @@
*/
#include "runtime/execution_environment/execution_environment.h"
#include "runtime/command_stream/aub_stream_provider.h"
#include "runtime/command_stream/aub_center.h"
#include "runtime/command_stream/command_stream_receiver.h"
#include "runtime/compiler_interface/compiler_interface.h"
#include "runtime/source_level_debugger/source_level_debugger.h"
@ -22,9 +22,9 @@ ExecutionEnvironment::ExecutionEnvironment() = default;
ExecutionEnvironment::~ExecutionEnvironment() = default;
extern CommandStreamReceiver *createCommandStream(const HardwareInfo *pHwInfo, ExecutionEnvironment &executionEnvironment);
void ExecutionEnvironment::initAubStreamProvider() {
if (!aubStreamProvider) {
aubStreamProvider.reset(new AubFileStreamProvider());
void ExecutionEnvironment::initAubCenter() {
if (!aubCenter) {
aubCenter.reset(new AubCenter());
}
}
void ExecutionEnvironment::initGmm(const HardwareInfo *hwInfo) {

View File

@ -13,7 +13,7 @@
#include <vector>
namespace OCLRT {
class AubStreamProvider;
class AubCenter;
class GmmHelper;
class CommandStreamReceiver;
class MemoryManager;
@ -35,7 +35,7 @@ class ExecutionEnvironment : public ReferenceTrackedObject<ExecutionEnvironment>
ExecutionEnvironment();
~ExecutionEnvironment() override;
void initAubStreamProvider();
void initAubCenter();
void initGmm(const HardwareInfo *hwInfo);
bool initializeCommandStreamReceiver(const HardwareInfo *pHwInfo, uint32_t deviceIndex);
void initializeMemoryManager(bool enable64KBpages, bool enableLocalMemory, uint32_t deviceIndex);
@ -47,7 +47,7 @@ class ExecutionEnvironment : public ReferenceTrackedObject<ExecutionEnvironment>
std::unique_ptr<OSInterface> osInterface;
std::unique_ptr<MemoryManager> memoryManager;
std::unique_ptr<AubStreamProvider> aubStreamProvider;
std::unique_ptr<AubCenter> aubCenter;
std::vector<std::unique_ptr<CommandStreamReceiver>> commandStreamReceivers;
std::unique_ptr<BuiltIns> builtins;
std::unique_ptr<CompilerInterface> compilerInterface;