diff --git a/paper/advisor_review/.gitignore b/paper/advisor_review/.gitignore new file mode 100644 index 0000000..20d3908 --- /dev/null +++ b/paper/advisor_review/.gitignore @@ -0,0 +1,4 @@ +main.aux +main.bbl +main.blg +main.out diff --git a/paper/advisor_review/BUILD.md b/paper/advisor_review/BUILD.md new file mode 100644 index 0000000..7a47e4d --- /dev/null +++ b/paper/advisor_review/BUILD.md @@ -0,0 +1,7 @@ +# Build + +This independent advisor draft does not replace the accepted GRACE manuscript. + +```text +PATH=/home/shuhao/.conda/envs/neuromem/bin:$PATH make pdf +``` diff --git a/paper/advisor_review/BUILD_TRANSCRIPT.txt b/paper/advisor_review/BUILD_TRANSCRIPT.txt new file mode 100644 index 0000000..556488b --- /dev/null +++ b/paper/advisor_review/BUILD_TRANSCRIPT.txt @@ -0,0 +1,15 @@ +Script started on 2026-08-29 22:06:22+08:00 [] +tectonic --keep-intermediates --keep-logs main.tex +Running TeX ... +Running BibTeX on main.aux ... +Rerunning TeX because bibtex was run ... +Rerunning TeX because "main.aux" changed ... +Running xdvipdfmx ... +Writing `main.bbl` (653 B) +Writing `main.out` (1.1953125 KiB) +Writing `main.pdf` (46.1884765625 KiB) +Writing `main.blg` (191 B) +Writing `main.log` (11.3818359375 KiB) +Writing `main.aux` (2.2236328125 KiB) + +Script done on 2026-08-29 22:06:24+08:00 [COMMAND_EXIT_CODE="0"] diff --git a/paper/advisor_review/MANIFEST.md b/paper/advisor_review/MANIFEST.md new file mode 100644 index 0000000..b748519 --- /dev/null +++ b/paper/advisor_review/MANIFEST.md @@ -0,0 +1,32 @@ +# Advisor review artifact manifest + +- Canonical repository: `DataSysResearch/GRACE` +- Source base (`main`): `9f81318ecb12cbb5531034a574f6136f65d6b8e2` +- Artifact commit: `81a939ece431b9353858f06651d3cd41fb4e0eb7` +- Entry/PDF/log: `paper/advisor_review/main.tex`, `main.pdf`, `main.log` +- Build: `PATH=/home/shuhao/.conda/envs/neuromem/bin:$PATH make pdf` +- Tectonic exit: `0`; pages: `2`; warnings: none +- Visual check: both pages rendered with `pdftoppm -png -r 110`; no clipping, overflow, broken glyphs, or unintended blank page. + +## SHA256 + +| Artifact | Digest | +|---|---| +| `main.tex` | `f7061ad54029a43fd9abbfc0d15320441c5218f9366821a0303bd8fbc3deabf6` | +| `references.bib` | `87f2cde98ae936380318169345eb201ec8cde49780b2b4da9bd8b7b7fe1c231d` | +| `main.pdf` | `75f6aef516619c6300629fcc03eed2d8103cbd96aa259e1a8fc7bc0b296f5a8b` | +| `main.log` | `f9ac1cfa6c6e406a0502b0bbbfddf44d02480338cb929495314972158704d511` | +| `BUILD_TRANSCRIPT.txt` | `6693dd56bca155a358d5a94ed3b3c9ce0e3bb29fc52d3d6b9550077db9e7122c` | + +## Test and evidence boundary + +- `git diff --check`: pass. +- PPCSR host build was attempted using the repository CI command, but the host + has no `cmake`; no dependency was installed and no build was claimed. +- Highest accepted evidence: implementation presence plus the repository's + existing hosted PPCSR build probe. Existing benchmark logs are historical and + unbound; no new result is claimed. +- Exact PPCSR, Terrace, and VCSR upstream pins remain missing. The accepted + manuscript is not present, so this independent advisor draft does not replace + or reconstruct its claims. +- Implementation, environment, experiments, and results remain student-owned. diff --git a/paper/advisor_review/Makefile b/paper/advisor_review/Makefile new file mode 100644 index 0000000..235235c --- /dev/null +++ b/paper/advisor_review/Makefile @@ -0,0 +1,6 @@ +TECTONIC ?= tectonic +.PHONY: pdf clean +pdf: + $(TECTONIC) --keep-intermediates --keep-logs main.tex +clean: + rm -f main.aux main.bbl main.blg main.log main.out main.pdf diff --git a/paper/advisor_review/main.log b/paper/advisor_review/main.log new file mode 100644 index 0000000..d30f992 --- /dev/null +++ b/paper/advisor_review/main.log @@ -0,0 +1,346 @@ +** +(main.tex +LaTeX2e <2021-11-15> patch level 1 +L3 programming layer <2022-02-24> (article.cls +Document Class: article 2021/10/04 v1.4n Standard LaTeX document class +(size10.clo +File: size10.clo 2021/10/04 v1.4n Standard LaTeX file (size option) +) +\c@part=\count181 +\c@section=\count182 +\c@subsection=\count183 +\c@subsubsection=\count184 +\c@paragraph=\count185 +\c@subparagraph=\count186 +\c@figure=\count187 +\c@table=\count188 +\abovecaptionskip=\skip47 +\belowcaptionskip=\skip48 +\bibindent=\dimen138 +) (geometry.sty +Package: geometry 2020/01/02 v5.9 Page Geometry + (keyval.sty +Package: keyval 2014/10/28 v1.15 key=value parser (DPC) +\KV@toks@=\toks16 +) (ifvtex.sty +Package: ifvtex 2019/10/25 v1.7 ifvtex legacy package. Use iftex instead. + (iftex.sty +Package: iftex 2022/02/03 v1.0f TeX engine tests +)) +\Gm@cnth=\count189 +\Gm@cntv=\count190 +\c@Gm@tempcnt=\count191 +\Gm@bindingoffset=\dimen139 +\Gm@wd@mp=\dimen140 +\Gm@odd@mp=\dimen141 +\Gm@even@mp=\dimen142 +\Gm@layoutwidth=\dimen143 +\Gm@layoutheight=\dimen144 +\Gm@layouthoffset=\dimen145 +\Gm@layoutvoffset=\dimen146 +\Gm@dimlist=\toks17 +) +(booktabs.sty +Package: booktabs 2020/01/12 v1.61803398 Publication quality tables +\heavyrulewidth=\dimen147 +\lightrulewidth=\dimen148 +\cmidrulewidth=\dimen149 +\belowrulesep=\dimen150 +\belowbottomsep=\dimen151 +\aboverulesep=\dimen152 +\abovetopsep=\dimen153 +\cmidrulesep=\dimen154 +\cmidrulekern=\dimen155 +\defaultaddspace=\dimen156 +\@cmidla=\count192 +\@cmidlb=\count193 +\@aboverulesep=\dimen157 +\@belowrulesep=\dimen158 +\@thisruleclass=\count194 +\@lastruleclass=\count195 +\@thisrulewidth=\dimen159 +) (tabularx.sty +Package: tabularx 2020/01/15 v2.11c `tabularx' package (DPC) + (array.sty +Package: array 2021/10/04 v2.5f Tabular extension package (FMi) +\col@sep=\dimen160 +\ar@mcellbox=\box50 +\extrarowheight=\dimen161 +\NC@list=\toks18 +\extratabsurround=\skip49 +\backup@length=\skip50 +\ar@cellbox=\box51 +) +\TX@col@width=\dimen162 +\TX@old@table=\dimen163 +\TX@old@col=\dimen164 +\TX@target=\dimen165 +\TX@delta=\dimen166 +\TX@cols=\count196 +\TX@ftn=\toks19 +) (enumitem.sty +Package: enumitem 2019/06/20 v3.9 Customized lists +\labelindent=\skip51 +\enit@outerparindent=\dimen167 +\enit@toks=\toks20 +\enit@inbox=\box52 +\enit@count@id=\count197 +\enitdp@description=\count198 +) (microtype.sty +Package: microtype 2022/03/14 v3.0d Micro-typographical refinements (RS) + +(etoolbox.sty +Package: etoolbox 2020/10/05 v2.5k e-TeX tools for LaTeX (JAW) +\etb@tempcnta=\count199 +) +\MT@toks=\toks21 +\MT@tempbox=\box53 +\MT@count=\count266 +LaTeX Info: Redefining \noprotrusionifhmode on input line 1027. +LaTeX Info: Redefining \leftprotrusion on input line 1028. +LaTeX Info: Redefining \rightprotrusion on input line 1036. +LaTeX Info: Redefining \textls on input line 1195. +\MT@outer@kern=\dimen168 +LaTeX Info: Redefining \textmicrotypecontext on input line 1781. +\MT@listname@count=\count267 + (microtype-xetex.def +File: microtype-xetex.def 2022/03/14 v3.0d Definitions specific to xetex (RS) +LaTeX Info: Redefining \lsstyle on input line 236. +) +Package microtype Info: Loading configuration file microtype.cfg. + (microtype.cfg +File: microtype.cfg 2022/03/14 v3.0d microtype main configuration file (RS) +)) (hyperref.sty +Package: hyperref 2022-02-21 v7.00n Hypertext links for LaTeX + +(ltxcmds.sty +Package: ltxcmds 2020-05-10 v1.25 LaTeX kernel commands for general use (HO) +) (pdftexcmds.sty +Package: pdftexcmds 2020-06-27 v0.33 Utility functions of pdfTeX for LuaTeX (HO +) + (infwarerr.sty +Package: infwarerr 2019/12/03 v1.5 Providing info/warning/error messages (HO) +) +Package pdftexcmds Info: \pdf@primitive is available. +Package pdftexcmds Info: \pdf@ifprimitive is available. +Package pdftexcmds Info: \pdfdraftmode not found. +) (kvsetkeys.sty +Package: kvsetkeys 2019/12/15 v1.18 Key value parser (HO) +) +(kvdefinekeys.sty +Package: kvdefinekeys 2019-12-19 v1.6 Define keys (HO) +) (pdfescape.sty +Package: pdfescape 2019/12/09 v1.15 Implements pdfTeX's escape features (HO) +) (hycolor.sty +Package: hycolor 2020-01-27 v1.10 Color options for hyperref/bookmark (HO) +) (letltxmacro.sty +Package: letltxmacro 2019/12/03 v1.6 Let assignment for LaTeX macros (HO) +) (auxhook.sty +Package: auxhook 2019-12-17 v1.6 Hooks for auxiliary files (HO) +) (kvoptions.sty +Package: kvoptions 2020-10-07 v3.14 Key value format for package options (HO) +) +\@linkdim=\dimen169 +\Hy@linkcounter=\count268 +\Hy@pagecounter=\count269 + (pd1enc.def +File: pd1enc.def 2022-02-21 v7.00n Hyperref: PDFDocEncoding definition (HO) +) (intcalc.sty +Package: intcalc 2019/12/15 v1.3 Expandable calculations with integers (HO) +) (etexcmds.sty +Package: etexcmds 2019/12/15 v1.7 Avoid name clashes with e-TeX commands (HO) +) +\Hy@SavedSpaceFactor=\count270 + (puenc.def +File: puenc.def 2022-02-21 v7.00n Hyperref: PDF Unicode definition (HO) +) +Package hyperref Info: Hyper figures OFF on input line 4137. +Package hyperref Info: Link nesting OFF on input line 4142. +Package hyperref Info: Hyper index ON on input line 4145. +Package hyperref Info: Plain pages OFF on input line 4152. +Package hyperref Info: Backreferencing OFF on input line 4157. +Package hyperref Info: Implicit mode ON; LaTeX internals redefined. +Package hyperref Info: Bookmarks ON on input line 4390. +\c@Hy@tempcnt=\count271 + +(url.sty +\Urlmuskip=\muskip16 +Package: url 2013/09/16 ver 3.4 Verb mode for urls, etc. +) +LaTeX Info: Redefining \url on input line 4749. +\XeTeXLinkMargin=\dimen170 + (bitset.sty +Package: bitset 2019/12/09 v1.3 Handle bit-vector datatype (HO) + (bigintcalc.sty +Package: bigintcalc 2019/12/15 v1.5 Expandable calculations on big integers (HO +) +)) +\Fld@menulength=\count272 +\Field@Width=\dimen171 +\Fld@charsize=\dimen172 +Package hyperref Info: Hyper figures OFF on input line 6027. +Package hyperref Info: Link nesting OFF on input line 6032. +Package hyperref Info: Hyper index ON on input line 6035. +Package hyperref Info: backreferencing OFF on input line 6042. +Package hyperref Info: Link coloring OFF on input line 6047. +Package hyperref Info: Link coloring with OCG OFF on input line 6052. +Package hyperref Info: PDF/A mode OFF on input line 6057. +LaTeX Info: Redefining \ref on input line 6097. +LaTeX Info: Redefining \pageref on input line 6101. + (atbegshi-ltx.sty +Package: atbegshi-ltx 2021/01/10 v1.0c Emulation of the original atbegshi +package with kernel methods +) +\Hy@abspage=\count273 +\c@Item=\count274 +\c@Hfootnote=\count275 +) +Package hyperref Info: Driver (autodetected): hxetex. + (hxetex.def +File: hxetex.def 2022-02-21 v7.00n Hyperref driver for XeTeX + +(stringenc.sty +Package: stringenc 2019/11/29 v1.12 Convert strings between diff. encodings (HO +) +) +\pdfm@box=\box54 +\c@Hy@AnnotLevel=\count276 +\HyField@AnnotCount=\count277 +\Fld@listcount=\count278 +\c@bookmark@seq@number=\count279 + (rerunfilecheck.sty +Package: rerunfilecheck 2019/12/05 v1.9 Rerun checks for auxiliary files (HO) + (atveryend-ltx.sty +Package: atveryend-ltx 2020/08/19 v1.0a Emulation of the original atveryend pac +kage +with kernel methods +) (uniquecounter.sty +Package: uniquecounter 2019/12/15 v1.4 Provide unlimited unique counter (HO) +) +Package uniquecounter Info: New unique counter `rerunfilecheck' on input line 2 +86. +) +\Hy@SectionHShift=\skip52 +) +(l3backend-xetex.def +File: l3backend-xetex.def 2022-02-07 L3 backend support: XeTeX +\c__kernel_sys_dvipdfmx_version_int=\count280 +\l__color_backend_stack_int=\count281 +\g__color_backend_stack_int=\count282 +\g__graphics_track_int=\count283 +\l__pdf_internal_box=\box55 +\g__pdf_backend_object_int=\count284 +\g__pdf_backend_annotation_int=\count285 +\g__pdf_backend_link_int=\count286 +) (main.aux) +\openout1 = `main.aux'. + +LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 9. +LaTeX Font Info: ... okay on input line 9. +LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 9. +LaTeX Font Info: ... okay on input line 9. +LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 9. +LaTeX Font Info: ... okay on input line 9. +LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 9. +LaTeX Font Info: ... okay on input line 9. +LaTeX Font Info: Checking defaults for TS1/cmr/m/n on input line 9. +LaTeX Font Info: Trying to load font information for TS1+cmr on input line 9 +. + (ts1cmr.fd +File: ts1cmr.fd 2019/12/16 v2.5j Standard LaTeX font definitions +) +LaTeX Font Info: ... okay on input line 9. +LaTeX Font Info: Checking defaults for TU/lmr/m/n on input line 9. +LaTeX Font Info: ... okay on input line 9. +LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 9. +LaTeX Font Info: ... okay on input line 9. +LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 9. +LaTeX Font Info: ... okay on input line 9. +LaTeX Font Info: Checking defaults for PD1/pdf/m/n on input line 9. +LaTeX Font Info: ... okay on input line 9. +LaTeX Font Info: Checking defaults for PU/pdf/m/n on input line 9. +LaTeX Font Info: ... okay on input line 9. + +*geometry* driver: auto-detecting +*geometry* detected driver: xetex +*geometry* verbose mode - [ preamble ] result: +* driver: xetex +* paper: +* layout: +* layoutoffset:(h,v)=(0.0pt,0.0pt) +* modes: +* h-part:(L,W,R)=(36.135pt, 542.02501pt, 36.135pt) +* v-part:(T,H,B)=(36.135pt, 722.7pt, 36.135pt) +* \paperwidth=614.295pt +* \paperheight=794.96999pt +* \textwidth=542.02501pt +* \textheight=722.7pt +* \oddsidemargin=-36.135pt +* \evensidemargin=-36.135pt +* \topmargin=-73.135pt +* \headheight=12.0pt +* \headsep=25.0pt +* \topskip=10.0pt +* \footskip=30.0pt +* \marginparwidth=65.0pt +* \marginparsep=11.0pt +* \columnsep=10.0pt +* \skip\footins=9.0pt plus 4.0pt minus 2.0pt +* \hoffset=0.0pt +* \voffset=0.0pt +* \mag=1000 +* \@twocolumnfalse +* \@twosidefalse +* \@mparswitchfalse +* \@reversemarginfalse +* (1in=72.27pt=25.4mm, 1cm=28.453pt) + +LaTeX Info: Redefining \microtypecontext on input line 9. +Package microtype Info: Applying patch `item' on input line 9. +Package microtype Info: Applying patch `toc' on input line 9. +Package microtype Info: Applying patch `eqnum' on input line 9. +Package microtype Info: Applying patch `footnote' on input line 9. +Package microtype Info: Character protrusion enabled (level 2). +Package microtype Info: Using default protrusion set `alltext'. +Package microtype Info: No adjustment of tracking. +Package microtype Info: No adjustment of spacing. +Package microtype Info: No adjustment of kerning. +(mt-LatinModernRoman.cfg +File: mt-LatinModernRoman.cfg 2021/02/21 v1.1 microtype config. file: Latin Mod +ern Roman (RS) +) +Package hyperref Info: Link coloring OFF on input line 9. + (nameref.sty +Package: nameref 2021-04-02 v2.47 Cross-referencing by name of section + (refcount.sty +Package: refcount 2019/12/15 v3.6 Data extraction from label references (HO) +) (gettitlestring.sty +Package: gettitlestring 2019/12/15 v1.6 Cleanup title references (HO) +) +\c@section@level=\count287 +) +LaTeX Info: Redefining \ref on input line 9. +LaTeX Info: Redefining \pageref on input line 9. +LaTeX Info: Redefining \nameref on input line 9. + +(main.out) (main.out) +\@outlinefile=\write3 +\openout3 = `main.out'. + + (mt-cmr.cfg +File: mt-cmr.cfg 2013/05/19 v2.2 microtype config. file: Computer Modern Roman +(RS) +) +LaTeX Font Info: External font `cmex10' loaded for size +(Font) <12> on input line 10. +LaTeX Font Info: External font `cmex10' loaded for size +(Font) <8> on input line 10. +LaTeX Font Info: External font `cmex10' loaded for size +(Font) <6> on input line 10. + [1 + +] (main.bbl) [2] (main.aux) +Package rerunfilecheck Info: File `main.out' has not changed. +(rerunfilecheck) Checksum: 01530965BF9B559995689888276B5395;1224. + ) +Output written on main.xdv (2 pages, 93792 bytes). diff --git a/paper/advisor_review/main.pdf b/paper/advisor_review/main.pdf new file mode 100644 index 0000000..7eb341e Binary files /dev/null and b/paper/advisor_review/main.pdf differ diff --git a/paper/advisor_review/main.tex b/paper/advisor_review/main.tex new file mode 100644 index 0000000..4ed4a73 --- /dev/null +++ b/paper/advisor_review/main.tex @@ -0,0 +1,66 @@ +\documentclass[10pt]{article} +\usepackage[margin=0.50in]{geometry} +\usepackage{booktabs,tabularx,array,enumitem,microtype} +\usepackage[hidelinks]{hyperref} +\emergencystretch=1em +\title{GRACE: Reconstruction Decisions for Dynamic Graph Containers\\\large Advisor Preservation and Next-Evidence Contract} +\author{Advisor-authored narrative; implementation and experiments remain student-owned} +\date{August 2026} +\begin{document}\maketitle +\begin{abstract} +GRACE is an accepted ICDE 2026 artifact for alleviating reconstruction cost in packed-memory-array dynamic graph systems. The public repository integrates PPCSR, Terrace, and VCSR, but does not contain the accepted manuscript or a manifest that binds those integrations to exact upstream revisions. This independent draft therefore does not recreate publication claims. It preserves the research boundary and preregisters the next question: can measurable structural drift predict when reconstruction is preferable to continued incremental maintenance across graph containers? We define matched baselines, correctness and provenance oracles, evidence gates, and stopping conditions. No experiment was run and no repository log is promoted to a paper result. +\end{abstract} +\small + +\section{Problem, Importance, and Prior Boundary} +Packed memory arrays leave gaps so edge updates avoid moving the entire representation, but local insertions consume slack and can trigger increasingly large rebalances. The systems question is not whether reconstruction has a cost; it is when the accumulated cost of local maintenance exceeds a rebuild, under a changing update stream and concurrent graph queries. A wrong decision can waste bandwidth, stall updates, increase peak memory, or expose an inconsistent snapshot. + +PPCSR supplies parallel and NUMA-aware packed CSR~\cite{wheatman2021ppma}; Terrace adapts storage to skewed degrees~\cite{pandey2021terrace}; VCSR uses a vertex-centric packed-memory layout~\cite{islam2022vcsr}. GRACE's accepted contribution must be cited from the official paper when its source is added. The follow-up gap is narrower: a cross-container, falsifiable reconstruction trigger based on observed structural drift. It is not a claim that one fixed threshold generalizes across all graphs or backends. + +\section{Seven Questions} +\begin{enumerate}[leftmargin=*,label=\textbf{Q\arabic*.}] +\item \textbf{Question.} When does cumulative incremental-maintenance cost exceed reconstruction cost, and can a pre-decision drift signal select the lower-cost action? +\item \textbf{Importance.} Dynamic graph stores serve mixed update/query workloads. The decision affects throughput, tail pause time, peak memory, and correctness; a useful policy must improve a real runtime rather than only predict an offline label. +\item \textbf{Hidden assumption and related-work gap.} Fixed-period and fixed-density policies assume stationarity. Different degree distributions, update locality, batch sizes, and container layouts invalidate that assumption. Existing container mechanisms establish strong baselines, not evidence for a portable predictor. +\item \textbf{Mechanism hypothesis.} Maintain low-cost receipts for slack distribution, rebalance span and bytes moved, update locality, degree drift, and recent query pressure. A constrained cost model chooses continue, local rebalance, or full reconstruction. The native contribution is the decision boundary and its receipts; wrapping three build systems is not a mechanism. +\item \textbf{Feasibility.} The repository contains three integration trees and host build paths. Feasibility remains conditional on exact upstream pins, reproducible workloads, and a snapshot oracle. Existing logs are historical files without a binding result manifest. +\item \textbf{Evaluation.} Section~\ref{sec:eval} freezes arms, inputs, oracle, metrics, gate, and stop rules before any held-out run. +\item \textbf{Takeaway.} A positive result would show that measurable structural drift, rather than elapsed updates alone, predicts a portable reconstruction crossover. A negative result would delimit the accepted mechanism to its original containers and close the portable-trigger extension. +\end{enumerate} + +\section{Design and Causal Chain} +For each decision epoch, record container identity, graph snapshot, ordered update batch, density/slack summaries, bytes moved, rebalance scope, and query mix. The treatment estimates the remaining incremental cost and reconstruction cost, then selects an action subject to a memory and correctness constraint. Every action receipt must link the decision to the exact pre-state and resulting post-state. Container-specific features may be normalized, but raw receipts remain available so apparent portability is not caused by lossy aggregation. + +The causal claim requires: structural drift changes maintenance work; the receipts measure that change before action; the decision changes the selected maintenance path; and matched execution changes end-to-end cost without changing the logical graph. Predictor accuracy alone is insufficient if it does not produce a deployable winner switch. + +\section{Matched Evaluation Contract}\label{sec:eval} +\paragraph{Arms.} B0 is each upstream container's unmodified/default reconstruction behavior. B1 is a fixed update-count schedule swept over practical periods. B2 is a fixed density or slack threshold swept without held-out tuning. B3 is an oracle selector that runs candidate actions from the same snapshot and chooses the measured best; it bounds headroom but is not deployable. The treatment is the preregistered GRACE drift policy. PPCSR, Terrace, and VCSR are separate strata, not pooled repetitions. + +\paragraph{Identity and workloads.} Freeze exact upstream and feature commits, compiler and flags, CPU/NUMA topology, allocator, dataset hash, initial graph hash, ordered update stream, query schedule, thread count, and random seeds. Scan update rate, insertion/deletion mix, locality, batch size, degree skew, and drift. Calibration, validation, and held-out streams are disjoint and immutable. + +\paragraph{Oracle.} After every maintenance action, compare vertex and edge counts, a canonical sorted-edge digest, sampled adjacency lists, and BFS/CC/PageRank outputs where applicable against a reference representation. Required correctness is 100\%; duplicates, omissions, stale edges, or snapshot-generation mismatches fail the run. Action receipts must conserve input updates and bind pre-state, action, and post-state identities. + +\paragraph{Metrics and gate.} Report update throughput, query throughput and p95 latency, reconstruction time, bytes moved, peak memory, predictor error, action frequency, and full repeated-run distributions. A positive extension requires a repeated deployable winner switch over the strongest B0--B2 arm and remaining B3 oracle headroom, with no correctness failure or memory regression beyond a preregistered bound. Numeric margins and repetition count are TBD until the student owner freezes them before held-out execution. + +\paragraph{Stop conditions.} Stop if exact pins cannot reproduce the accepted baseline; fixed policies match the treatment across strata; the signal is only known after the decision; predictions fail under a second container or workload family; or any correctness receipt fails. Do not retune a failed policy on held-out data. + +\section{Evidence Ledger and Limitations} +\begin{tabularx}{\linewidth}{@{}>{\raggedright\arraybackslash}p{.22\linewidth}>{\raggedright\arraybackslash}p{.17\linewidth}X@{}} +\toprule Artifact & Level & Admissible statement\\\midrule +Root README & contract/metadata & Records ICDE 2026 acceptance and names three integrations; it is not the accepted manuscript.\\ +Three source trees & implementation presence & Establish code presence only; exact upstream ancestry is not pinned.\\ +Terrace benchmark logs & historical/unbound & May guide recovery, but cannot support a claim without command, exit, hardware, input, and Git identities.\\ +Hosted PPCSR build & host correctness probe & Demonstrates compilation of one integration; not performance or cross-container evidence.\\ +This PDF & derived artifact & Demonstrates only reproducible narrative compilation.\\\bottomrule +\end{tabularx} + +The highest evidence accepted by this draft is implementation presence plus a host build probe. It claims no new number. This is a CPU dynamic-graph topic, so an NPU architecture chain is not applicable; mapping it to an accelerator without a native counterexample and mechanism would be adaptation. + +\section{Two-Week Closure and Ownership} +Week one: the student owner adds reviewed gitlinks or machine-readable upstream commit receipts, freezes workload identities, validates snapshot oracles, and reproduces the strongest original baseline. Week two: the owner runs matched B0--B3/treatment sweeps on at least two containers, emits raw logs and manifests, and applies the frozen gate. Advisor work is limited to this narrative and acceptance criteria; implementation, environment, experiments, debugging, and results remain student-owned. + +\section{Conclusion} +GRACE already has an accepted-paper identity, but its repository must not substitute unbound logs for publication evidence. The next defensible contribution is a predictive and auditable reconstruction boundary. The contract makes both portability and failure informative. + +\bibliographystyle{plain}\bibliography{references} +\end{document} diff --git a/paper/advisor_review/references.bib b/paper/advisor_review/references.bib new file mode 100644 index 0000000..a5f67f3 --- /dev/null +++ b/paper/advisor_review/references.bib @@ -0,0 +1,3 @@ +@inproceedings{wheatman2021ppma,author={Brian Wheatman and Helen Xu},title={A Parallel Packed Memory Array to Store Dynamic Graphs},booktitle={ALENEX},year={2021},pages={31--45},doi={10.1137/1.9781611976472.3}} +@inproceedings{pandey2021terrace,author={Prashant Pandey and Brian Wheatman and Helen Xu and Aydin Buluc},title={Terrace: A Hierarchical Graph Container for Skewed Dynamic Graphs},booktitle={SIGMOD},year={2021},pages={1372--1385},doi={10.1145/3448016.3457313}} +@inproceedings{islam2022vcsr,author={Abdullah Al Raqibul Islam and Dong Dai and Dazhao Cheng},title={{VCSR}: Mutable {CSR} Graph Format Using Vertex-Centric Packed Memory Array},booktitle={CCGrid},year={2022},pages={71--80},doi={10.1109/CCGrid54584.2022.00016}}