Skip to content

Conversation

@smuzaffar
Copy link

No description provided.

linev and others added 30 commits July 31, 2024 09:14
Fix zooming on haxis
This is very special feature, which has no equivalent in web display
This has the advantage that the offsets to all other chunks, that are
logically located afterwards, are already known and can be written
immediately instead of seeking back and patching them afterwards. The
only downside is that the seek operation from the first to the second
chunk during reading may be slightly more expensive because it is now
backwards in the file, across the entire split blob.

As a result of this change, RNTupleFileWriter in all cases writes into
monotonically increasing offets, which simplifies further changes
related to the support of Direct I/O.
This has the advantage that we can precisely control the alignment,
which is important to support Direct I/O.
RNTupleFileWriter::RFileSimple does its own buffering now.
This allows more fine-grained control over the flags passed to the
system call, which will be required to enable Direct I/O.
Direct I/O bypasses the OS page cache and allows to reach much higher
bandwidths. However, it introduces strict alignment requirements to
the offset and size of all write requests, as well as the userspace
pointer.
jblomer and others added 7 commits August 1, 2024 10:05
Renames fColumns to fAvailableColumns, which keeps the promised
invariant of storing columns in order of representation index and column
index.

Instead of swapping owned columns when the column representation changes
during write (RFieldRepresentationModifier), we now instead just move
the fPrincipalColumn non-owning pointer.  To accomodate for fields with
two columns per representation (string, unsplit), we add a non-owning
fAuxiliaryColumn that works accordingly to fPrincipalColumn.
Upstream Clang keeps TemplateIdAnnotations around "if they might
still be in the token stream." See upstream commit for more details:
llvm/llvm-project@6163aa9
(included in Clang 11, in ROOT since the upgrade to LLVM 13)

This reasoning doesn't apply when we fully reset the Parser state in
ParserStateRAII's destructor, and we expect the swapped out vector of
TemplateIdAnnotations to be empty in order to not leak.

Fixes root-project#16121
@smuzaffar
Copy link
Author

please test for CMSSW_14_1_ROOT6_X/el8_amd64_gcc12

@cmsbuild
Copy link

cmsbuild commented Aug 1, 2024

A new Pull Request was created by @smuzaffar for branch cms/master/d774a42d19.

@aandvalenzuela, @iarspider, @smuzaffar can you please review it and eventually sign? Thanks.
@antoniovilela, @mandrenguyen, @rappoccio, @sextonkennedy you are the release manager for this.
cms-bot commands are listed here

@cmsbuild
Copy link

cmsbuild commented Aug 1, 2024

cms-bot internal usage

@cmsbuild
Copy link

cmsbuild commented Aug 1, 2024

+1

Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-bc0423/40718/summary.html
COMMIT: 9f6c0b3
CMSSW: CMSSW_14_1_ROOT6_X_2024-07-31-2300/el8_amd64_gcc12
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week0/cms-sw/root/207/40718/install.sh to create a dev area with all the needed externals and cmssw changes.

Comparison Summary

Summary:

@hahnjo hahnjo deleted the cling-template-ids branch August 2, 2024 06:18
@smuzaffar smuzaffar closed this Aug 15, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants