Skip to content

Commit 9faaa4e

Browse files
feat(standard): reframe §3.2 concurrency as architecture-level concern — v1.30 (#9)
Modern hardware universally provides multi-core/multi-thread capability; §3.2 now opens with that hardware rationale as the "why" behind concurrency-first design. The section is restructured into two clear paragraphs: (1) architecture mandate — concurrency considered from the ground up throughout design, not bolted on at implementation; (2) adoption/abandonment conditions — embrace concurrency where it advances performance, abandon it where it degrades performance (overhead, contention, serial workloads) or compromises Priority 1 (Stability). The compliance-checklist §3.2 bullet is revised to match. Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
1 parent 4af5736 commit 9faaa4e

2 files changed

Lines changed: 60 additions & 29 deletions

File tree

The_Steelbore_Standard.md

Lines changed: 28 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,16 @@ concerns.
2323

2424
## Changelog
2525

26+
- **v1.30 (2026-06-24):** **§3.2** reframed — modern hardware
27+
universally provides multi-core/multi-thread capability; harnessing
28+
that concurrency is the primary performance lever. Concurrency is an
29+
**architecture-level concern**, considered from the ground up
30+
throughout design (not bolted on at implementation).
31+
Adoption/abandonment conditions explicit: embrace concurrency where it
32+
advances performance; abandon it where it degrades performance
33+
(overhead, contention, serial workloads) or compromises Priority 1
34+
(Stability). Compliance-checklist bullet revised.
35+
2636
- **v1.29 (2026-06-23):** Switch source of truth from GFM Markdown to
2737
Texinfo: `The_Steelbore_Standard.texi` is now the canonical source;
2838
`The_Steelbore_Standard.md` and `The_Steelbore_Standard.html` are
@@ -432,16 +442,20 @@ means of achieving it — but it is not the whole of Priority 1.**
432442

433443
## §3.2 — Priority 2: Performance
434444

435-
Performance is the foremost priority after stability. The default means
436-
of achieving it is **multi-core, multi-thread concurrency**
437-
parallelism is the expected baseline, not an afterthought — *unless*
438-
concurrency would materially degrade performance (synchronization
439-
overhead, lock contention, or inherently serial / small workloads
440-
outweighing the gains), in which case a simpler or serial approach must
441-
be chosen and the trade-off documented.
442-
443-
- Concurrency must be **designed-in from the start**, never bolted on
444-
retroactively.
445+
Performance is the foremost priority after stability. Modern hardware
446+
universally provides **multi-core, multi-thread** capability; harnessing
447+
that concurrency is the primary means of achieving performance.
448+
Concurrency is not an afterthought — it must be **considered from the
449+
ground up**, throughout architecture design: data ownership, thread
450+
boundaries, synchronization points, and parallelism opportunities must
451+
be identified during design, not discovered during optimization.
452+
453+
Concurrency is adopted where it genuinely advances performance. It is
454+
**abandoned** where it degrades performance (synchronization overhead,
455+
lock contention, or inherently serial / small workloads) or where it
456+
would compromise Priority 1 (Stability). When a serial or simpler
457+
approach outperforms or is safer, it must be chosen and the trade-off
458+
documented.
445459

446460
- Release builds should use CPU-optimized flags — `-march=native`, LTO,
447461
PGO — **where the toolchain and target support them reliably.** Any
@@ -1245,9 +1259,10 @@ Before finalising **any** Spacecraft Software artifact, mentally verify:
12451259
- [ ] **§3.1** Stability: memory safety (Rust, or ASLR+CFI documented);
12461260
robust error handling, fault tolerance, and test-verified
12471261

1248-
- [ ] **§3.2** Performance: multi-core/multi-thread concurrency by
1249-
default (or serial trade-off documented); concurrency designed-in;
1250-
benchmarking before/after
1262+
- [ ] **§3.2** Performance: concurrency considered throughout
1263+
architecture design; adopted where it advances performance, abandoned
1264+
where it degrades performance or compromises Stability; serial
1265+
trade-off documented; benchmarking before/after
12511266

12521267
- [ ] **§3.3** Hardened security; PQC readiness addressed
12531268

The_Steelbore_Standard.texi

Lines changed: 32 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,11 @@
55
@setfilename The_Steelbore_Standard.info
66
@documentencoding UTF-8
77
@documentlanguage en
8-
@settitle The Steelbore Standard 1.29
8+
@settitle The Steelbore Standard 1.30
99
@c %**end of header
1010

11-
@set VERSION 1.29
12-
@set UPDATED 2026-06-23
11+
@set VERSION 1.30
12+
@set UPDATED 2026-06-24
1313
@set SUBDOMAIN https://Standard.SpacecraftSoftware.org/
1414

1515
@copying
@@ -106,6 +106,16 @@ are separate concerns.
106106
@section Changelog
107107
@itemize
108108
@item
109+
@strong{v1.30 (2026-06-24):} @strong{§3.2} reframed --- modern hardware
110+
universally provides multi-core/multi-thread capability; harnessing that
111+
concurrency is the primary performance lever. Concurrency is an
112+
@strong{architecture-level concern}, considered from the ground up
113+
throughout design (not bolted on at implementation).
114+
Adoption/abandonment conditions explicit: embrace concurrency where it
115+
advances performance; abandon it where it degrades performance (overhead,
116+
contention, serial workloads) or compromises Priority 1 (Stability).
117+
Compliance-checklist bullet revised.
118+
@item
109119
@strong{v1.29 (2026-06-23):} Switch source of truth from GFM Markdown to
110120
Texinfo: @file{The_Steelbore_Standard.texi} is now the canonical source;
111121
@file{The_Steelbore_Standard.md} and @file{The_Steelbore_Standard.html} are
@@ -640,19 +650,24 @@ not asserted by inspection alone.
640650

641651
@node Priority 2
642652
@section §3.2 — Priority 2: Performance
643-
Performance is the foremost priority after stability. The default means
644-
of achieving it is @strong{multi-core, multi-thread concurrency} ---
645-
parallelism is the expected baseline, not an afterthought ---
646-
@emph{unless} concurrency would materially degrade performance
647-
(synchronization overhead, lock contention, or inherently serial / small
648-
workloads outweighing the gains), in which case a simpler or serial
649-
approach must be chosen and the trade-off documented.
653+
Performance is the foremost priority after stability. Modern hardware
654+
universally provides @strong{multi-core, multi-thread} capability;
655+
harnessing that concurrency is the primary means of achieving
656+
performance. Concurrency is not an afterthought --- it must be
657+
@strong{considered from the ground up}, throughout architecture design:
658+
data ownership, thread boundaries, synchronization points, and
659+
parallelism opportunities must be identified during design, not
660+
discovered during optimization.
661+
662+
Concurrency is adopted where it genuinely advances performance. It is
663+
@strong{abandoned} where it degrades performance (synchronization
664+
overhead, lock contention, or inherently serial / small workloads) or
665+
where it would compromise Priority 1 (Stability). When a serial or
666+
simpler approach outperforms or is safer, it must be chosen and the
667+
trade-off documented.
650668

651669
@itemize
652670
@item
653-
Concurrency must be @strong{designed-in from the start}, never bolted on
654-
retroactively.
655-
@item
656671
Release builds should use CPU-optimized flags --- @code{-march=native},
657672
LTO, PGO --- @strong{where the toolchain and target support them
658673
reliably.} Any such flag known to break or destabilize builds on a given
@@ -2100,9 +2115,10 @@ explicitly renamed
21002115
@strong{§3.1} Stability: memory safety (Rust, or ASLR+CFI documented);
21012116
robust error handling, fault tolerance, and test-verified
21022117
@item
2103-
@strong{§3.2} Performance: multi-core/multi-thread concurrency by
2104-
default (or serial trade-off documented); concurrency designed-in;
2105-
benchmarking before/after
2118+
@strong{§3.2} Performance: concurrency considered throughout
2119+
architecture design; adopted where it advances performance, abandoned
2120+
where it degrades performance or compromises Stability; serial
2121+
trade-off documented; benchmarking before/after
21062122
@item
21072123
@strong{§3.3} Hardened security; PQC readiness addressed
21082124
@item

0 commit comments

Comments
 (0)