{"id":2198,"date":"2024-03-24T20:26:47","date_gmt":"2024-03-24T20:26:47","guid":{"rendered":"https:\/\/mvermeulen.org\/perf\/?page_id=2198"},"modified":"2024-03-29T10:43:58","modified_gmt":"2024-03-29T10:43:58","slug":"synthmark","status":"publish","type":"page","link":"https:\/\/mvermeulen.org\/perf\/workloads\/phoronix\/synthmark\/","title":{"rendered":"synthmark"},"content":{"rendered":"\n<p>A cross-platform tool for measuring audio workloads. There is one workload which looks to be single threaded.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1280\" height=\"960\" src=\"https:\/\/mvermeulen.org\/perf\/wp-content\/uploads\/sites\/7\/2024\/03\/systemtime-49.png\" alt=\"\" class=\"wp-image-2236\" srcset=\"https:\/\/mvermeulen.org\/perf\/wp-content\/uploads\/sites\/7\/2024\/03\/systemtime-49.png 1280w, https:\/\/mvermeulen.org\/perf\/wp-content\/uploads\/sites\/7\/2024\/03\/systemtime-49-1024x768.png 1024w, https:\/\/mvermeulen.org\/perf\/wp-content\/uploads\/sites\/7\/2024\/03\/systemtime-49-768x576.png 768w\" sizes=\"auto, (max-width: 1280px) 100vw, 1280px\" \/><\/figure>\n\n\n\n<p>Topdown profile shows backend stalls with moderate retirement rate.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1280\" height=\"960\" src=\"https:\/\/mvermeulen.org\/perf\/wp-content\/uploads\/sites\/7\/2024\/03\/amdtopdown-52.png\" alt=\"\" class=\"wp-image-2238\" srcset=\"https:\/\/mvermeulen.org\/perf\/wp-content\/uploads\/sites\/7\/2024\/03\/amdtopdown-52.png 1280w, https:\/\/mvermeulen.org\/perf\/wp-content\/uploads\/sites\/7\/2024\/03\/amdtopdown-52-1024x768.png 1024w, https:\/\/mvermeulen.org\/perf\/wp-content\/uploads\/sites\/7\/2024\/03\/amdtopdown-52-768x576.png 768w\" sizes=\"auto, (max-width: 1280px) 100vw, 1280px\" \/><\/figure>\n\n\n\n<p>AMD metrics show this is floating point code with little L2 access. Backend stalls are predominately cpu.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>elapsed              105.650\non_cpu               0.036          # 0.57 \/ 16 cores\nutime                59.273\nstime                0.775\nnvcsw                39756          # 98.71%\nnivcsw               520            # 1.29%\ninblock              0              # 0.00\/sec\nonblock              12616          # 119.41\/sec\ncpu-clock            59468938031    # 59.469 seconds\ntask-clock           59564726441    # 59.565 seconds\npage faults          148007         # 2484.810\/sec\ncontext switches     40634          # 682.182\/sec\ncpu migrations       266            # 4.466\/sec\nmajor page faults    2              # 0.034\/sec\nminor page faults    148005         # 2484.776\/sec\nalignment faults     0              # 0.000\/sec\nemulation faults     0              # 0.000\/sec\nbranches             46871894861    # 94.897 branches per 1000 inst\nbranch misses        187526606      # 0.40% branch miss\nconditional          41996871126    # 85.027 conditional branches per 1000 inst\nindirect             587231450      # 1.189 indirect branches per 1000 inst\ncpu-cycles           219250853248   # 0.13 GHz\ninstructions         490086343965   # 2.24 IPC\nslots                452434780902   #\nretiring             182227594048   # 40.3% (40.3%)\n-- ucode             10336777       #     0.0%\n-- fastpath          182217257271   #    40.3%\nfrontend             12201066081    #  2.7% ( 2.7%) low\n-- latency           9700517124     #     2.1%\n-- bandwidth         2500548957     #     0.6%\nbackend              253663365606   # 56.1% (56.1%)\n-- cpu               205857012827   #    45.5%\n-- memory            47806352779    #    10.6%\nspeculation          4294709493     #  0.9% ( 0.9%) low\n-- branch mispredict 4276264787     #     0.9%\n-- pipeline restart  18444706       #     0.0%\nsmt-contention       47790388       #  0.0% ( 0.0%)\ncpu-cycles           220389252277   # 0.12 GHz\ninstructions         491261399409   # 2.23 IPC\ninstructions         166182218490   # 6.943 l2 access per 1000 inst\nl2 hit from l1       1005763349     # 8.68% l2 miss\nl2 miss from l1      36107522       #\nl2 hit from l2 pf    84030790       #\nl3 hit from l2 pf    6436841        #\nl3 miss from l2 pf   57623846       #\ninstructions         165786840036   # 464.715 float per 1000 inst\nfloat 512            56             # 0.000 AVX-512 per 1000 inst\nfloat 256            588            # 0.000 AVX-256 per 1000 inst\nfloat 128            77043622264    # 464.715 AVX-128 per 1000 inst\nfloat MMX            0              # 0.000 MMX per 1000 inst\nfloat scalar         0              # 0.000 scalar per 1000 inst\ninstructions         494497368571   #\nopcache              58120077674    # 117.534 opcache per 1000 inst\nopcache miss         779212981      #  1.3% opcache miss rate\nl1 dTLB miss         71054834       # 0.144 L1 dTLB per 1000 inst\nl2 dTLB miss         8664683        # 0.018 L2 dTLB per 1000 inst\ninstructions         494052603367   #\nicache               1709122309     # 3.459 icache per 1000 inst\nicache miss          280563902      # 16.4% icache miss rate\nl1 iTLB miss         8377213        # 0.017 L1 iTLB per 1000 inst\nl2 iTLB miss         0              # 0.000 L2 iTLB per 1000 inst\ntlb flush            16750          # 0.000 TLB flush per 1000 inst\n<\/code><\/pre>\n\n\n\n<p>Intel metrics<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>elapsed              104.668\non_cpu               0.036          # 0.58 \/ 16 cores\nutime                56.342\nstime                4.307\nnvcsw                48139          # 99.77%\nnivcsw               113            # 0.23%\ninblock              1560           # 14.90\/sec\nonblock              1336           # 12.76\/sec\ncpu-clock            59989924129    # 59.990 seconds\ntask-clock           60026167216    # 60.026 seconds\npage faults          84456          # 1406.986\/sec\ncontext switches     48610          # 809.813\/sec\ncpu migrations       283            # 4.715\/sec\nmajor page faults    7              # 0.117\/sec\nminor page faults    84449          # 1406.870\/sec\nalignment faults     0              # 0.000\/sec\nemulation faults     0              # 0.000\/sec\nbranches             45363872451    # 93.602 branches per 1000 inst\nbranch misses        107504576      # 0.24% branch miss\nconditional          45363882499    # 93.602 conditional branches per 1000 inst\nindirect             600244067      # 1.239 indirect branches per 1000 inst\nslots                1343249001602  #\nretiring             478430720105   # 35.6% (35.6%)\n-- ucode             52612206079    #     3.9%\n-- fastpath          425818514026   #    31.7%\nfrontend             121893034355   #  9.1% ( 9.1%)\n-- latency           109851965797   #     8.2%\n-- bandwidth         12041068558    #     0.9%\nbackend              685820239852   # 51.1% (51.1%)\n-- cpu               556592250765   #    41.4%\n-- memory            129227989087   #     9.6%\nspeculation          58889001730    #  4.4% ( 4.4%)\n-- branch mispredict 58820241539    #     4.4%\n-- pipeline restart  68760191       #     0.0%\nsmt-contention       0              #  0.0% ( 0.0%)\ncpu-cycles           223946804452   # 0.13 GHz\ninstructions         484698306885   # 2.16 IPC\nl2 access            3201126251     # 6.613 l2 access per 1000 inst\nl2 miss              556105648      # 17.37% l2 miss\ncpu-cycles           222652406059   # 10.1% memory latency\nload stalls          22427575661    #  5.2% l1 bound\nl1 miss              10820364309    #  4.6% l2 bound\nl2 miss              646810658      #  0.2% l3 bound\nl3 miss              172145664      #  0.1% dram bound\nstore_stalls         44575849       #  0.0% store bound\n<\/code><\/pre>\n\n\n\n<p>Process summary<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>360 processes\n\t  9 synthmark.app          177.88     0.39\n\t 68 clinfo                  17.79     5.66\n\t 38 vulkaninfo               0.95     1.53\n\t  6 glxinfo:gdrv0            0.15     0.06\n\t  6 glxinfo:gl0              0.15     0.06\n\t  4 vulkani:disk$0           0.10     0.17\n\t  6 clang                    0.08     0.04\n\t  2 glxinfo                  0.07     0.03\n\t  2 glxinfo:cs0              0.07     0.02\n\t  2 glxinfo:disk$0           0.07     0.02\n\t  2 glxinfo:sh0              0.07     0.02\n\t  2 glxinfo:shlo0            0.07     0.02\n\t  2 llvmpipe-0               0.05     0.09\n\t  2 llvmpipe-1               0.05     0.09\n\t  2 llvmpipe-10              0.05     0.09\n\t  2 llvmpipe-11              0.05     0.09\n\t  2 llvmpipe-12              0.05     0.09\n\t  2 llvmpipe-13              0.05     0.09\n\t  2 llvmpipe-14              0.05     0.09\n\t  2 llvmpipe-15              0.05     0.09\n\t  2 llvmpipe-2               0.05     0.09\n\t  2 llvmpipe-3               0.05     0.09\n\t  2 llvmpipe-4               0.05     0.09\n\t  2 llvmpipe-5               0.05     0.09\n\t  2 llvmpipe-6               0.05     0.09\n\t  2 llvmpipe-7               0.05     0.09\n\t  2 llvmpipe-8               0.05     0.09\n\t  2 llvmpipe-9               0.05     0.09\n\t  6 php                      0.04     0.09\n\t  3 rocminfo                 0.03     0.00\n\t  1 lspci                    0.00     0.02\n\t  1 ps                       0.00     0.01\n\t 82 sh                       0.00     0.00\n\t 13 gcc                      0.00     0.00\n\t 12 gsettings                0.00     0.00\n\t  8 stat                     0.00     0.00\n\t  8 systemd-detect-          0.00     0.00\n\t  6 llvm-link                0.00     0.00\n\t  5 phoronix-test-s          0.00     0.00\n\t  3 gmain                    0.00     0.00\n\t  3 synthmark                0.00     0.00\n\t  2 cc                       0.00     0.00\n\t  2 lscpu                    0.00     0.00\n\t  2 uname                    0.00     0.00\n\t  2 which                    0.00     0.00\n\t  2 xset                     0.00     0.00\n\t  1 date                     0.00     0.00\n\t  1 dconf worker             0.00     0.00\n\t  1 dirname                  0.00     0.00\n\t  1 dmesg                    0.00     0.00\n\t  1 dmidecode                0.00     0.00\n\t  1 grep                     0.00     0.00\n\t  1 ifconfig                 0.00     0.00\n\t  1 ip                       0.00     0.00\n\t  1 lsmod                    0.00     0.00\n\t  1 mktemp                   0.00     0.00\n\t  1 qdbus                    0.00     0.00\n\t  1 readlink                 0.00     0.00\n\t  1 realpath                 0.00     0.00\n\t  1 sed                      0.00     0.00\n\t  1 sort                     0.00     0.00\n\t  1 stty                     0.00     0.00\n\t  1 systemctl                0.00     0.00\n\t  1 template.sh              0.00     0.00\n\t  1 wc                       0.00     0.00\n\t  1 xrandr                   0.00     0.00\n0 processes running\n47 maximum processes\n<\/code><\/pre>\n\n\n\n<p>Computation block<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>      98316) synthmark        cpu=12 start=39.59 finish=69.64\n        98317) synthmark.app    cpu=13 start=39.60 finish=69.64\n          98318) synthmark.app    cpu=15 start=39.60 finish=69.60\n            98319) synthmark.app    cpu=0 start=39.60 finish=69.60\n      98320) synthmark        cpu=12 start=73.64 finish=103.69\n        98321) synthmark.app    cpu=5 start=73.65 finish=103.69\n          98322) synthmark.app    cpu=5 start=73.65 finish=103.65\n            98323) synthmark.app    cpu=7 start=73.65 finish=103.65\n<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>A cross-platform tool for measuring audio workloads. There is one workload which looks to be single threaded. Topdown profile shows backend stalls with moderate retirement rate. AMD metrics show this is floating point code with little L2 access. Backend stalls <span class=\"excerpt-dots\">&hellip;<\/span> <a class=\"more-link\" href=\"https:\/\/mvermeulen.org\/perf\/workloads\/phoronix\/synthmark\/\"><span class=\"more-msg\">Continue reading &rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":58,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-2198","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/mvermeulen.org\/perf\/wp-json\/wp\/v2\/pages\/2198","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mvermeulen.org\/perf\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/mvermeulen.org\/perf\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/mvermeulen.org\/perf\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/mvermeulen.org\/perf\/wp-json\/wp\/v2\/comments?post=2198"}],"version-history":[{"count":2,"href":"https:\/\/mvermeulen.org\/perf\/wp-json\/wp\/v2\/pages\/2198\/revisions"}],"predecessor-version":[{"id":2239,"href":"https:\/\/mvermeulen.org\/perf\/wp-json\/wp\/v2\/pages\/2198\/revisions\/2239"}],"up":[{"embeddable":true,"href":"https:\/\/mvermeulen.org\/perf\/wp-json\/wp\/v2\/pages\/58"}],"wp:attachment":[{"href":"https:\/\/mvermeulen.org\/perf\/wp-json\/wp\/v2\/media?parent=2198"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}