build: optimized-build mode + ns-3 submodule bump (Draft, blocked by aliyun/ns-3-alibabacloud#21)#278
Draft
tianhao909 wants to merge 1 commit into
Draft
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
PR-γ: default NS-3 optimized build mode + bump
ns-3-alibabacloudsubmoduleTarget repository:
aliyun/SimAISummary
Two minimal build-system changes to
aliyun/SimAI, meant to be reviewed together:debugtooptimizedinastra-sim-alibabacloud/build/astra_ns3/build.sh(1-line change). Theoptimizedprofile roughly halves NS-3 simulation wall-clock time on the H20 microbenchmark set.ns-3-alibabacloudsubmodule pointer from7e3cb5bto the new upstreammasterHEAD produced by the companion PR-α (GCC 13 build fix + UB fix). The new hash is filled in at the moment PR-α is merged.Together these let an out-of-the-box GCC 13 user run
./scripts/build.sh -c ns3onaliyun/SimAI:masterand get a workingSimAI_simulatorbinary.Key Changes
astra-sim-alibabacloud/build/astra_ns3/build.sh—1 line changed./ns3 configure -d debug→./ns3 configure -d optimizedns-3-alibabacloud—1 line changed(filled in after PR-α merges)7e3cb5b88c99abcb582c5abc3919484a4805111bTotal diff: 2 lines across 2 files, 2 commits (build-mode commit, then bump commit).
Testing
Fingerprint (inline):
Baseline (upstream
aliyun/SimAI:master@f5efb5a+ submodule at7e3cb5b, GCC 13):With this PR's HEAD (submodule pointing to PR-α merged HEAD, build.sh using
-d optimized):End-to-end cross-branch smoke (all three PRs merged into a temporary integration branch, plan07
allreduce 16mcase):RUN_EXIT=0pr_drafts/task4_gamma_local_bump.txtaliyun/ns-3-alibabacloudactually merges PR-α, the pre-push verification uses a local simulation of "submodule pointed at PR-α's local branch HEAD" — this is documented in the internal test log and clearly separated from the real submodule pointer that ships with the PR commit.Known Limitations
c_build — GCC 13 / Ubuntu 24.04 only. The bump is motivated and verified specifically for
gcc-13.3.0 / Ubuntu 24.04; older toolchains (gcc-9, gcc-11) were not re-run against the new submodule HEAD in this work. The new submodule commits are additive (an include and a compile-flag pair), so compatibility is expected, but a CI run on the older matrix would be welcome.Behavioural note on
optimizeddefault. Switching the default fromdebugtooptimizedis a behavioural change for downstream consumers who rely on unstripped,-O0builds for in-processgdbsessions.-O2 -gpreservesgdbattach-ability but does change the default numeric behaviour of stack frames. If maintainers prefer, this PR can be split into:The two commits are intentionally independent so either can be dropped.
Scope Disclaimer
Notes
aliyun/SimAI:master(currentlyf5efb5a)tianhao909/SimAI:pr/plan07-build-mode-and-bumprdma-hw.cc, no CMakeLists, no new runtime dependency.Checklist
build: …)build.sh+ submodule pointer>blockquote)c_buildlimitation called out in Known LimitationsReviewer FAQ
aliyun/ns-3-alibabacloudHEAD?optimized?-gis preserved, so gdb still attaches. If preferred, I can leave the default atdebugand add aSIMAI_BUILD_MODEenv-var override instead — just say the word.debug?astra-sim-alibabacloud/extern/tracked files?extern/is.gitignore'd in this repo, andscripts/build.sh -c ns3(lines 17 and 22)rm -rf extern/thencp -rfrom the submodule. Nothing tracked underextern/is preserved or affected.aliyun/ns-3-alibabacloud. That's PR-α.optimizeddefault.