davidca added inline comments.

================
Comment at: lldb/include/lldb/Target/TraceHTR.h:73
+  //   trace
+  struct HTRInMemoryBlock {
+
----------------
Just like in the original HTR design, if you remove this abstraction, and store 
indices as indices in each layer, then you don't have to create separate 
versions for in memory and in disk, as the layers become very easily 
serializable.


================
Comment at: lldb/include/lldb/Target/TraceHTR.h:118
+  // growing
+  std::vector<HTRBlockStorage> m_blocks;
+};
----------------
This does not deduplicate blocks. If the same block appears multiple times (as 
it's common in loops), it will be stored multiple times, consuming more memory 
and making pattern detection and other post-processing more time consuming.

Note that this is the original motivation of the separation between BlockDefs 
and bids (the trace of block ids) in the original HTR doc.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D122859/new/

https://reviews.llvm.org/D122859

_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
  • [Lldb-commits] [P... walter erquinigo via Phabricator via lldb-commits
    • [Lldb-commit... David Carrillo Cisneros via Phabricator via lldb-commits
    • [Lldb-commit... Greg Clayton via Phabricator via lldb-commits

Reply via email to