diff options
author | Yabin Cui <yabinc@google.com> | 2018-06-18 17:44:27 -0700 |
---|---|---|
committer | Yabin Cui <yabinc@google.com> | 2018-06-18 17:51:01 -0700 |
commit | 8b5a352cbfd70935eeeae507e165018812f18991 (patch) | |
tree | af5cf06db56e3f4aa9f86f330d6e7e80380cded6 /simpleperf/record_test.cpp | |
parent | 9e00d29710a22146f7a2a525807540c7a6a0bbd3 (diff) | |
download | extras-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.cpp | 83 |
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()); |