Skip to content

jitdump output not accepted by ARM streamline #62456

@RobertHenry6bev

Description

@RobertHenry6bev

Description

dotnet 6.0 running on ARM64 ubuntu 21.10 linux, with the environment variable DOTNET_PerfMapEnabled=1, produces a jit dump file in /tmp/jit-*.dump as expected.

However, when the ARM Streamline Performance Analyzer v7.7.0 from https://developer.arm.com/tools-and-software/embedded/arm-development-studio/components/streamline-performance-analyzer is given this jitdump file, then streamline complains:

com.arm.streamline.analysis.processor.profile.JITDumpParserException: JIT dump file contains out of order records
at com.arm.streamline.analysis.processor.profile.JITDumpStateBuilder.validateTimestamp(JITDumpStateBuilder.java:614)
at com.arm.streamline.analysis.processor.profile.JITDumpStateBuilder.processRecord(JITDumpStateBuilder.java:598)
at com.arm.streamline.analysis.processor.profile.Profile.lambda$1(Profile.java:70)
at com.arm.streamline.analysis.processor.profile.JITDumpParser.parse(JITDumpParser.java:714)
at com.arm.streamline.analysis.processor.profile.Profile.loadJITDumps(Profile.java:70)
at com.arm.streamline.analysis.processor.profile.Profile.process(Profile.java:187)
at com.arm.streamline.analysis.AnalysisBase.run(AnalysisBase.java:92)
at java.base/java.lang.Thread.run(Thread.java:834)

Reproduction Steps

export DOTNET_PerfMapEnabled=1
perf record --call-graph=fp -k CLOCK_MONOTONIC --count 1 dotnet_aot_binary.x
scp /tmp/jit*.dump perf.data host_with_streamline:.

On the host_with_streamline, run streamline with input from perf.data and analyze that pointing the analyzer to the jitdump file. Observe the thrown exception in streamline's stderr.

Expected behavior

Streamline reads the jitdump file, anid is able to map pc's in dotnet JITted code to meaningful source lines.

Actual behavior

An exception is thrown; streamline continues on in degraded mode, as there are no pc maps.

Regression?

No response

Known Workarounds

No response

Configuration

No response

Other information

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    area-Tracing-coreclrtracking-external-issueThe issue is caused by external problem (e.g. OS) - nothing we can do to fix it directly

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions