Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Is there a protection against multiple concurrent dump creation? Do we need one?


About SSD storage

There are several important points to consider when writing data to SSD storage

  • Random writes will perform just as well as sequential writes if writes are multiple of and aligned to If writes are performed in the size of a clustered blockat least one clustered block, they will use all the levels of internal parallelism, and reach the same performance as sequential write.
  • Many concurrent small write requests will offer a better throughput than a single small write request.
  • A single large write request offers the same throughput as many small concurrent writes.

Typical SSD throughput versus write block size chart will look like this.

...

One of the configuration aims is to find minimum block size when random and sequential writes show the same throughput.

Write measurement

Data write time was measured with different settings on MacBook.

There was 1Gb direct memory allocated and filled with random data. It was logically split into 8 partitions and saved into different files. There were different blocks used (16kb, 32 kb, ...16Mb) for writing in different number of threads (1, 2, 4, 8). The overall time required to fully write data to disk was measured. For each point there were 20 runs executed and average (time in milliseconds) was taken. After every run files were deleted and System.gc() was executed and 10 second pause was taken. Got the following diagram.

Image Added

Some conclusions for this run:

  • The minimum execution time started around 1Mb block size
  • Single threaded run was slightly slower even with large blocks