Announcement

Collapse
No announcement yet.

Fresh Docker Linux Benchmarks For Summer 2018

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Fresh Docker Linux Benchmarks For Summer 2018

    Phoronix: Fresh Docker Linux Benchmarks For Summer 2018

    Following the recent rounds of Linux distribution benchmarking with Windows Server vs. FreeBSD vs. Linux, Windows vs. Linux laptop benchmarks, and other recent comparisons, one of the latest requests was a fresh look at the performance of different Linux distributions deployed within Docker containers.

    http://www.phoronix.com/vr.php?view=26597

  • #2
    Great to see the real Arch Linux on benchmarks. However, why isn't there a non-Docker "bare-metal reference"?

    Comment


    • #3
      Perhaps Alpine's lack of hugepage support in the stock kernel is hampering "big-data" performance...

      Comment


      • #4
        I just read this and went through the openbenchmarking.org results file.

        I think its great you are looking at container performance. Can't tell you how many crossed eyes I get when I ask a Docker "guru" if they have baselined their solution.

        So please don't see this as criticism, just a perspective..

        - Need non-docker bare metal reference for the Ubuntu host.
        - I assume you ran 1 container that consumed all resources on the host.
        - One test is container scaling, which is easier to orchestrate using kubernetes. Setting the KIO parameter allows you to meter out resources of the host OS.
        - Another test is how many containers a host can handle under load. It's one thing to see if there is a container to host overhead, what happens if you run multiple containers or your pod is made up of only 1 physical host?

        For example, set up 5 docker images, allocate 4x4 via Kubernetes and run your SQL Lite bench in all the containers at the same time.

        if you want to run a 1 node cluster you can use MiniShift instead of RedHat OpenShift.

        This may be beyond the scope of Phoronix, but there may be a way to script inside PTS the creation of a container, allocate its KIO params and trigger a PTS script "inside" the container, collects its results back to the host and continue with the rest of the PTS script at the host. This will provide a repeatable, comparable test result for different OS'es using the same script.

        FWIW: NVidia just announced in June that you can allocate GPU resources in containers. This is big as now any container will be able to access GPU resources for CUDA or OpenCL acceleration.

        Comment


        • #5
          Originally posted by funkboy View Post
          Perhaps Alpine's lack of hugepage support in the stock kernel is hampering "big-data" performance...
          Alpine using musl instead of glibc could also be a factor.

          Comment


          • #6
            Does changing the host from Ubuntu to Clear changes the maximum performance of the containers?

            Comment


            • #7
              Originally posted by andrei_me View Post
              Does changing the host from Ubuntu to Clear changes the maximum performance of the containers?
              I have plans to do such a multi-way comparison.
              Michael Larabel
              http://www.michaellarabel.com/

              Comment


              • #8
                Originally posted by funkboy View Post
                Perhaps Alpine's lack of hugepage support in the stock kernel is hampering "big-data" performance...
                Hugepages have to be configured explicitly, and almost nobody does that. Or are you talking about transparent hugepages?

                Comment


                • #9
                  Originally posted by edwaleni View Post
                  I just read this and went through the openbenchmarking.org results file.

                  I think its great you are looking at container performance. Can't tell you how many crossed eyes I get when I ask a Docker "guru" if they have baselined their solution.

                  So please don't see this as criticism, just a perspective..

                  - Need non-docker bare metal reference for the Ubuntu host.
                  - I assume you ran 1 container that consumed all resources on the host.
                  - One test is container scaling, which is easier to orchestrate using kubernetes. Setting the KIO parameter allows you to meter out resources of the host OS.
                  - Another test is how many containers a host can handle under load. It's one thing to see if there is a container to host overhead, what happens if you run multiple containers or your pod is made up of only 1 physical host?

                  For example, set up 5 docker images, allocate 4x4 via Kubernetes and run your SQL Lite bench in all the containers at the same time.

                  if you want to run a 1 node cluster you can use MiniShift instead of RedHat OpenShift.

                  This may be beyond the scope of Phoronix, but there may be a way to script inside PTS the creation of a container, allocate its KIO params and trigger a PTS script "inside" the container, collects its results back to the host and continue with the rest of the PTS script at the host. This will provide a repeatable, comparable test result for different OS'es using the same script.

                  FWIW: NVidia just announced in June that you can allocate GPU resources in containers. This is big as now any container will be able to access GPU resources for CUDA or OpenCL acceleration.
                  Thanks for that piece. Some good starter info to test getting containers and clustering off the ground for accessible training.

                  And thanks for the benchmark Michael. Certainly compelling reasons to use test Clear over Alpine which was a bit of a standard.

                  Comment


                  • #10
                    Somehow looking at this graphs made we wish for the addition of percentages in the bars and not just absolute numbers.

                    Michael how about this or a qualifier in the graph that shows how close / far the field is?

                    Comment

                    Working...
                    X