{"id":1090,"date":"2024-01-30T00:41:18","date_gmt":"2024-01-30T00:41:18","guid":{"rendered":"https:\/\/mvermeulen.org\/perf\/?page_id=1090"},"modified":"2024-01-30T00:41:19","modified_gmt":"2024-01-30T00:41:19","slug":"rbenchmark","status":"publish","type":"page","link":"https:\/\/mvermeulen.org\/perf\/workloads\/phoronix\/rbenchmark\/","title":{"rendered":"rbenchmark"},"content":{"rendered":"\n<p>A performance benchmark of the R language. Many of the subtests are single-threaded, but also note a few multi-threaded points.<\/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\/01\/systemtime-83.png\" alt=\"\" class=\"wp-image-1091\" srcset=\"https:\/\/mvermeulen.org\/perf\/wp-content\/uploads\/sites\/7\/2024\/01\/systemtime-83.png 1280w, https:\/\/mvermeulen.org\/perf\/wp-content\/uploads\/sites\/7\/2024\/01\/systemtime-83-1024x768.png 1024w, https:\/\/mvermeulen.org\/perf\/wp-content\/uploads\/sites\/7\/2024\/01\/systemtime-83-768x576.png 768w\" sizes=\"auto, (max-width: 1280px) 100vw, 1280px\" \/><\/figure>\n\n\n\n<p>Topdown profile looks lightly scatters, reflecting both multiple tests and short duration.<\/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\/01\/amdtopdown-120.png\" alt=\"\" class=\"wp-image-1092\" srcset=\"https:\/\/mvermeulen.org\/perf\/wp-content\/uploads\/sites\/7\/2024\/01\/amdtopdown-120.png 1280w, https:\/\/mvermeulen.org\/perf\/wp-content\/uploads\/sites\/7\/2024\/01\/amdtopdown-120-1024x768.png 1024w, https:\/\/mvermeulen.org\/perf\/wp-content\/uploads\/sites\/7\/2024\/01\/amdtopdown-120-768x576.png 768w\" sizes=\"auto, (max-width: 1280px) 100vw, 1280px\" \/><\/figure>\n\n\n\n<p>AMD metrics show some floating point, some branches and a somewhat balanced profile between retiring, front end backend and speculation.<\/p>\n\n\n\n<p>Intel metrics<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>elapsed              69.769\non_cpu               0.242          # 3.87 \/ 16 cores\nutime                173.105\nstime                96.605\nnvcsw                3048           # 4.86%\nnivcsw               59637          # 95.14%\ninblock              4528           # 64.90\/sec\nonblock              1392           # 19.95\/sec\ncpu-clock            269706401086   # 269.706 seconds\ntask-clock           269711011581   # 269.711 seconds\npage faults          3317948        # 12301.863\/sec\ncontext switches     62835          # 232.972\/sec\ncpu migrations       344            # 1.275\/sec\nmajor page faults    47             # 0.174\/sec\nminor page faults    3317901        # 12301.689\/sec\nalignment faults     0              # 0.000\/sec\nemulation faults     0              # 0.000\/sec\nbranches             184133716895   # 102.696 branches per 1000 inst\nbranch misses        992138354      # 0.54% branch miss\nconditional          184133731455   # 102.696 conditional branches per 1000 inst\nindirect             43843359937    # 24.452 indirect branches per 1000 inst\nslots                3627619950638  #\nretiring             1831019546226  # 50.5% (50.5%)\n-- ucode             184570243276   #     5.1%\n-- fastpath          1646449302950  #    45.4%\nfrontend             662219274044   # 18.3% (18.3%)\n-- latency           361644077252   #    10.0%\n-- bandwidth         300575196792   #     8.3%\nbackend              919859237753   # 25.4% (25.4%)\n-- cpu               393641110756   #    10.9%\n-- memory            526218126997   #    14.5%\nspeculation          239113814782   #  6.6% ( 6.6%)\n-- branch mispredict 223226958769   #     6.2%\n-- pipeline restart  15886856013    #     0.4%\nsmt-contention       0              #  0.0% ( 0.0%)\ncpu-cycles           636591579145   # 0.58 GHz\ninstructions         1151866319708  # 1.81 IPC\nl2 access            22141924092    # 21.285 l2 access per 1000 inst\nl2 miss              6680701467     # 30.17% l2 miss\n<\/code><\/pre>\n\n\n\n<p>Process summary looks straightforward<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>435 processes\n\t 54 R                     1746.24  1436.80\n\t 68 clinfo                  16.52     6.99\n\t 38 vulkaninfo               0.95     1.34\n\t  6 glxinfo:gdrv0            0.11     0.07\n\t  6 glxinfo:gl0              0.11     0.07\n\t  4 vulkani:disk$0           0.10     0.14\n\t  2 glxinfo                  0.06     0.04\n\t  2 glxinfo:cs0              0.06     0.04\n\t  2 glxinfo:disk$0           0.06     0.04\n\t  2 glxinfo:sh0              0.06     0.04\n\t  2 glxinfo:shlo0            0.06     0.04\n\t  6 php                      0.05     0.09\n\t  6 clang                    0.05     0.07\n\t  2 llvmpipe-0               0.05     0.07\n\t  2 llvmpipe-1               0.05     0.07\n\t  2 llvmpipe-10              0.05     0.07\n\t  2 llvmpipe-11              0.05     0.07\n\t  2 llvmpipe-12              0.05     0.07\n\t  2 llvmpipe-13              0.05     0.07\n\t  2 llvmpipe-14              0.05     0.07\n\t  2 llvmpipe-15              0.05     0.07\n\t  2 llvmpipe-2               0.05     0.07\n\t  2 llvmpipe-3               0.05     0.07\n\t  2 llvmpipe-4               0.05     0.07\n\t  2 llvmpipe-5               0.05     0.07\n\t  2 llvmpipe-6               0.05     0.07\n\t  2 llvmpipe-7               0.05     0.07\n\t  2 llvmpipe-8               0.05     0.07\n\t  2 llvmpipe-9               0.05     0.07\n\t  3 rocminfo                 0.01     0.01\n\t  1 lspci                    0.00     0.02\n\t  1 ps                       0.00     0.01\n\t 90 sh                       0.00     0.00\n\t 12 gcc                      0.00     0.00\n\t  9 gsettings                0.00     0.00\n\t  8 stat                     0.00     0.00\n\t  8 systemd-detect-          0.00     0.00\n\t  8 uname                    0.00     0.00\n\t  8 which                    0.00     0.00\n\t  7 sed                      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  4 gmain                    0.00     0.00\n\t  3 Rscript                  0.00     0.00\n\t  3 dconf worker             0.00     0.00\n\t  3 rbenchmark               0.00     0.00\n\t  3 rm                       0.00     0.00\n\t  2 lscpu                    0.00     0.00\n\t  2 xset                     0.00     0.00\n\t  1 cc                       0.00     0.00\n\t  1 date                     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 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 blocks show successionof invocations of R<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>      1809294) rbenchmark       cpu=13 start=5.47  finish=24.84\n        1809295) which            cpu=6 start=5.47  finish=5.47 \n        1809296) R                cpu=8 start=5.47  finish=24.83\n          1809297) uname            cpu=1 start=5.47  finish=5.48 \n          1809298) R                cpu=10 start=5.48  finish=5.48 \n            1809299) R                cpu=4 start=5.48  finish=5.48 \n            1809300) sed              cpu=1 start=5.48  finish=5.48 \n            1809301) sed              cpu=6 start=5.48  finish=5.48 \n          1809302) R                cpu=2 start=5.49  finish=24.82\n          1809303) R                cpu=4 start=5.49  finish=24.82\n          1809304) R                cpu=1 start=5.49  finish=24.82\n          1809305) R                cpu=6 start=5.49  finish=24.82\n          1809306) R                cpu=3 start=5.49  finish=24.82\n          1809307) R                cpu=0 start=5.49  finish=24.82\n          1809308) R                cpu=13 start=5.49  finish=24.82\n          1809309) R                cpu=15 start=5.49  finish=24.82\n          1809310) R                cpu=12 start=5.49  finish=24.82\n          1809311) R                cpu=10 start=5.49  finish=24.82\n          1809312) R                cpu=14 start=5.49  finish=24.82\n          1809313) R                cpu=9 start=5.49  finish=24.82\n          1809314) R                cpu=11 start=5.49  finish=24.82\n          1809315) R                cpu=8 start=5.49  finish=24.82\n          1809316) R                cpu=5 start=5.49  finish=24.82\n          1809317) sh               cpu=10 start=5.58  finish=5.58 \n            1809318) which            cpu=4 start=5.58  finish=5.58 \n          1809319) sh               cpu=3 start=5.58  finish=5.59 \n            1809320) uname            cpu=14 start=5.59  finish=5.59 \n          1809321) sh               cpu=8 start=24.82 finish=24.82\n            1809322) rm               cpu=9 start=24.82 finish=24.82\n        1809323) Rscript          cpu=2 start=24.84 finish=24.84\n<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>A performance benchmark of the R language. Many of the subtests are single-threaded, but also note a few multi-threaded points. Topdown profile looks lightly scatters, reflecting both multiple tests and short duration. AMD metrics show some floating point, some branches <span class=\"excerpt-dots\">&hellip;<\/span> <a class=\"more-link\" href=\"https:\/\/mvermeulen.org\/perf\/workloads\/phoronix\/rbenchmark\/\"><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-1090","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/mvermeulen.org\/perf\/wp-json\/wp\/v2\/pages\/1090","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=1090"}],"version-history":[{"count":1,"href":"https:\/\/mvermeulen.org\/perf\/wp-json\/wp\/v2\/pages\/1090\/revisions"}],"predecessor-version":[{"id":1093,"href":"https:\/\/mvermeulen.org\/perf\/wp-json\/wp\/v2\/pages\/1090\/revisions\/1093"}],"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=1090"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}