intel / intel/gprofiler

tests: perf various combinations of test_perf_fp_dwarf_smart collapsed differ on aarch64

Open
#746 1 comment 0 reactions 0 assignees View on GitHub
aarch64 runtime/perf tests
Dominant language
Python
Stars
826
Forks
79
PR merge metrics
No merged PRs in 30d

Description

Failing tests:
```
FAILED tests/test_perf.py::test_perf_fp_dwarf_smart[True-fp-native_fp] - AssertionError: assert (True ^ True)
FAILED tests/test_perf.py::test_perf_fp_dwarf_smart[True-dwarf-native_fp] - AssertionError: function ';recursive;recursive;recursive;recursive;' missing in collapsed data!
FAILED tests/test_perf.py::test_perf_fp_dwarf_smart[True-dwarf-native_dwarf] - AssertionError: assert (False ^ False)
FAILED tests/test_perf.py::test_perf_fp_dwarf_smart[True-smart-native_dwarf] - AssertionError: assert (False ^ False)
```
Exemplary output:
```
system_profiler = , application_pid = 1478804, runtime = 'native_dwarf', perf_mode = 'smart', application_docker_container =

@pytest.mark.parametrize("runtime", ["native_fp", "native_dwarf"])
@pytest.mark.parametrize("perf_mode", ["fp", "dwarf", "smart"])
@pytest.mark.parametrize("in_container", [True]) # native app is built only for container
def test_perf_fp_dwarf_smart(
system_profiler: SystemProfiler,
application_pid: int,
runtime: str,
perf_mode: str,
application_docker_container: Container,
) -> None:
with system_profiler as profiler:
process_profile = snapshot_pid_profile(profiler, application_pid)
process_collapsed = process_profile.stacks
with open("perf.txt","a") as f:
f.write(str(process_collapsed))
f.write("")
if runtime == "native_dwarf":
# app is built with DWARF info and without FP, so we expect to see a callstack only in DWARF or smart modes.
> assert is_function_in_collapsed(";recursive;recursive;recursive;recursive;", process_collapsed) ^ bool(
perf_mode not in ("dwarf", "smart")
)
E AssertionError: assert (False ^ False)
E + where False = is_function_in_collapsed(';recursive;recursive;recursive;recursive;', Counter({'native;_start;recursive': 90}))
E + and False = bool('smart' not in ('dwarf', 'smart'))

tests/test_perf.py:66: AssertionError
```

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.