Draft: freedreno/drm: Add syscall stats
For $reasons I found myself in need of a way to collect some stats on # of syscalls per frame for different workloads..
Results from a few frames at steady state (ie. not startup):
gl_driver2:
mmap=0 gem_close=0 gem_open=0 gem_flink=0 prime_fd_to_handle=0 prime_handle_to_fd=0 msm_get_param=0 msm_gem_new=0 msm_gem_info=0 msm_gem_cpu_prep=0 msm_gem_cpu_fini=0 msm_gem_madvise_willneed=31 msm_gem_madvise_dontneed=9 msm_gem_submit=1 msm_submitqueue_close=0 msm_submitqueue_new=0 msm_submitqueue_query=0 msm_wait_fence=0
mmap=0 gem_close=0 gem_open=0 gem_flink=0 prime_fd_to_handle=0 prime_handle_to_fd=0 msm_get_param=0 msm_gem_new=0 msm_gem_info=0 msm_gem_cpu_prep=0 msm_gem_cpu_fini=0 msm_gem_madvise_willneed=32 msm_gem_madvise_dontneed=44 msm_gem_submit=2 msm_submitqueue_close=0 msm_submitqueue_new=0 msm_submitqueue_query=0 msm_wait_fence=0
mmap=0 gem_close=0 gem_open=0 gem_flink=0 prime_fd_to_handle=0 prime_handle_to_fd=0 msm_get_param=0 msm_gem_new=0 msm_gem_info=0 msm_gem_cpu_prep=0 msm_gem_cpu_fini=0 msm_gem_madvise_willneed=32 msm_gem_madvise_dontneed=32 msm_gem_submit=1 msm_submitqueue_close=0 msm_submitqueue_new=0 msm_submitqueue_query=0 msm_wait_fence=0
gl_manhattan:
mmap=0 gem_close=0 gem_open=0 gem_flink=0 prime_fd_to_handle=0 prime_handle_to_fd=0 msm_get_param=0 msm_gem_new=0 msm_gem_info=0 msm_gem_cpu_prep=8 msm_gem_cpu_fini=0 msm_gem_madvise_willneed=169 msm_gem_madvise_dontneed=161 msm_gem_submit=4 msm_submitqueue_close=0 msm_submitqueue_new=0 msm_submitqueue_query=0 msm_wait_fence=1
mmap=0 gem_close=0 gem_open=0 gem_flink=0 prime_fd_to_handle=0 prime_handle_to_fd=0 msm_get_param=0 msm_gem_new=0 msm_gem_info=0 msm_gem_cpu_prep=8 msm_gem_cpu_fini=0 msm_gem_madvise_willneed=169 msm_gem_madvise_dontneed=161 msm_gem_submit=4 msm_submitqueue_close=0 msm_submitqueue_new=0 msm_submitqueue_query=0 msm_wait_fence=1
mmap=0 gem_close=0 gem_open=0 gem_flink=0 prime_fd_to_handle=0 prime_handle_to_fd=0 msm_get_param=0 msm_gem_new=0 msm_gem_info=0 msm_gem_cpu_prep=8 msm_gem_cpu_fini=0 msm_gem_madvise_willneed=169 msm_gem_madvise_dontneed=161 msm_gem_submit=4 msm_submitqueue_close=0 msm_submitqueue_new=0 msm_submitqueue_query=0 msm_wait_fence=1
gl_manhattan31:
mmap=0 gem_close=0 gem_open=0 gem_flink=0 prime_fd_to_handle=0 prime_handle_to_fd=0 msm_get_param=0 msm_gem_new=0 msm_gem_info=0 msm_gem_cpu_prep=8 msm_gem_cpu_fini=0 msm_gem_madvise_willneed=205 msm_gem_madvise_dontneed=200 msm_gem_submit=5 msm_submitqueue_close=0 msm_submitqueue_new=0 msm_submitqueue_query=0 msm_wait_fence=1
mmap=0 gem_close=0 gem_open=0 gem_flink=0 prime_fd_to_handle=0 prime_handle_to_fd=0 msm_get_param=0 msm_gem_new=0 msm_gem_info=0 msm_gem_cpu_prep=8 msm_gem_cpu_fini=0 msm_gem_madvise_willneed=205 msm_gem_madvise_dontneed=204 msm_gem_submit=6 msm_submitqueue_close=0 msm_submitqueue_new=0 msm_submitqueue_query=0 msm_wait_fence=1
mmap=0 gem_close=0 gem_open=0 gem_flink=0 prime_fd_to_handle=0 prime_handle_to_fd=0 msm_get_param=0 msm_gem_new=0 msm_gem_info=0 msm_gem_cpu_prep=8 msm_gem_cpu_fini=0 msm_gem_madvise_willneed=205 msm_gem_madvise_dontneed=204 msm_gem_submit=6 msm_submitqueue_close=0 msm_submitqueue_new=0 msm_submitqueue_query=0 msm_wait_fence=1
gl_trex:
mmap=0 gem_close=0 gem_open=0 gem_flink=0 prime_fd_to_handle=0 prime_handle_to_fd=0 msm_get_param=0 msm_gem_new=0 msm_gem_info=0 msm_gem_cpu_prep=0 msm_gem_cpu_fini=0 msm_gem_madvise_willneed=30 msm_gem_madvise_dontneed=26 msm_gem_submit=4 msm_submitqueue_close=0 msm_submitqueue_new=0 msm_submitqueue_query=0 msm_wait_fence=1
mmap=0 gem_close=0 gem_open=0 gem_flink=0 prime_fd_to_handle=0 prime_handle_to_fd=0 msm_get_param=0 msm_gem_new=0 msm_gem_info=0 msm_gem_cpu_prep=0 msm_gem_cpu_fini=0 msm_gem_madvise_willneed=30 msm_gem_madvise_dontneed=26 msm_gem_submit=3 msm_submitqueue_close=0 msm_submitqueue_new=0 msm_submitqueue_query=0 msm_wait_fence=1
mmap=0 gem_close=0 gem_open=0 gem_flink=0 prime_fd_to_handle=0 prime_handle_to_fd=0 msm_get_param=0 msm_gem_new=0 msm_gem_info=0 msm_gem_cpu_prep=0 msm_gem_cpu_fini=0 msm_gem_madvise_willneed=30 msm_gem_madvise_dontneed=26 msm_gem_submit=4 msm_submitqueue_close=0 msm_submitqueue_new=0 msm_submitqueue_query=0 msm_wait_fence=1