MCPcopy Create free account
hub / github.com/Xtra-Computing/thundersvm / TEST

Function TEST

src/test/test_syncmem.cpp:7–50  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

5#include "thundersvm/syncmem.h"
6#ifndef _WIN32
7TEST(SyncMemTest, host_allocate){
8 SyncMem::reset_memory_size();
9 EXPECT_EQ(SyncMem::get_total_memory_size(), 0);
10 //one instance
11 SyncMem syncMem(100);
12 EXPECT_NE(syncMem.host_data(), nullptr);
13 EXPECT_EQ(syncMem.head(), SyncMem::HEAD::HOST);
14 EXPECT_EQ(syncMem.size(), 100);
15 EXPECT_EQ(SyncMem::get_total_memory_size(), 100);
16
17 //one instance without initialization
18 SyncMem syncMem2(100);
19 EXPECT_EQ(SyncMem::get_total_memory_size(), 100);
20 syncMem2.to_host();
21
22 //one instance with initialization
23 EXPECT_EQ(SyncMem::get_total_memory_size(), 200);
24
25 //set data doesn't increase total size
26 {
27 SyncMem syncMem_t(100);
28 syncMem_t.set_host_data(syncMem2.host_data());
29 EXPECT_EQ(SyncMem::get_total_memory_size(), 200);
30 }
31 EXPECT_EQ(SyncMem::get_total_memory_size(), 200);
32
33 //set data doesn't increase total size
34 {
35 SyncMem syncMem_t(100);
36 syncMem_t.to_host();
37 EXPECT_EQ(SyncMem::get_total_memory_size(), 300);
38 syncMem_t.set_host_data(syncMem2.host_data());
39 EXPECT_EQ(SyncMem::get_total_memory_size(), 200);
40 }
41 EXPECT_EQ(SyncMem::get_total_memory_size(), 200);
42
43 //deconstruction
44 {
45 SyncMem syncMem_t(100);
46 syncMem_t.to_host();
47 EXPECT_EQ(SyncMem::get_total_memory_size(), 300);
48 }
49 EXPECT_EQ(SyncMem::get_total_memory_size(), 200);
50}
51#endif
52#ifdef USE_CUDA
53#ifndef _WIN32

Callers

nothing calls this directly

Calls 9

get_total_memory_sizeMethod · 0.80
host_dataMethod · 0.45
headMethod · 0.45
sizeMethod · 0.45
to_hostMethod · 0.45
set_host_dataMethod · 0.45
device_dataMethod · 0.45
to_deviceMethod · 0.45
set_device_dataMethod · 0.45

Tested by

no test coverage detected