Uploaded image for project: 'ROOT'
  1. ROOT
  2. ROOT-7423

Activating prefetching makes TTree iteration slower when reading through HTTP

    Details

      Description

      The attached code iterates over the entries of a TTree that is stored in a remote file, accessed through HTTP. The program receives a parameter that indicates whether prefetching should be enabled or not.

      When running the program, I see two different behaviours:
      1. Prefetching disabled: when running tree->GetEntry(0), the program waits for ~100 seconds for the cache to be filled. After that, ~100 entries are served quickly from the cache. Then, the program waits again for ~100 seconds, repeating the same pattern.
      2. Prefetching enabled: when running tree->GetEntry(0), the program waits for ~100 seconds for the cache to be filled. After that, ~100 entries are served quickly from the cache. From this point on, each entry takes between 4 and 7 seconds to be served.

      Therefore, the program takes longer to run with prefetching than without.

        Attachments

        1. test_prefetching.cxx
          1 kB
          Enric Tejedor Saavedra

          Activity

            People

            • Assignee:
              dhsmith David Smith
              Reporter:
              etejedor Enric Tejedor Saavedra
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: