Skip to content

v3.5 Performance

Andrey Kurilov edited this page Sep 12, 2017 · 18 revisions

Contents

  1. Testing
     1.1. Environment
     1.2. Regression
      1.2.1. Max Throughput
      1.2.2. Bandwidth
      1.2.3. Distributed Mode Scalability
      1.2.4. Recycle Mode
     1.3. New Functionality
      1.3.1. Actual Concurrency
  2. Tuning

1. Testing

1.1. Environment

  • 5 VMs each equivalent to system having Xeon CPU E5 (2.9 GHz, 8 cores)
  • In distributed mode tests:
    • 1 host is used for load controller instance
    • 4 hosts are used for storage driver service instances
  • 10 GBit network
  • 256 GB of shared memory

1.2. Regression

In the regression tests below the Mongoose versions 3.4.2 and 3.5.0 have been compared.

1.2.1. Max Throughput

Conditions:

  • Using dummy storage driver allows to test the Mongoose engine internal performance avoiding storage driver operations.
  • The max throughput test is done using the distributed mode.
  • Run the test for 5 minutes to see the stabilized rate

max-tp-4-dummy-drivers-v3.4-vs-3.5.png

In the new version the sustained throughput is nearly twice higher than in the previous version.

1.2.2. Bandwidth

Conditions:

  • Creating 100 MB objects
  • Any HTTP-based storage driver may be used (amzs3 is used by default)
  • Concurrency level limit: 100
  • Run the test for 10 minutes to see the stabilized rate

bw_100MB_objects-v3.4-vs-v3.5.png

Mongoose v3.5 should be tuned to produce the same bandwidth performance as Mongoose v3.4.2. If using defaults v3.5 shows slightly worse (5-10 %) bandwidth. See tuning details.

1.2.3. Distributed Mode Scalability

Conditions:

  • Using dummy storage driver allows to test the Mongoose engine internal performance avoiding storage driver operations.
  • The scalability test is done using the distributed mode with different remote storage drivers count (1-4).
  • Run each test for 5 minutes to see the stabilized total/summary rate

distributed-mode-scalability-v3.4-vs-v3.5.png

v3.5 is much better scalable than v3.4.2, however the v3.5 scalability is not linear.

1.2.4. Recycle Mode

Conditions:

  • Using dummy storage driver allows to test the Mongoose engine internal performance avoiding storage driver operations.
  • The recycle mode test is done using the distributed mode.
  • Read 10K objects using the prepared items input file.
  • Recycle mode is enabled with default options.
  • Run each test for 10 minutes to see the stabilized rate.

recycle_mode_max_rate_v3.4.2_vs_v3.5.0.png

+75% rate increase observed in the recycle mode for v3.5 than for v3.4.2.

1.3. New Functionality

1.3.1. Actual Concurrency

actual_concurrency_vs_object_size.png

2. Tuning

calc_vs_io_problem.png

Clone this wiki locally