summaryrefslogtreecommitdiff
path: root/simpleperf/record_test.cpp
diff options
context:
space:
mode:
authorYabin Cui <yabinc@google.com>2018-06-18 17:44:27 -0700
committerYabin Cui <yabinc@google.com>2018-06-18 17:51:01 -0700
commit8b5a352cbfd70935eeeae507e165018812f18991 (patch)
treeaf5cf06db56e3f4aa9f86f330d6e7e80380cded6 /simpleperf/record_test.cpp
parent9e00d29710a22146f7a2a525807540c7a6a0bbd3 (diff)
downloadextras-8b5a352cbfd70935eeeae507e165018812f18991.tar.gz
simpleperf: remove RecordCache.
When using debug-unwind cmd for system wide profiling result, I found it might took a lot of memory because RecordCache cached too many samples. Since simpleperf no longer relies on RecordCache to sort records, I think it is fine to remove RecordCache instead of fixing it. Bug: none. Test: run simpleperf_unit_test. Change-Id: Ie28ce17b4158add455004a56bbdac745f9d05f19
Diffstat (limited to 'simpleperf/record_test.cpp')
-rw-r--r--simpleperf/record_test.cpp83
1 files changed, 0 insertions, 83 deletions
diff --git a/simpleperf/record_test.cpp b/simpleperf/record_test.cpp
index 5430f7be..b2e72b81 100644
--- a/simpleperf/record_test.cpp
+++ b/simpleperf/record_test.cpp
@@ -59,89 +59,6 @@ TEST_F(RecordTest, SampleRecordMatchBinary) {
CheckRecordMatchBinary(record);
}
-TEST_F(RecordTest, RecordCache_smoke) {
- event_attr.sample_id_all = 1;
- event_attr.sample_type |= PERF_SAMPLE_TIME;
- RecordCache cache(true, 2, 2);
-
- // Push r1.
- MmapRecord* r1 = new MmapRecord(event_attr, true, 1, 1, 0x100, 0x200, 0x300,
- "mmap_record1", 0, 3);
- cache.Push(std::unique_ptr<Record>(r1));
- ASSERT_EQ(nullptr, cache.Pop());
-
- // Push r2.
- MmapRecord* r2 = new MmapRecord(event_attr, true, 1, 1, 0x100, 0x200, 0x300,
- "mmap_record1", 0, 1);
- cache.Push(std::unique_ptr<Record>(r2));
- // Pop r2.
- std::unique_ptr<Record> popped_r = cache.Pop();
- ASSERT_TRUE(popped_r != nullptr);
- ASSERT_EQ(r2, popped_r.get());
- ASSERT_EQ(nullptr, cache.Pop());
-
- // Push r3.
- MmapRecord* r3 = new MmapRecord(event_attr, true, 1, 1, 0x100, 0x200, 0x300,
- "mmap_record1", 0, 4);
- cache.Push(std::unique_ptr<Record>(r3));
- ASSERT_EQ(nullptr, cache.Pop());
-
- // Push r4.
- MmapRecord* r4 = new MmapRecord(event_attr, true, 1, 1, 0x100, 0x200, 0x300,
- "mmap_record1", 0, 6);
- cache.Push(std::unique_ptr<Record>(r4));
- // Pop r1.
- popped_r = cache.Pop();
- ASSERT_TRUE(popped_r != nullptr);
- ASSERT_EQ(r1, popped_r.get());
- // Pop r3.
- popped_r = cache.Pop();
- ASSERT_TRUE(popped_r != nullptr);
- ASSERT_EQ(r3, popped_r.get());
- ASSERT_EQ(nullptr, cache.Pop());
- // Pop r4.
- std::vector<std::unique_ptr<Record>> last_records = cache.PopAll();
- ASSERT_EQ(1u, last_records.size());
- ASSERT_EQ(r4, last_records[0].get());
-}
-
-TEST_F(RecordTest, RecordCache_FIFO) {
- event_attr.sample_id_all = 1;
- event_attr.sample_type |= PERF_SAMPLE_TIME;
- RecordCache cache(true, 2, 2);
- std::vector<MmapRecord*> records;
- for (size_t i = 0; i < 10; ++i) {
- records.push_back(new MmapRecord(event_attr, true, 1, i, 0x100, 0x200,
- 0x300, "mmap_record1", 0));
- cache.Push(std::unique_ptr<Record>(records.back()));
- }
- std::vector<std::unique_ptr<Record>> out_records = cache.PopAll();
- ASSERT_EQ(records.size(), out_records.size());
- for (size_t i = 0; i < records.size(); ++i) {
- ASSERT_EQ(records[i], out_records[i].get());
- }
-}
-
-TEST_F(RecordTest, RecordCache_PushRecordVector) {
- event_attr.sample_id_all = 1;
- event_attr.sample_type |= PERF_SAMPLE_TIME;
- RecordCache cache(true, 2, 2);
- MmapRecord* r1 = new MmapRecord(event_attr, true, 1, 1, 0x100, 0x200, 0x300,
- "mmap_record1", 0, 1);
- MmapRecord* r2 = new MmapRecord(event_attr, true, 1, 1, 0x100, 0x200, 0x300,
- "mmap_record1", 0, 3);
- std::vector<std::unique_ptr<Record>> records;
- records.push_back(std::unique_ptr<Record>(r1));
- records.push_back(std::unique_ptr<Record>(r2));
- cache.Push(std::move(records));
- std::unique_ptr<Record> popped_r = cache.Pop();
- ASSERT_TRUE(popped_r != nullptr);
- ASSERT_EQ(r1, popped_r.get());
- std::vector<std::unique_ptr<Record>> last_records = cache.PopAll();
- ASSERT_EQ(1u, last_records.size());
- ASSERT_EQ(r2, last_records[0].get());
-}
-
TEST_F(RecordTest, SampleRecord_exclude_kernel_callchain) {
SampleRecord r(event_attr, 0, 1, 0, 0, 0, 0, 0, {});
ASSERT_EQ(0u, r.ExcludeKernelCallChain());