Files
compute-runtime/runtime/memory_manager/address_mapper.h
Maciej Plewka 9e52684f5b Change namespace from OCLRT to NEO
Change-Id: If965c79d70392db26597aea4c2f3b7ae2820fe96
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2019-03-26 15:48:19 +01:00

35 lines
565 B
C++

/*
* Copyright (C) 2017-2019 Intel Corporation
*
* SPDX-License-Identifier: MIT
*
*/
#pragma once
#include <atomic>
#include <cstddef>
#include <vector>
namespace NEO {
class AddressMapper {
public:
AddressMapper();
~AddressMapper();
// maps to continuous region
uint32_t map(void *vm, size_t size);
// unmaps
void unmap(void *vm);
protected:
struct MapInfo {
void *vm;
size_t size;
uint32_t ggtt;
};
std::vector<MapInfo *> mapping;
std::atomic<uint32_t> nextPage;
};
} // namespace NEO