XCP-ng
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Register
    • Login

    Epyc VM to VM networking slow

    Scheduled Pinned Locked Moved Compute
    264 Posts 29 Posters 215.5k Views 30 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • bullerwinsB Offline
      bullerwins @olivierlambert
      last edited by bullerwins

      hi @olivierlambert ! it's the nomenclature @bleader used in the report table, sorry for the misunderstanding:
      https://xcp-ng.org/forum/post/67750

      v2m 1 thread: throughput / cpu usage from xentop³
      v2m 4 threads: throughput / cpu usage from xentop³
      h2m 1 thread: througput / cpu usage from xentop³
      h2m 4 threads: througput / cpu usage from xentop³
      

      it's vm to vm and host (dom0) to vm.

      Btw I'm super happy to do any more test that could help, with different kernels, OS's, xcp ng versions... whatever you need.

      PS: vm to host resulted in unreachable host even though I could ping from vm to host just fine, I checked the iptables are blocked for the iperf port but open to ping, but I didn't want to mess with dom0.

      1 Reply Last reply Reply Quote 0
      • G Offline
        G-Ork
        last edited by

        Just for completeness. I have the same issue with older AMD 6380 Opterons. The same hardware had full speed on esxi hypervisor. Also have full speed using harvester / rancher. I'm using xcp-ng for more than two years and have that issue since day one.

        -----------------------------------------------------------
        Server listening on 5201 (test #1 - dom0 to workstation)
        -----------------------------------------------------------
        [ ID] Interval           Transfer     Bitrate
        [  5]   0.00-10.00  sec  10.8 GBytes  9.29 Gbits/sec                  receiver
        -----------------------------------------------------------
        Server listening on 5201 (test #2 - vm to workstation)
        -----------------------------------------------------------
        [ ID] Interval           Transfer     Bitrate
        [  5]   0.00-10.00  sec  3.18 GBytes  2.73 Gbits/sec                  receiver
        -----------------------------------------------------------
        Server listening on 5201 (test #3 dom0 to vm)
        -----------------------------------------------------------
        [ ID] Interval           Transfer     Bandwidth       
        [  4]   0.00-10.00  sec  2.23 GBytes  1.91 Gbits/sec                  receiver
        -----------------------------------------------------------
        Server listening on 5201 (test #4 vom to vm)
        -----------------------------------------------------------
        [ ID] Interval           Transfer     Bitrate
        [  5]   0.00-10.00  sec  1.97 GBytes  1.69 Gbits/sec                  receiver
        -----------------------------------------------------------
        
        1 Reply Last reply Reply Quote 1
        • P Offline
          probain
          last edited by

          I ran these tests now that newer updates have been released for 8.3-beta.
          Results are as below:

          • iperf-sender -> iperf-receiver: 5.06Gbit/s
          • iperf-sender -> iperf-receiver -P4: 7.53Gbit/s
          • host -> iperf-receiver: 7.83Gbit/s
          • host -> iperf-receiver -P4: 13.0Gbit/s

          Host (dom0):

          • CPU: AMD EPYC 7302P
          • Sockets: 1
          • RAM: 6.59GB (dom0) / 112GB for VMs
          • MotherBoard: H12SSL-i
          • NIC: X540-AT2 (rev 01)

          xl info -n

          host                   : xcp
          release                : 4.19.0+1
          version                : #1 SMP Mon Jun 24 17:20:04 CEST 2024
          machine                : x86_64
          nr_cpus                : 32
          max_cpu_id             : 31
          nr_nodes               : 1
          cores_per_socket       : 16
          threads_per_core       : 2
          cpu_mhz                : 2999.997
          hw_caps                : 178bf3ff:7ed8320b:2e500800:244037ff:0000000f:219c91a9:00400004:00000780
          virt_caps              : pv hvm hvm_directio pv_directio hap gnttab-v1 gnttab-v2
          total_memory           : 114549
          free_memory            : 62685
          sharing_freed_memory   : 0
          sharing_used_memory    : 0
          outstanding_claims     : 0
          free_cpus              : 0
          cpu_topology           :
          cpu:    core    socket     node
            0:       0        0        0
            1:       0        0        0
            2:       1        0        0
            3:       1        0        0
            4:       4        0        0
            5:       4        0        0
            6:       5        0        0
            7:       5        0        0
            8:       8        0        0
            9:       8        0        0
           10:       9        0        0
           11:       9        0        0
           12:      12        0        0
           13:      12        0        0
           14:      13        0        0
           15:      13        0        0
           16:      16        0        0
           17:      16        0        0
           18:      17        0        0
           19:      17        0        0
           20:      20        0        0
           21:      20        0        0
           22:      21        0        0
           23:      21        0        0
           24:      24        0        0
           25:      24        0        0
           26:      25        0        0
           27:      25        0        0
           28:      28        0        0
           29:      28        0        0
           30:      29        0        0
           31:      29        0        0
          device topology        :
          device           node
          No device topology data available
          numa_info              :
          node:    memsize    memfree    distances
             0:    115955      62685      10
          xen_major              : 4
          xen_minor              : 17
          xen_extra              : .4-3
          xen_version            : 4.17.4-3
          xen_caps               : xen-3.0-x86_64 hvm-3.0-x86_32 hvm-3.0-x86_32p hvm-3.0-x86_64
          xen_scheduler          : credit
          xen_pagesize           : 4096
          platform_params        : virt_start=0xffff800000000000
          xen_changeset          : d530627aaa9b, pq 7587628e7d91
          xen_commandline        : dom0_mem=6752M,max:6752M watchdog ucode=scan dom0_max_vcpus=1-16 crashkernel=256M,below=4G console=vga vga=mode-0x0311
          cc_compiler            : gcc (GCC) 11.2.1 20210728 (Red Hat 11.2.1-1)
          cc_compile_by          : mockbuild
          cc_compile_domain      : [unknown]
          cc_compile_date        : Thu Jun 20 18:17:10 CEST 2024
          build_id               : 9497a1ec7ec99f5075421732b0ec37781ba739a9
          xend_config_format     : 4
          

          VMs - Sender and Receiver

          • Distro: Ubuntu 24.04
          • Kernel: 6.8.0-36-generic #36-Ubuntu SMP PREEMPT_DYNAMIC
          • vCPUs: 32
          • RAM: 4GB
          bullerwinsB 1 Reply Last reply Reply Quote 0
          • bullerwinsB Offline
            bullerwins @probain
            last edited by

            @probain said in Epyc VM to VM networking slow:

            I ran these tests now that newer updates have been released for 8.3-beta.
            Results are as below:

            • iperf-sender -> iperf-receiver: 5.06Gbit/s
            • iperf-sender -> iperf-receiver -P4: 7.53Gbit/s
            • host -> iperf-receiver: 7.83Gbit/s
            • host -> iperf-receiver -P4: 13.0Gbit/s

            Host (dom0):

            • CPU: AMD EPYC 7302P
            • Sockets: 1
            • RAM: 6.59GB (dom0) / 112GB for VMs
            • MotherBoard: H12SSL-i
            • NIC: X540-AT2 (rev 01)

            xl info -n

            host                   : xcp
            release                : 4.19.0+1
            version                : #1 SMP Mon Jun 24 17:20:04 CEST 2024
            machine                : x86_64
            nr_cpus                : 32
            max_cpu_id             : 31
            nr_nodes               : 1
            cores_per_socket       : 16
            threads_per_core       : 2
            cpu_mhz                : 2999.997
            hw_caps                : 178bf3ff:7ed8320b:2e500800:244037ff:0000000f:219c91a9:00400004:00000780
            virt_caps              : pv hvm hvm_directio pv_directio hap gnttab-v1 gnttab-v2
            total_memory           : 114549
            free_memory            : 62685
            sharing_freed_memory   : 0
            sharing_used_memory    : 0
            outstanding_claims     : 0
            free_cpus              : 0
            cpu_topology           :
            cpu:    core    socket     node
              0:       0        0        0
              1:       0        0        0
              2:       1        0        0
              3:       1        0        0
              4:       4        0        0
              5:       4        0        0
              6:       5        0        0
              7:       5        0        0
              8:       8        0        0
              9:       8        0        0
             10:       9        0        0
             11:       9        0        0
             12:      12        0        0
             13:      12        0        0
             14:      13        0        0
             15:      13        0        0
             16:      16        0        0
             17:      16        0        0
             18:      17        0        0
             19:      17        0        0
             20:      20        0        0
             21:      20        0        0
             22:      21        0        0
             23:      21        0        0
             24:      24        0        0
             25:      24        0        0
             26:      25        0        0
             27:      25        0        0
             28:      28        0        0
             29:      28        0        0
             30:      29        0        0
             31:      29        0        0
            device topology        :
            device           node
            No device topology data available
            numa_info              :
            node:    memsize    memfree    distances
               0:    115955      62685      10
            xen_major              : 4
            xen_minor              : 17
            xen_extra              : .4-3
            xen_version            : 4.17.4-3
            xen_caps               : xen-3.0-x86_64 hvm-3.0-x86_32 hvm-3.0-x86_32p hvm-3.0-x86_64
            xen_scheduler          : credit
            xen_pagesize           : 4096
            platform_params        : virt_start=0xffff800000000000
            xen_changeset          : d530627aaa9b, pq 7587628e7d91
            xen_commandline        : dom0_mem=6752M,max:6752M watchdog ucode=scan dom0_max_vcpus=1-16 crashkernel=256M,below=4G console=vga vga=mode-0x0311
            cc_compiler            : gcc (GCC) 11.2.1 20210728 (Red Hat 11.2.1-1)
            cc_compile_by          : mockbuild
            cc_compile_domain      : [unknown]
            cc_compile_date        : Thu Jun 20 18:17:10 CEST 2024
            build_id               : 9497a1ec7ec99f5075421732b0ec37781ba739a9
            xend_config_format     : 4
            

            VMs - Sender and Receiver

            • Distro: Ubuntu 24.04
            • Kernel: 6.8.0-36-generic #36-Ubuntu SMP PREEMPT_DYNAMIC
            • vCPUs: 32
            • RAM: 4GB

            have you tested without the 8.3 updates? The results seem still low. Any improvement?

            P 1 Reply Last reply Reply Quote 0
            • P Offline
              probain @bullerwins
              last edited by

              @bullerwins Unfortunately I didn't. In hindsight I wish I did.

              J 1 Reply Last reply Reply Quote 0
              • J Offline
                JamesG @probain
                last edited by

                These latest 8.3 update speeds are still slower than a 13 year-old Xeon E3 1230.

                1 Reply Last reply Reply Quote 1
                • S Offline
                  Seneram
                  last edited by

                  I can unfortunately share that from ongoing ticket investigations in this, It is far more deeply rooted than something that a patch of going from one major kernel to another will "just fix" There are multiple leads being investigated and multiple vendors involved.

                  1 Reply Last reply Reply Quote 0
                  • olivierlambertO Offline
                    olivierlambert Vates 🪐 Co-Founder CEO
                    last edited by

                    I'd like to check something to see if it's coherent with our tests, by using 2x similar VMs (4vCPUs/4G RAM):

                    • iperf monothread speed on a "fresh" Debian 10 install (4.19 kernel)
                    • the same bench with 5.10.0 kernel from backports (add deb http://deb.debian.org/debian buster-backports main contrib non-free in your source list and then apt install linux-image-5.10, don't forget to reboot to be on that kernel)

                    Do you see a performance diff between those?

                    J 1 Reply Last reply Reply Quote 0
                    • J Offline
                      john.c @olivierlambert
                      last edited by

                      @olivierlambert said in Epyc VM to VM networking slow:

                      I'd like to check something to see if it's coherent with our tests, by using 2x similar VMs (4vCPUs/4G RAM):

                      • iperf monothread speed on a "fresh" Debian 10 install (4.19 kernel)
                      • the same bench with 5.10.0 kernel from backports (add deb http://deb.debian.org/debian buster-backports main contrib non-free in your source list and then apt install linux-image-5.10, don't forget to reboot to be on that kernel)

                      Do you see a performance diff between those?

                      FYI, getting a Debian 10 backports or non-backports packages are going to now be extremely difficult. The Debian Linux 10 LTS has reached EOL. Now currently in ELTS from the beginning of this month until 30/06/2029, though covering only a subset of the packages.

                      https://www.debian.org/News/2024/20240615

                      1 Reply Last reply Reply Quote 0
                      • olivierlambertO Offline
                        olivierlambert Vates 🪐 Co-Founder CEO
                        last edited by

                        I had no issue to test it quickly. The thing is for the sake of testing and try to identify a potential regression, not for production usage or whatnot.

                        1 Reply Last reply Reply Quote 0
                        • olivierlambertO Offline
                          olivierlambert Vates 🪐 Co-Founder CEO
                          last edited by olivierlambert

                          I identified a specific regression in a Debian kernel build since 5.10, we are investigating the "why" (starting from this exact build: https://snapshot.debian.org/package/linux/5.10.92-1/)

                          1 Reply Last reply Reply Quote 2
                          • P Offline
                            probain
                            last edited by

                            @olivierlambert
                            Would it be possible for you to either offer a ISO to download? Or maybe seed one? I really want to help test this. But I'm getting lost with how Debian provides their legacy images and this jig-boo (intentionally misspelled) 😞

                            olivierlambertO 1 Reply Last reply Reply Quote 0
                            • G Offline
                              G-Ork @alex821982
                              last edited by

                              May someone could graph their vm.
                              Comparing a slow vm with a full speed could bring light into darknes.

                              https://www.brendangregg.com/Articles/Linux_Kernel_Performance_Flame_Graphs.pdf

                              1 Reply Last reply Reply Quote 0
                              • olivierlambertO Offline
                                olivierlambert Vates 🪐 Co-Founder CEO @probain
                                last edited by

                                @probain Debian 10 is available in the XOA Hub.

                                P 1 Reply Last reply Reply Quote 1
                                • P Offline
                                  probain @olivierlambert
                                  last edited by probain

                                  @olivierlambert
                                  I wasn't aware. Thanks! Downloading for doing a test, right away

                                  Test done:

                                  				Run1	Run2	Run3
                                  Sender:   Debian10 kernel 4.19	4.81Gb	4.81Gb	4.83Gb
                                  Reveiver: Debian10 kernel 4.19
                                  
                                  Sender:   Debian10 kernel 5.10	5.13Gb	5.02Gb	5.12Gb
                                  Reveiver: Debian10 kernel 4.19
                                  
                                  Sender:   Debian10 kernel 5.10	4.98Gb	5.02Gb	4.97Gb
                                  Reveiver: Debian10 kernel 5.10
                                  

                                  sender runs 'iperf -c <IP-to-receiver> -t 60'

                                  Kernel 4.19 = 4.19.0-6-amd64
                                  Kernel 5.10 = 5.10.0-0.deb10.24-amd64

                                  CPU 4 cores (AMD EPYC 7302P)
                                  RAM 4GB

                                  Created from XOA-hub

                                  1 Reply Last reply Reply Quote 0
                                  • olivierlambertO Offline
                                    olivierlambert Vates 🪐 Co-Founder CEO
                                    last edited by olivierlambert

                                    Thanks @probain , now can you try iperf -s in the Dom0 and iperf -c <IP dom0> in the Debian guest?

                                    P 1 Reply Last reply Reply Quote 0
                                    • P Offline
                                      probain @olivierlambert
                                      last edited by

                                      @olivierlambert
                                      vm -> dom0 results in "no route to host": firewall?

                                      Results will be shown for dom0 -> vm. Listed by each kernel installed on vm.

                                      Just as earlier. VM is installed via XOA Hub, with 4 CPU and 4GB RAM. Host CPU running on AMD EPYC 7302P.

                                      VM kernel ver.	Run1	Run2	Run3
                                      kernel 4.19.0	8.47Gb	8.82Gb	8.43Gb
                                      kernel 5.10.0	7.12Gb	7.07Gb	7.11Gb
                                      
                                      1 Reply Last reply Reply Quote 0
                                      • olivierlambertO Offline
                                        olivierlambert Vates 🪐 Co-Founder CEO
                                        last edited by

                                        yes disable the fw first (only in a testing lab obviously) with iptables -F

                                        P 1 Reply Last reply Reply Quote 0
                                        • P Offline
                                          probain @olivierlambert
                                          last edited by probain

                                          @olivierlambert how do I restore the iptables again afterwards? Other than reboot ofc 😋

                                          Update: Tests done

                                          vm -> dom0
                                          
                                          		Run1	Run2	Run3
                                          kernel 4.19.0	5.84Gb	5.77Gb	5.85Gb
                                          kernel 5.10.0	1.25Gb	1.26Gb	1.28
                                          

                                          Specs are just as previous post.

                                          G 1 Reply Last reply Reply Quote 0
                                          • olivierlambertO Offline
                                            olivierlambert Vates 🪐 Co-Founder CEO
                                            last edited by

                                            Thanks so at least it confirms something we are also spotting in here. We found the exact commit.

                                            L 1 Reply Last reply Reply Quote 1

                                            Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                            Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                            With your input, this post could be even better 💗

                                            Register Login
                                            • First post
                                              Last post