Project

General

Profile

Actions

Feature #18961

open

Go FileSystem / FUSE mount supports block prefetch

Added by Peter Amstutz over 1 year ago. Updated 8 days ago.

Status:
New
Priority:
Normal
Assigned To:
Category:
FUSE
Start date:
Due date:
% Done:

0%

Estimated time:
(Total: 0.00 h)
Story points:
2.0

Description

Use the following strategy for prefetch:

When a read happens on a file, look at the next N blocks the make up the manifest stream and issue prefetch requests for those blocks. These blocks get loaded into the cache so they are ready to go when they are needed.

By looking ahead in the stream rather than just the file, this also works for manifests containing small files which are stored as 1 block per file.

There should be a config knob to control how much data or blocks are prefetched so that sites can experiment with optimal throughput.

This implies the cache behavior needs to support pre-fetch, which means pre-fetched blocks should not push out actively used blocks but should be able to push out less recently used blocks. Plain LRU behavior where a block is promoted each time it is accessed may be sufficient but metrics will be helpful.


Subtasks 1 (1 open0 closed)

Task #20437: ReviewNewBrett Smith

Actions

Related issues

Related to Arvados Epics - Story #17849: FUSE driver v2New10/01/202312/31/2023

Actions
Related to Arvados Epics - Story #18342: Keep performance optimizationNew08/01/202310/31/2023

Actions
Actions #1

Updated by Peter Amstutz over 1 year ago

Actions #2

Updated by Peter Amstutz over 1 year ago

  • Target version changed from 2022-05-11 sprint to 2022-05-25 sprint
Actions #3

Updated by Peter Amstutz over 1 year ago

  • Target version deleted (2022-05-25 sprint)
Actions #4

Updated by Peter Amstutz 8 months ago

  • Release set to 60
Actions #5

Updated by Peter Amstutz 6 months ago

  • Target version set to To be groomed
Actions #6

Updated by Peter Amstutz 6 months ago

  • Release deleted (60)
  • Subject changed from Go FileSystem / FUSE mount supports block caching & prefetch to Go FileSystem / FUSE mount supports block prefetch
Actions #8

Updated by Peter Amstutz 6 months ago

  • Story points set to 2.0
  • Target version changed from To be groomed to To be scheduled
  • Description updated (diff)
Actions #9

Updated by Peter Amstutz 5 months ago

  • Target version changed from To be scheduled to Development 2023-05-10 sprint
Actions #10

Updated by Tom Clegg 5 months ago

  • Assigned To set to Tom Clegg
Actions #11

Updated by Peter Amstutz 5 months ago

  • Target version changed from Development 2023-05-10 sprint to Development 2023-05-24 sprint
Actions #12

Updated by Peter Amstutz 5 months ago

  • Target version changed from Development 2023-05-24 sprint to Development 2023-06-07
Actions #13

Updated by Peter Amstutz 4 months ago

  • Target version changed from Development 2023-06-07 to Development 2023-06-21 sprint
Actions #14

Updated by Peter Amstutz 4 months ago

  • Target version changed from Development 2023-06-21 sprint to To be scheduled
Actions #16

Updated by Peter Amstutz 3 months ago

  • Related to Story #18342: Keep performance optimization added
Actions #17

Updated by Peter Amstutz 3 months ago

  • Description updated (diff)
Actions #18

Updated by Peter Amstutz 3 months ago

  • Description updated (diff)
Actions #19

Updated by Peter Amstutz 8 days ago

  • Target version changed from To be scheduled to Development 2023-10-25 sprint
Actions

Also available in: Atom PDF