On 2014.10.21 at 13:53 -0700, Dehao Chen wrote: > Everything will be the same on non-intel CPUs except for the perf command: > > perf record -e instructions -- your program. > > i.e. you need to drop "-b" and use instructions as event. > > Note that the current algorithm is tuned for accurate instruction > level profile, which is not available on non-Intel CPU. But you are > more than welcome to tune the propagation algorithm to get most out of > inaccurate instruction profile.
Thanks. But unfortunately it doesn't work: markus@x4 autofdo % g++ -O2 -g /home/markus/bench.cpp markus@x4 autofdo % perf record -e instructions ./a.out ... markus@x4 autofdo % ./create_gcov --binary=a.out --profile=perf.data --gcov=profile.afdo E1021 23:23:30.733412 13689 perf_reader.cc:918] Unsupported event type 10 F1021 23:23:30.733707 13689 perf_parser.cc:114] Check failed: ReadPerfSampleInfo(**parsed_events_[i].raw_event, &sample_info) *** Check failure stack trace: *** @ 0x44469d google::LogMessage::Flush() @ 0x4470b9 google::LogMessageFatal::~LogMessageFatal() @ 0x43c668 quipper::PerfParser::SortParsedEvents() @ 0x43f0cb quipper::PerfParser::ParseRawEvents() @ 0x4221ef autofdo::PerfDataSampleReader::Append() @ 0x421af3 autofdo::SampleReader::ReadAndSetMaxCount() @ 0x417e61 autofdo::ProfileCreator::ReadSample() @ 0x418db2 autofdo::ProfileCreator::CreateProfile() @ 0x4086a5 main @ 0x7fa849ce8fd0 __libc_start_main @ 0x4099cb (unknown) @ (nil) (unknown) [1] 13689 abort ./create_gcov --binary=a.out --profile=perf.data --gcov=profile.afdo -- Markus