-
Notifications
You must be signed in to change notification settings - Fork 147
Conversation
This includes: - A set of tutorials covering basic JVector concepts - A guide for running benchmarks
Before you submit for review:
- Does your PR follow guidelines from CONTRIBUTIONS.md?
- Did you summarize what this PR does clearly and concisely?
- Did you include performance data for changes which may be performance impacting?
- Did you include useful docs for any user-facing changes or features?
- Did you include useful javadocs for developer oriented changes, explaining new concepts or key changes?
- Did you trigger and review regression testing results against the base branch via Run Bench Main?
- Did you adhere to the code formatting guidelines (TBD)
- Did you group your changes for easy review, providing meaningful descriptions for each commit?
- Did you ensure that all files contain the correct copyright header?
If you did not complete any of these, then please explain below.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For these types of visual callouts, like [!TIP] or [!NOTE], you might just use the unicode versions which do not require special markdown support, like one of 💡,👉, ☞, 📝.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The advantage with these versions is that it displays the content as a nice aside that is visually separate from the main flow:
Screenshot 2026年02月11日 at 11 02 09 AM
The unicode versions will have the icon, but won't demarcate the section as well. In other markdown renderers, it shows up a a standard quotation block, which still manages to demarcate the content even though it doesn't have the icon or the coloring:
Screenshot 2026年02月11日 at 11 05 30 AM
Given that most people will be reading this on Github anyway I'd prefer to leave it as is for the time being.
docs/tutorials/2-disk-tutorial.md
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The connection with "threads" feels a bit tenuous here. Can we make a more obvious connection?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I updated the wording like this:
// Views of an OnDiskGraphIndex with inline or separated vectors can be used as RAVVs! // In multi-threaded scenarios you should have one searcher per thread // and extract a view for each thread from the associated searcher.
Is that the kind of thing you meant?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As a side note, we may want to start using exec:java here. The trade-offs are meaningful for new users. The main one being: with exec:exec you have full process isolation and you can run anything but with exec:java you get to carry the classpath and process hierarchy with you which simplifies debugging and digging deeper. This can be a separate discussion, but wanted to plant a seed here.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The main problem I see with exec:java is that you can't pre-configure VM options like --add-modules=jdk.incubator.vector in the pom.xml. This has to be done during runtime while starting maven. For these tutorials I think the better approach is to stick with exec:exec since
- (a) It gets rid of the warnings about the vector API not being enabled
- (b) Users can go check the "recommended" config options in the pom.xml
@jshook
jshook
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Overall, a solid improvement. I added some notes for things which are not blockers.
This includes:
Supersedes #597