提交 502e6d5f 编写于 作者: J jmtao 提交者: Jiangtao Hu

perceotion: migrate blob/common/syncedmen

上级 cb77516e
......@@ -2,6 +2,29 @@ load("//tools:cpplint.bzl", "cpplint")
package(default_visibility = ["//visibility:public"])
cc_library(
name = "blob",
srcs = [
"blob.cc",
],
hdrs = [
"blob.h",
],
deps = [
":common",
":syncedmem",
],
)
cc_library(
name = "common",
hdrs = [
"common.h",
],
deps = [
],
)
cc_library(
name = "point_cloud",
hdrs = [
......@@ -91,4 +114,17 @@ cc_test(
],
)
cc_library(
name = "syncedmem",
srcs = [
"syncedmem.cc",
],
hdrs = [
"syncedmem.h",
],
deps = [
":common",
],
)
cpplint()
......@@ -17,7 +17,6 @@
#include <vector>
#include "modules/perception/base/blob.h"
#include "modules/perception/base/syncedmem.h"
namespace apollo {
namespace perception {
......
......@@ -16,9 +16,7 @@
#ifndef MODULES_PERCEPTION_BASE_BLOB_H_
#define MODULES_PERCEPTION_BASE_BLOB_H_
#include <algorithm>
#include <memory>
#include <sstream>
#include <string>
#include <vector>
......
......@@ -17,7 +17,6 @@
#define MODULES_PERCEPTION_BASE_COMMON_H_
#include <assert.h>
#include "modules/perception/base/options_define.h"
#ifndef PERCEPTION_CPU_ONLY
......
......@@ -55,19 +55,26 @@ inline void PerceptionFreeHost(void* ptr, bool use_cuda) {
*/
class SyncedMemory {
public:
enum SyncedHead {
UNINITIALIZED,
HEAD_AT_CPU,
HEAD_AT_GPU,
SYNCED
};
explicit SyncedMemory(bool use_cuda);
explicit SyncedMemory(size_t size, bool use_cuda);
SyncedMemory(const SyncedMemory&) = delete;
void operator=(const SyncedMemory&) = delete;
~SyncedMemory();
const void* cpu_data();
void set_cpu_data(void* data);
const void* gpu_data();
void set_gpu_data(void* data);
void* mutable_cpu_data();
void* mutable_gpu_data();
enum SyncedHead { UNINITIALIZED, HEAD_AT_CPU, HEAD_AT_GPU, SYNCED };
SyncedHead head() const { return head_; }
void set_head(SyncedHead head) { head_ = head; }
void set_head_gpu() { set_head(HEAD_AT_GPU); }
......@@ -80,9 +87,10 @@ class SyncedMemory {
private:
void check_device();
void to_cpu();
void to_gpu();
private:
void* cpu_ptr_;
void* gpu_ptr_;
size_t size_;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册