OSDN Git Service

Simpleperf: Don't load whole perf.data into memory.
authorYabin Cui <yabinc@google.com>
Sat, 24 Oct 2015 02:48:42 +0000 (19:48 -0700)
committerYabin Cui <yabinc@google.com>
Sat, 24 Oct 2015 03:13:12 +0000 (20:13 -0700)
commitb7f481f59126456b0e708a76f40fa88224f3531b
tree6bc5e959a21eaf7cc62e5ec64cdc503463a2fb71
parent6fea45816ae5ce22b9f186a1fc4b447a42ece10f
Simpleperf: Don't load whole perf.data into memory.

perf.data can be too large to be loaded into memory.
To avoid this, use fread() instead of mmap() to read perf.data,
and always use RecordCache to sort records.

Fix unit tests failure caused by previous change.

Bug: 25194400

Change-Id: If29dc0bb0ed992ba34202c2cb1a204a1d9123b7a
13 files changed:
simpleperf/cmd_dumprecord.cpp
simpleperf/cmd_record.cpp
simpleperf/cmd_record_test.cpp
simpleperf/cmd_report.cpp
simpleperf/record.cpp
simpleperf/record.h
simpleperf/record_file.h
simpleperf/record_file_reader.cpp
simpleperf/record_file_test.cpp
simpleperf/record_file_writer.cpp
simpleperf/sample_tree_test.cpp
simpleperf/thread_tree.cpp
simpleperf/thread_tree.h