Skip to content

dump: add caching for additional speed up  #12

Closed

Description

@aawsome

The dump commands reads all blobs directly from the backend without caching them.

So the idea is to add a cache, and use the fact that we know a priori which blobs we need and in which order:

  • ideally (if we have enough memory) save all later needed blobs in the cache.
  • when a cached blob is not used in future, we can immediately remove it from the cache to free memory as early as possible.
  • add a '--cache-size` size option. We can calculate a priori which blobs must be removed from cache to get an optimal cache.

Activity

  1. aawsome commented on Jul 8, 2023

    @aawsome
    MemberAuthor

    Another idea would be to parallelize the reading of blobs. As we already know the list and order of blobs to read, this can be trivially parallelized using e.g. pariter.

  2. aawsome commented on Jul 8, 2023

    @aawsome
    MemberAuthor

    A third idea (but more involved): Not read blob-by-blob, but identify if contiguous parts of a packfile can be used. If so, read the whole part and process the blobs as-needed.

  3. changed the title [-]speed up dump command[/-] [+]`dump`: add caching for additional speed up [/+] on Jul 16, 2023
  4. transferred this issue fromrustic-rs/rusticon Sep 18, 2023
  5. added
    S-triageStatus: Waiting for a maintainer to triage this issue/PR
    on Sep 18, 2023
  6. removed
    S-triageStatus: Waiting for a maintainer to triage this issue/PR
    on Sep 18, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-commandsArea: Related to commands in `rustic_core`perfPerformance: Tuning issue

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions