diff options
author | Milian Wolff <milian.wolff@kdab.com> | 2020-06-08 23:12:12 +0200 |
---|---|---|
committer | Milian Wolff <milian.wolff@kdab.com> | 2020-09-11 10:00:49 +0000 |
commit | d793de5b3c6aa88c556609935fdee41884b24a7e (patch) | |
tree | f0cd8c17f409838735cbcc94afe8f7bfd6ab7fe3 | |
parent | 778ec91b484a30c3a6430ab67ec9697814bb6171 (diff) |
Add support for zstd decompression
When compiled with HAVE_ZSTD=1, transparently decompress perf
records contained in PERF_RECORD_COMPRESSED and parse those then.
This way, we can finally open data files recorded with
`perf record -z`, which are often two orders of magnitude smaller
for the common `--call-graph dwarf` case.
Change-Id: Ic26f049b955b20038b947d03c7ff1c6c5eb22ba3
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
-rw-r--r-- | CMakeLists.txt | 3 | ||||
-rw-r--r-- | app/CMakeLists.txt | 6 | ||||
-rw-r--r-- | app/main.cpp | 4 | ||||
-rw-r--r-- | app/perfdata.cpp | 102 | ||||
-rw-r--r-- | app/perfdata.h | 18 | ||||
-rw-r--r-- | app/perffeatures.cpp | 14 | ||||
-rw-r--r-- | app/perffeatures.h | 20 | ||||
-rw-r--r-- | cmake/FindZstd.cmake | 20 | ||||
-rw-r--r-- | tests/auto/perfdata/tst_perfdata.cpp | 12 | ||||
-rw-r--r-- | tests/auto/perfdata/vector_static_gcc/perf.data.zstd | bin | 0 -> 25171 bytes | |||
-rw-r--r-- | tests/auto/perfdata/vector_static_gcc/perf.data.zstd.expected.txt | 657 |
11 files changed, 854 insertions, 2 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index dc4336c..b892b27 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -5,6 +5,9 @@ if (NOT elfutils_FOUND) return() endif() +list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake") +find_package(Zstd) + set(RUSTC_DEMANGLE_INCLUDE_DIR "" CACHE STRING "Path to the folder containing rustc_demangle.h from https://github.com/alexcrichton/rustc-demangle") set(RUSTC_DEMANGLE_LIBRARY "" CACHE STRING "Path to the librustc_demangle.so library from https://github.com/alexcrichton/rustc-demangle") option(WITH_RUSTC_DEMANGLE "Build rust demangle support" OFF) diff --git a/app/CMakeLists.txt b/app/CMakeLists.txt index 414e67c..80e4246 100644 --- a/app/CMakeLists.txt +++ b/app/CMakeLists.txt @@ -22,6 +22,12 @@ add_qtc_library(perfparser_lib STATIC perftracingdata.cpp perftracingdata.h ) +if (Zstd_FOUND) + target_include_directories(perfparser_lib PRIVATE ${Zstd_INCLUDE_DIR}) + target_link_libraries(perfparser_lib PRIVATE ${Zstd_LIBRARY}) + target_compile_definitions(perfparser_lib PRIVATE HAVE_ZSTD=1) +endif() + if (WITH_RUSTC_DEMANGLE) target_include_directories(perfparser_lib PRIVATE ${RUSTC_DEMANGLE_INCLUDE_DIR}) target_link_libraries(perfparser_lib PRIVATE ${RUSTC_DEMANGLE_LIBRARY}) diff --git a/app/main.cpp b/app/main.cpp index b9d0bec..11e7a46 100644 --- a/app/main.cpp +++ b/app/main.cpp @@ -304,6 +304,10 @@ int main(int argc, char *argv[]) infile->seek(filePos); // first send features, as it may contain better event descriptions + if (header.hasFeature(PerfHeader::COMPRESSED) && !data.setCompressed(features.compressed())) { + qApp->exit(DataError); + return; + } unwind.features(features); const auto& attrs = attributes.attributes(); diff --git a/app/perfdata.cpp b/app/perfdata.cpp index e1c93f4..2dfbc6c 100644 --- a/app/perfdata.cpp +++ b/app/perfdata.cpp @@ -33,11 +33,38 @@ PerfData::PerfData(PerfUnwind *destination, const PerfHeader *header, PerfAttrib { } +PerfData::~PerfData() +{ +#ifdef HAVE_ZSTD + if (m_zstdDstream) + ZSTD_freeDStream(m_zstdDstream); +#endif +} + void PerfData::setSource(QIODevice *source) { m_source = source; } +bool PerfData::setCompressed(const PerfCompressed &compressed) +{ + if (compressed.version != 0) { + qWarning() << "unsupported compression version" << compressed.version; + return false; + } else if (compressed.type != PerfCompressed::PERF_COMP_ZSTD) { + qWarning() << "unsupported compression type" << compressed.type; + return false; + } else if (!CAN_DECOMPRESS_ZSTD) { + qWarning() << "zstd decompression support not available"; + return false; + } else if (!compressed.mmap_len) { + qWarning() << "invalid compression information" << compressed.mmap_len; + return false; + } + m_compressed = compressed; + return true; +} + const char * perfEventToString(qint32 type) { switch (type) { @@ -227,6 +254,81 @@ PerfData::ReadStatus PerfData::processEvents(QDataStream &stream) break; } +#ifdef HAVE_ZSTD + case PERF_RECORD_COMPRESSED: { + if (!m_zstdDstream) { + if (!m_header->hasFeature(PerfHeader::COMPRESSED)) { + qWarning() << "encountered PERF_RECORD_COMPRESSED without HEADER_COMPRESSED information"; + return SignalError; + } + + m_zstdDstream = ZSTD_createDStream(); + ZSTD_initDStream(m_zstdDstream); + + // preallocate a buffer to hold the compressed data + m_compressedBuffer.resize(std::numeric_limits<quint16>::max()); + } + + // load compressed data into contiguous array + stream.readRawData(m_compressedBuffer.data(), contentSize); + ZSTD_inBuffer in = {m_compressedBuffer.constData(), static_cast<size_t>(contentSize), 0}; + + // setup decompression buffer which may contain data from a previous compressed record + // i.e. one where we had to Rerun. the decompression can add at most mmap_len data on top + m_decompressBuffer.resize(m_compressed.mmap_len + m_remaininingDecompressedDataSize); + auto outBuffer = m_decompressBuffer.data() + m_remaininingDecompressedDataSize; + auto outBufferSize = static_cast<size_t>(m_decompressBuffer.size() - m_remaininingDecompressedDataSize); + ZSTD_outBuffer out = {outBuffer, outBufferSize, 0}; + + // now actually decompress the record data + while (in.pos < in.size) { + const auto err = ZSTD_decompressStream(m_zstdDstream, &out, &in); + if (ZSTD_isError(err)) { + qWarning() << "ZSTD decompression failed:" << ZSTD_getErrorName(err); + return SignalError; + } + out.dst = outBuffer + out.pos; + out.size = outBufferSize - out.pos; + } + + // then resize the buffer to final size, which may be less than mmap_len + m_decompressBuffer.resize(out.pos + m_remaininingDecompressedDataSize); + // reset this now that we start to parse from the start of the buffer again + m_remaininingDecompressedDataSize = 0; + + QDataStream uncompressedStream(m_decompressBuffer); + uncompressedStream.setByteOrder(m_header->byteOrder()); + // we have to set the size to zero here otherwise processEvents gets confused + m_eventHeader.size = 0; + auto status = SignalFinished; + while (status == SignalFinished) { + // position in the decompressed buffer that corresponds to a start of the next record + // when we encounter a Rerun scenario, we have to start again at this position the next time + const auto oldPos = uncompressedStream.device()->pos(); + status = processEvents(uncompressedStream); + switch (status) { + case SignalFinished: + break; + case SignalError: + return SignalError; + case Rerun: + // unset the device to prevent the m_decompressBuffer from being shared + // we don't want to copy the data when we call .begin() below + uncompressedStream.setDevice(nullptr); + // remaining decompressed data that needs to be parsed the next time + // we handle an uncompressed record + m_remaininingDecompressedDataSize = m_decompressBuffer.size() - oldPos; + // move that data up front in the buffer and continue appending data + std::move(m_decompressBuffer.begin() + oldPos, m_decompressBuffer.end(), + m_decompressBuffer.begin()); + break; + } + }; + + break; + } +#endif + default: qWarning() << "unhandled event type" << m_eventHeader.type << " " << perfEventToString(m_eventHeader.type); stream.skipRawData(contentSize); diff --git a/app/perfdata.h b/app/perfdata.h index f337182..2bd1554 100644 --- a/app/perfdata.h +++ b/app/perfdata.h @@ -26,6 +26,14 @@ #include <QIODevice> +#ifdef HAVE_ZSTD +#include <zstd.h> + +constexpr bool CAN_DECOMPRESS_ZSTD = true; +#else +constexpr bool CAN_DECOMPRESS_ZSTD = false; +#endif + enum PerfEventType { /* @@ -598,8 +606,11 @@ class PerfData : public QObject Q_OBJECT public: PerfData(PerfUnwind *destination, const PerfHeader *header, PerfAttributes *attributes); + ~PerfData(); void setSource(QIODevice *source); + bool setCompressed(const PerfCompressed &compressed); + public slots: void read(); void finishReading(); @@ -623,6 +634,13 @@ private: PerfAttributes *m_attributes; PerfEventHeader m_eventHeader; PerfTracingData m_tracingData; + PerfCompressed m_compressed; + QByteArray m_decompressBuffer; + QByteArray m_compressedBuffer; + int m_remaininingDecompressedDataSize = 0; +#if HAVE_ZSTD + ZSTD_DStream *m_zstdDstream = nullptr; +#endif ReadStatus processEvents(QDataStream &stream); ReadStatus doRead(); diff --git a/app/perffeatures.cpp b/app/perffeatures.cpp index 577e112..9b715a1 100644 --- a/app/perffeatures.cpp +++ b/app/perffeatures.cpp @@ -102,6 +102,9 @@ void PerfFeatures::createFeature(QIODevice *device, QDataStream::ByteOrder byteO case PerfHeader::GROUP_DESC: stream >> m_groupDesc; break; + case PerfHeader::COMPRESSED: + stream >> m_compressed; + break; default: break; } @@ -338,3 +341,14 @@ QDataStream &operator<<(QDataStream &stream, const PerfGroupDesc::GroupDesc &gro { return stream << groupDesc.name << groupDesc.leaderIndex << groupDesc.numMembers; } + + +QDataStream &operator>>(QDataStream &stream, PerfCompressed &compressed) +{ + stream >> compressed.version; + stream >> compressed.type; + stream >> compressed.level; + stream >> compressed.ratio; + stream >> compressed.mmap_len; + return stream; +} diff --git a/app/perffeatures.h b/app/perffeatures.h index 8659695..2e07b99 100644 --- a/app/perffeatures.h +++ b/app/perffeatures.h @@ -147,6 +147,24 @@ struct PerfGroupDesc { QDataStream &operator>>(QDataStream &stream, PerfGroupDesc &groupDesc); QDataStream &operator<<(QDataStream &stream, const PerfGroupDesc::GroupDesc &groupDesc); +struct PerfCompressed { + quint32 version = 0; + quint32 type = 0; + quint32 level = 0; + quint32 ratio = 0; + quint32 mmap_len = 0; + + enum Type { + PERF_COMP_NONE = 0, + PERF_COMP_ZSTD, + PERF_COMP_MAX + }; + Q_ENUM(Type) + Q_GADGET +}; + +QDataStream &operator>>(QDataStream &stream, PerfCompressed &compressed); + class PerfFeatures { public: @@ -172,6 +190,7 @@ public: QList<PerfNumaTopology::NumaNode> numaTopology() const { return m_numaToplogy.nodes; } QList<PerfPmuMappings::Pmu> pmuMappings() const { return m_pmuMappings.pmus; } QList<PerfGroupDesc::GroupDesc> groupDescs() const { return m_groupDesc.groupDescs; } + PerfCompressed compressed() const { return m_compressed; } private: void createFeature(QIODevice *device, QDataStream::ByteOrder byteOrder, @@ -193,4 +212,5 @@ private: PerfNumaTopology m_numaToplogy; PerfPmuMappings m_pmuMappings; PerfGroupDesc m_groupDesc; + PerfCompressed m_compressed; }; diff --git a/cmake/FindZstd.cmake b/cmake/FindZstd.cmake new file mode 100644 index 0000000..62f2e5b --- /dev/null +++ b/cmake/FindZstd.cmake @@ -0,0 +1,20 @@ +# taken from: https://github.com/facebook/folly/blob/master/CMake/FindZstd.cmake +# should be apache 2.0, cf.: https://github.com/facebook/folly/blob/master/LICENSE +# +# - Try to find Facebook zstd library +# This will define +# Zstd_FOUND +# Zstd_INCLUDE_DIR +# Zstd_LIBRARY +# + +find_path(Zstd_INCLUDE_DIR NAMES zstd.h) +find_library(Zstd_LIBRARY NAMES zstd) + +include(FindPackageHandleStandardArgs) +FIND_PACKAGE_HANDLE_STANDARD_ARGS( + Zstd DEFAULT_MSG + Zstd_LIBRARY Zstd_INCLUDE_DIR +) + +mark_as_advanced(Zstd_INCLUDE_DIR Zstd_LIBRARY) diff --git a/tests/auto/perfdata/tst_perfdata.cpp b/tests/auto/perfdata/tst_perfdata.cpp index 320c4fb..e496b91 100644 --- a/tests/auto/perfdata/tst_perfdata.cpp +++ b/tests/auto/perfdata/tst_perfdata.cpp @@ -42,7 +42,7 @@ private slots: }; static void setupUnwind(PerfUnwind *unwind, PerfHeader *header, QIODevice *input, - PerfAttributes *attributes) + PerfAttributes *attributes, PerfData *data) { if (!header->isPipe()) { const qint64 filePos = input->pos(); @@ -52,6 +52,9 @@ static void setupUnwind(PerfUnwind *unwind, PerfHeader *header, QIODevice *input PerfFeatures features; features.read(input, header); + if (header->hasFeature(PerfHeader::COMPRESSED)) + data->setCompressed(features.compressed()); + PerfTracingData tracingData = features.tracingData(); if (tracingData.size() > 0) QCOMPARE(tracingData.version(), QByteArray("0.5")); @@ -75,7 +78,7 @@ static void process(PerfUnwind *unwind, QIODevice *input) QSignalSpy spy(&data, SIGNAL(finished())); QObject::connect(&header, &PerfHeader::finished, &data, [&](){ - setupUnwind(unwind, &header, input, &attributes); + setupUnwind(unwind, &header, input, &attributes, &data); data.read(); }); @@ -208,6 +211,7 @@ void TestPerfData::testFiles_data() const auto files = { "vector_static_clang/perf.data", "vector_static_gcc/perf.data", + "vector_static_gcc/perf.data.zstd", }; for (auto file : files) QTest::addRow("%s", file) << file; @@ -216,6 +220,10 @@ void TestPerfData::testFiles_data() void TestPerfData::testFiles() { QFETCH(QString, dataFile); +#ifndef HAVE_ZSTD + if (dataFile.contains("zstd")) + QSKIP("zstd support disabled, skipping test"); +#endif const auto perfDataFile = QFINDTESTDATA(dataFile); QVERIFY(!perfDataFile.isEmpty() && QFile::exists(perfDataFile)); diff --git a/tests/auto/perfdata/vector_static_gcc/perf.data.zstd b/tests/auto/perfdata/vector_static_gcc/perf.data.zstd Binary files differnew file mode 100644 index 0000000..9469d18 --- /dev/null +++ b/tests/auto/perfdata/vector_static_gcc/perf.data.zstd diff --git a/tests/auto/perfdata/vector_static_gcc/perf.data.zstd.expected.txt b/tests/auto/perfdata/vector_static_gcc/perf.data.zstd.expected.txt new file mode 100644 index 0000000..749d9e2 --- /dev/null +++ b/tests/auto/perfdata/vector_static_gcc/perf.data.zstd.expected.txt @@ -0,0 +1,657 @@ +vector_static_g 267677 267677 9952.368399643 + cycles: 1 + + ffffffffb79b83c8 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb79b8b7f + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d76ce + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d7a0e + 0 [kernel.kallsyms]_text [kernel] + ffffffffb7351c43 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d57cb + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d6ae4 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d77a7 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d7807 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb70045b9 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb7a0008c + 0 [kernel.kallsyms]_text [kernel] + +vector_static_g 267677 267677 9952.368416495 + cycles: 1 + + ffffffffb79b83c8 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb79b8b7f + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d76ce + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d7a0e + 0 [kernel.kallsyms]_text [kernel] + ffffffffb7351c43 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d57cb + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d6ae4 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d77a7 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d7807 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb70045b9 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb7a0008c + 0 [kernel.kallsyms]_text [kernel] + +vector_static_g 267677 267677 9952.368422085 + cycles: 1 + + ffffffffb79b83c8 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb79b8b7f + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d76ce + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d7a0e + 0 [kernel.kallsyms]_text [kernel] + ffffffffb7351c43 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d57cb + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d6ae4 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d77a7 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d7807 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb70045b9 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb7a0008c + 0 [kernel.kallsyms]_text [kernel] + +vector_static_g 267677 267677 9952.368426724 + cycles: 3 + + ffffffffb79b83c8 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb79b8b7f + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d76ce + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d7a0e + 0 [kernel.kallsyms]_text [kernel] + ffffffffb7351c43 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d57cb + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d6ae4 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d77a7 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d7807 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb70045b9 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb7a0008c + 0 [kernel.kallsyms]_text [kernel] + +vector_static_g 267677 267677 9952.368431272 + cycles: 19 + + ffffffffb79b83c8 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb79b8b7f + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d76ce + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d7a0e + 0 [kernel.kallsyms]_text [kernel] + ffffffffb7351c43 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d57cb + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d6ae4 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d77a7 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d7807 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb70045b9 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb7a0008c + 0 [kernel.kallsyms]_text [kernel] + +vector_static_g 267677 267677 9952.368436031 + cycles: 145 + + ffffffffb79b83c8 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb79b8b7f + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d76ce + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d7a0e + 0 [kernel.kallsyms]_text [kernel] + ffffffffb7351c43 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d57cb + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d6ae4 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d77a7 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d7807 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb70045b9 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb7a0008c + 0 [kernel.kallsyms]_text [kernel] + +vector_static_g 267677 267677 9952.368440820 + cycles: 1124 + + ffffffffb79b83c8 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb79b8b7f + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d76ce + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d7a0e + 0 [kernel.kallsyms]_text [kernel] + ffffffffb7351c43 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d57cb + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d6ae4 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d77a7 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d7807 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb70045b9 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb7a0008c + 0 [kernel.kallsyms]_text [kernel] + +vector_static_g 267677 267677 9952.368446180 + cycles: 8365 + + ffffffffb70b46fb + 0 [kernel.kallsyms]_text [kernel] + ffffffffb71fc042 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb71f6e7b + 0 [kernel.kallsyms]_text [kernel] + ffffffffb71f76d7 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb7204c98 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d7a0e + 0 [kernel.kallsyms]_text [kernel] + ffffffffb7351c43 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d57cb + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d6ae4 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d77a7 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d7807 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb70045b9 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb7a0008c + 0 [kernel.kallsyms]_text [kernel] + +vector_static_g 267677 267677 9952.368475245 + cycles: 61904 + + ffffffffb70f0faa + 0 [kernel.kallsyms]_text [kernel] + ffffffffc033ab78 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb724c0e8 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb7253fd2 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb725507a + 0 [kernel.kallsyms]_text [kernel] + ffffffffb7077e8f + 0 [kernel.kallsyms]_text [kernel] + ffffffffb7a012c4 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb79c510a + 0 [kernel.kallsyms]_text [kernel] + ffffffffb73524c7 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d57cb + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d6ae4 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d77a7 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72d7807 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb70045b9 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb7a0008c + 0 [kernel.kallsyms]_text [kernel] + +vector_static_g 267677 267677 9952.368668898 + cycles: 415081 + + 400490 <.plt+400490> vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401572 /usr/include/c++/9.1.0/bits/stl_algo.h:4449:13 + 40152b /usr/include/c++/9.1.0/bits/stl_algo.h:4441:5 std::generate_n<std::back_insert_iterator<std::vector<double> >, int, main()::<lambda()> > vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 40152b ../../../manual/clients/vector.cpp:16:6 + 0 ../../../manual/clients/vector.cpp:9:5 main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 42089f + 420410 __libc_start_main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401b6d + 401b40 _start vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + +vector_static_g 267677 267677 9952.369046065 + cycles: 809635 + + 417f86 + 417f60 __sin_fma vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 40155c /usr/include/c++/9.1.0/bits/stl_algo.h:4449:13 + 40152b /usr/include/c++/9.1.0/bits/stl_algo.h:4441:5 std::generate_n<std::back_insert_iterator<std::vector<double> >, int, main()::<lambda()> > vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 40152b ../../../manual/clients/vector.cpp:16:6 + 0 ../../../manual/clients/vector.cpp:9:5 main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 42089f + 420410 __libc_start_main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401b6d + 401b40 _start vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + +vector_static_g 267677 267677 9952.369439623 + cycles: 839130 + + 4181bc + 417f60 __sin_fma vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 40155c /usr/include/c++/9.1.0/bits/stl_algo.h:4449:13 + 40152b /usr/include/c++/9.1.0/bits/stl_algo.h:4441:5 std::generate_n<std::back_insert_iterator<std::vector<double> >, int, main()::<lambda()> > vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 40152b ../../../manual/clients/vector.cpp:16:6 + 0 ../../../manual/clients/vector.cpp:9:5 main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 42089f + 420410 __libc_start_main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401b6d + 401b40 _start vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + +vector_static_g 267677 267677 9952.369779761 + cycles: 723663 + + 41816d + 417f60 __sin_fma vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 40155c /usr/include/c++/9.1.0/bits/stl_algo.h:4449:13 + 40152b /usr/include/c++/9.1.0/bits/stl_algo.h:4441:5 std::generate_n<std::back_insert_iterator<std::vector<double> >, int, main()::<lambda()> > vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 40152b ../../../manual/clients/vector.cpp:16:6 + 0 ../../../manual/clients/vector.cpp:9:5 main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 42089f + 420410 __libc_start_main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401b6d + 401b40 _start vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + +vector_static_g 267677 267677 9952.370101564 + cycles: 690672 + + 4187b5 + 418790 __cos_fma vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401572 /usr/include/c++/9.1.0/bits/stl_algo.h:4449:13 + 40152b /usr/include/c++/9.1.0/bits/stl_algo.h:4441:5 std::generate_n<std::back_insert_iterator<std::vector<double> >, int, main()::<lambda()> > vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 40152b ../../../manual/clients/vector.cpp:16:6 + 0 ../../../manual/clients/vector.cpp:9:5 main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 42089f + 420410 __libc_start_main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401b6d + 401b40 _start vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + +vector_static_g 267677 267677 9952.370412828 + cycles: 667789 + + 4187b5 + 418790 __cos_fma vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401572 /usr/include/c++/9.1.0/bits/stl_algo.h:4449:13 + 40152b /usr/include/c++/9.1.0/bits/stl_algo.h:4441:5 std::generate_n<std::back_insert_iterator<std::vector<double> >, int, main()::<lambda()> > vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 40152b ../../../manual/clients/vector.cpp:16:6 + 0 ../../../manual/clients/vector.cpp:9:5 main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 42089f + 420410 __libc_start_main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401b6d + 401b40 _start vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + +vector_static_g 267677 267677 9952.370716207 + cycles: 649163 + + 41b3d3 + 41b3b0 __hypot_finite vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 417a57 + 417a40 __hypot vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401585 /usr/include/c++/9.1.0/bits/stl_algo.h:4449:13 + 40152b /usr/include/c++/9.1.0/bits/stl_algo.h:4441:5 std::generate_n<std::back_insert_iterator<std::vector<double> >, int, main()::<lambda()> > vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 40152b ../../../manual/clients/vector.cpp:16:6 + 0 ../../../manual/clients/vector.cpp:9:5 main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 42089f + 420410 __libc_start_main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401b6d + 401b40 _start vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + +vector_static_g 267677 267677 9952.371009787 + cycles: 633193 + + 4187b5 + 418790 __cos_fma vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401572 /usr/include/c++/9.1.0/bits/stl_algo.h:4449:13 + 40152b /usr/include/c++/9.1.0/bits/stl_algo.h:4441:5 std::generate_n<std::back_insert_iterator<std::vector<double> >, int, main()::<lambda()> > vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 40152b ../../../manual/clients/vector.cpp:16:6 + 0 ../../../manual/clients/vector.cpp:9:5 main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 42089f + 420410 __libc_start_main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401b6d + 401b40 _start vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + +vector_static_g 267677 267677 9952.371296635 + cycles: 619266 + + 418a97 + 418790 __cos_fma vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401572 /usr/include/c++/9.1.0/bits/stl_algo.h:4449:13 + 40152b /usr/include/c++/9.1.0/bits/stl_algo.h:4441:5 std::generate_n<std::back_insert_iterator<std::vector<double> >, int, main()::<lambda()> > vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 40152b ../../../manual/clients/vector.cpp:16:6 + 0 ../../../manual/clients/vector.cpp:9:5 main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 42089f + 420410 __libc_start_main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401b6d + 401b40 _start vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + +vector_static_g 267677 267677 9952.371584224 + cycles: 607785 + + 4187b9 + 418790 __cos_fma vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401572 /usr/include/c++/9.1.0/bits/stl_algo.h:4449:13 + 40152b /usr/include/c++/9.1.0/bits/stl_algo.h:4441:5 std::generate_n<std::back_insert_iterator<std::vector<double> >, int, main()::<lambda()> > vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 40152b ../../../manual/clients/vector.cpp:16:6 + 0 ../../../manual/clients/vector.cpp:9:5 main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 42089f + 420410 __libc_start_main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401b6d + 401b40 _start vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + +vector_static_g 267677 267677 9952.371877183 + cycles: 598020 + + 417fea + 417f60 __sin_fma vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 40155c /usr/include/c++/9.1.0/bits/stl_algo.h:4449:13 + 40152b /usr/include/c++/9.1.0/bits/stl_algo.h:4441:5 std::generate_n<std::back_insert_iterator<std::vector<double> >, int, main()::<lambda()> > vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 40152b ../../../manual/clients/vector.cpp:16:6 + 0 ../../../manual/clients/vector.cpp:9:5 main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 42089f + 420410 __libc_start_main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401b6d + 401b40 _start vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + +vector_static_g 267677 267677 9952.372163751 + cycles: 588253 + + 417f82 + 417f60 __sin_fma vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 40155c /usr/include/c++/9.1.0/bits/stl_algo.h:4449:13 + 40152b /usr/include/c++/9.1.0/bits/stl_algo.h:4441:5 std::generate_n<std::back_insert_iterator<std::vector<double> >, int, main()::<lambda()> > vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 40152b ../../../manual/clients/vector.cpp:16:6 + 0 ../../../manual/clients/vector.cpp:9:5 main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 42089f + 420410 __libc_start_main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401b6d + 401b40 _start vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + +vector_static_g 267677 267677 9952.372445088 + cycles: 577472 + + 41b541 + 41b3b0 __hypot_finite vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 417a57 + 417a40 __hypot vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401585 /usr/include/c++/9.1.0/bits/stl_algo.h:4449:13 + 40152b /usr/include/c++/9.1.0/bits/stl_algo.h:4441:5 std::generate_n<std::back_insert_iterator<std::vector<double> >, int, main()::<lambda()> > vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 40152b ../../../manual/clients/vector.cpp:16:6 + 0 ../../../manual/clients/vector.cpp:9:5 main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 42089f + 420410 __libc_start_main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401b6d + 401b40 _start vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + +vector_static_g 267677 267677 9952.372721927 + cycles: 568267 + + 41b4ba + 41b3b0 __hypot_finite vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 417a57 + 417a40 __hypot vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401585 /usr/include/c++/9.1.0/bits/stl_algo.h:4449:13 + 40152b /usr/include/c++/9.1.0/bits/stl_algo.h:4441:5 std::generate_n<std::back_insert_iterator<std::vector<double> >, int, main()::<lambda()> > vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 40152b ../../../manual/clients/vector.cpp:16:6 + 0 ../../../manual/clients/vector.cpp:9:5 main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 42089f + 420410 __libc_start_main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401b6d + 401b40 _start vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + +vector_static_g 267677 267677 9952.372997113 + cycles: 560349 + + ffffffffb79c1fc7 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb726c83a + 0 [kernel.kallsyms]_text [kernel] + ffffffffb726ca1a + 0 [kernel.kallsyms]_text [kernel] + ffffffffb7270403 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb7271863 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb728ac60 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb72544dc + 0 [kernel.kallsyms]_text [kernel] + ffffffffb725507a + 0 [kernel.kallsyms]_text [kernel] + ffffffffb7077e8f + 0 [kernel.kallsyms]_text [kernel] + ffffffffb7a012c4 + 0 [kernel.kallsyms]_text [kernel] + 45a364 + 45a180 __memmove_avx_unaligned_erms vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401d4b /usr/include/c++/9.1.0/bits/stl_uninitialized.h:911:19 + 401d08 /usr/include/c++/9.1.0/bits/stl_uninitialized.h:906:5 std::enable_if<std::__is_bitwise_relocatable<double, void>::value, double*>::type std::__relocate_a_1<double, double>(double*, double*, double*, std::allocator<double>&) vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401d08 /usr/include/c++/9.1.0/bits/stl_uninitialized.h:946:28 + 401d08 /usr/include/c++/9.1.0/bits/stl_uninitialized.h:940:5 double* std::__relocate_a<double*, double*, std::allocator<double> >(double*, double*, double*, std::allocator<double>&) vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401d08 /usr/include/c++/9.1.0/bits/stl_vector.h:453:26 + 401d08 /usr/include/c++/9.1.0/bits/stl_vector.h:450:7 std::vector<double, std::allocator<double> >::_S_do_relocate(double*, double*, double*, std::allocator<double>&, std::integral_constant<bool, true>) vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401d08 /usr/include/c++/9.1.0/bits/stl_vector.h:466:23 + 401d08 /usr/include/c++/9.1.0/bits/stl_vector.h:462:7 std::vector<double, std::allocator<double> >::_S_relocate(double*, double*, double*, std::allocator<double>&) vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401d08 /usr/include/c++/9.1.0/bits/vector.tcc:461:34 + 401c70 /usr/include/c++/9.1.0/bits/vector.tcc:426:7 void std::vector<double, std::allocator<double> >::_M_realloc_insert<double>(__gnu_cxx::__normal_iterator<double*, std::vector<double, std::allocator<double> > >, double&&) vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 4015a4 /usr/include/c++/9.1.0/bits/vector.tcc:121:4 + 401590 /usr/include/c++/9.1.0/bits/vector.tcc:109:7 void std::vector<double, std::allocator<double> >::emplace_back<double>(double&&) vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401590 /usr/include/c++/9.1.0/bits/stl_vector.h:1201:9 + 401590 /usr/include/c++/9.1.0/bits/stl_vector.h:1200:7 std::vector<double, std::allocator<double> >::push_back(double&&) vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401590 /usr/include/c++/9.1.0/bits/stl_iterator.h:522:2 + 401590 /usr/include/c++/9.1.0/bits/stl_iterator.h:520:7 std::back_insert_iterator<std::vector<double, std::allocator<double> > >::operator=(double&&) vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401590 /usr/include/c++/9.1.0/bits/stl_algo.h:4450:11 + 40152b /usr/include/c++/9.1.0/bits/stl_algo.h:4441:5 std::generate_n<std::back_insert_iterator<std::vector<double> >, int, main()::<lambda()> > vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 40152b ../../../manual/clients/vector.cpp:16:6 + 0 ../../../manual/clients/vector.cpp:9:5 main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 42089f + 420410 __libc_start_main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401b6d + 401b40 _start vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + +vector_static_g 267677 267677 9952.373265046 + cycles: 550184 + + 418263 + 417f60 __sin_fma vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 40155c /usr/include/c++/9.1.0/bits/stl_algo.h:4449:13 + 40152b /usr/include/c++/9.1.0/bits/stl_algo.h:4441:5 std::generate_n<std::back_insert_iterator<std::vector<double> >, int, main()::<lambda()> > vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 40152b ../../../manual/clients/vector.cpp:16:6 + 0 ../../../manual/clients/vector.cpp:9:5 main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 42089f + 420410 __libc_start_main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401b6d + 401b40 _start vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + +vector_static_g 267677 267677 9952.373529882 + cycles: 543898 + + 417a7f + 417a40 __hypot vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401585 /usr/include/c++/9.1.0/bits/stl_algo.h:4449:13 + 40152b /usr/include/c++/9.1.0/bits/stl_algo.h:4441:5 std::generate_n<std::back_insert_iterator<std::vector<double> >, int, main()::<lambda()> > vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 40152b ../../../manual/clients/vector.cpp:16:6 + 0 ../../../manual/clients/vector.cpp:9:5 main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 42089f + 420410 __libc_start_main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401b6d + 401b40 _start vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + +vector_static_g 267677 267677 9952.373792635 + cycles: 539347 + + 41b541 + 41b3b0 __hypot_finite vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 417a57 + 417a40 __hypot vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401585 /usr/include/c++/9.1.0/bits/stl_algo.h:4449:13 + 40152b /usr/include/c++/9.1.0/bits/stl_algo.h:4441:5 std::generate_n<std::back_insert_iterator<std::vector<double> >, int, main()::<lambda()> > vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 40152b ../../../manual/clients/vector.cpp:16:6 + 0 ../../../manual/clients/vector.cpp:9:5 main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 42089f + 420410 __libc_start_main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401b6d + 401b40 _start vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + +vector_static_g 267677 267677 9952.374053514 + cycles: 535566 + + 41b4b6 + 41b3b0 __hypot_finite vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 417a57 + 417a40 __hypot vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401585 /usr/include/c++/9.1.0/bits/stl_algo.h:4449:13 + 40152b /usr/include/c++/9.1.0/bits/stl_algo.h:4441:5 std::generate_n<std::back_insert_iterator<std::vector<double> >, int, main()::<lambda()> > vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 40152b ../../../manual/clients/vector.cpp:16:6 + 0 ../../../manual/clients/vector.cpp:9:5 main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 42089f + 420410 __libc_start_main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401b6d + 401b40 _start vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + +vector_static_g 267677 267677 9952.374312880 + cycles: 532316 + + 41b541 + 41b3b0 __hypot_finite vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 417a57 + 417a40 __hypot vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401585 /usr/include/c++/9.1.0/bits/stl_algo.h:4449:13 + 40152b /usr/include/c++/9.1.0/bits/stl_algo.h:4441:5 std::generate_n<std::back_insert_iterator<std::vector<double> >, int, main()::<lambda()> > vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 40152b ../../../manual/clients/vector.cpp:16:6 + 0 ../../../manual/clients/vector.cpp:9:5 main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 42089f + 420410 __libc_start_main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401b6d + 401b40 _start vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + +vector_static_g 267677 267677 9952.374572497 + cycles: 529542 + + 4182a7 + 417f60 __sin_fma vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 40155c /usr/include/c++/9.1.0/bits/stl_algo.h:4449:13 + 40152b /usr/include/c++/9.1.0/bits/stl_algo.h:4441:5 std::generate_n<std::back_insert_iterator<std::vector<double> >, int, main()::<lambda()> > vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 40152b ../../../manual/clients/vector.cpp:16:6 + 0 ../../../manual/clients/vector.cpp:9:5 main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 42089f + 420410 __libc_start_main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401b6d + 401b40 _start vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + +vector_static_g 267677 267677 9952.374830862 + cycles: 527153 + + 41b4b2 + 41b3b0 __hypot_finite vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 417a57 + 417a40 __hypot vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401585 /usr/include/c++/9.1.0/bits/stl_algo.h:4449:13 + 40152b /usr/include/c++/9.1.0/bits/stl_algo.h:4441:5 std::generate_n<std::back_insert_iterator<std::vector<double> >, int, main()::<lambda()> > vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 40152b ../../../manual/clients/vector.cpp:16:6 + 0 ../../../manual/clients/vector.cpp:9:5 main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 42089f + 420410 __libc_start_main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401b6d + 401b40 _start vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + +vector_static_g 267677 267677 9952.375086521 + cycles: 524713 + + 41b4ba + 41b3b0 __hypot_finite vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 417a57 + 417a40 __hypot vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401585 /usr/include/c++/9.1.0/bits/stl_algo.h:4449:13 + 40152b /usr/include/c++/9.1.0/bits/stl_algo.h:4441:5 std::generate_n<std::back_insert_iterator<std::vector<double> >, int, main()::<lambda()> > vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 40152b ../../../manual/clients/vector.cpp:16:6 + 0 ../../../manual/clients/vector.cpp:9:5 main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 42089f + 420410 __libc_start_main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401b6d + 401b40 _start vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + +vector_static_g 267677 267677 9952.375341098 + cycles: 522593 + + 41b4b6 + 41b3b0 __hypot_finite vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 417a57 + 417a40 __hypot vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401585 /usr/include/c++/9.1.0/bits/stl_algo.h:4449:13 + 40152b /usr/include/c++/9.1.0/bits/stl_algo.h:4441:5 std::generate_n<std::back_insert_iterator<std::vector<double> >, int, main()::<lambda()> > vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 40152b ../../../manual/clients/vector.cpp:16:6 + 0 ../../../manual/clients/vector.cpp:9:5 main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 42089f + 420410 __libc_start_main vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + 401b6d + 401b40 _start vector_static_gcc_v9.1.0 /home/milian/projects/kdab/rnd/hotspot/3rdparty/perfparser/tests/auto/perfdata/vector_static_gcc/vector_static_gcc_v9.1.0 + +vector_static_g 267677 267677 9952.375595125 + cycles: 521148 + + ffffffffb700722b + 0 [kernel.kallsyms]_text [kernel] + ffffffffb7008e54 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb71fda00 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb7205d3e + 0 [kernel.kallsyms]_text [kernel] + ffffffffb709628a + 0 [kernel.kallsyms]_text [kernel] + ffffffffb7096a43 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb7096ae4 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb70045b9 + 0 [kernel.kallsyms]_text [kernel] + ffffffffb7a0008c + 0 [kernel.kallsyms]_text [kernel] + |