Skip to content

Commit e75f49e

Browse files
docs: refine detailed estimation package taxonomy [skip-ci]
1 parent 6f0ed9d commit e75f49e

2 files changed

Lines changed: 98 additions & 12 deletions

File tree

docs/cx/ESTIMATION_PACKAGE_SPEC.md

Lines changed: 54 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -100,6 +100,48 @@ The target design is that the application side only needs to specify:
100100
Estimation methods are strongly coupled with how the required measurement data is obtained.
101101
Therefore BenchKit should preferably be able to represent not only the estimation model, but also the measurement assumptions of the method as part of the package.
102102

103+
### 3.3.1 取得方式ごとの詳細パッケージ / Detailed Packages by Acquisition Path
104+
105+
詳細推定パッケージは、単に「詳細推定」でひとまとめにせず、少なくとも取得方式ごとに区別できることが望ましい。
106+
たとえば以下のような区別を許容すべきである。
107+
108+
- `instrumented_app_sections`
109+
- アプリ自前の区間時間や区間別結果を入力とする package
110+
- `instrumented_tool_sections`
111+
- Caliper などの外部ツール由来の区間時間や区間別結果を入力とする package
112+
- `counter_based`
113+
- 特定区間に対して採取された詳細性能カウンターを入力とする package
114+
115+
Detailed estimation packages should not be grouped together as a single undifferentiated category.
116+
They should preferably be distinguishable at least by acquisition path, for example:
117+
118+
- `instrumented_app_sections`
119+
- packages that use application-defined interval timings or section-wise results
120+
- `instrumented_tool_sections`
121+
- packages that use interval timings or section-wise results from external tools such as Caliper
122+
- `counter_based`
123+
- packages that use detailed counters collected for specific sections
124+
125+
### 3.3.2 区間ごとの複合推定 / Section-Wise Composite Estimation
126+
127+
推定パッケージは、単一手法だけでなく、区間ごとに異なる推定方式を束ねる複合パッケージであってもよい。
128+
特に以下を許容すべきである。
129+
130+
- 計算区間はカウンターベース
131+
- 通信区間は別個の通信モデル
132+
- その他の区間は区間時間ベース
133+
134+
この場合、BenchKit は最終 FOM が複数区間の推定結果の合成であることを受け入れられるべきである。
135+
136+
An estimation package may be a composite package that combines different estimation methods for different sections, rather than a single method.
137+
In particular, the framework should allow cases such as:
138+
139+
- compute sections estimated with counter-based methods
140+
- communication sections estimated with a separate communication model
141+
- other sections estimated from interval timings
142+
143+
In such cases, BenchKit should be able to accept that the final FOM is composed from multiple section-wise estimation results.
144+
103145
### 3.4 Git 公開を前提にしない / Do Not Assume Git Publication
104146

105147
推定パッケージは、常に Git 管理下に置けるとは限らない。
@@ -200,6 +242,7 @@ Examples:
200242
- 任意入力
201243
- 補助入力
202244
- 外部入力
245+
- 区間ごとの必要入力
203246

204247
The package must define the inputs required for estimation.
205248

@@ -209,6 +252,7 @@ It should preferably be able to express at least:
209252
- optional inputs
210253
- auxiliary inputs
211254
- external inputs
255+
- section-wise required inputs
212256

213257
### 4.4 適用可能性判定 / Applicability Evaluation
214258

@@ -316,17 +360,21 @@ These are suitable for high-frequency runs and PoC work.
316360

317361
例:
318362

319-
- `section_breakdown_scaling`
320-
- `annotated_interval_model`
321-
- `external_counter_model`
363+
- `instrumented_app_sections`
364+
- `instrumented_tool_sections`
365+
- `counter_based_section_model`
366+
- `communication_section_model`
367+
- `composite_section_model`
322368

323369
これらは、深い分析や将来機評価に向く。
324370

325371
Examples:
326372

327-
- `section_breakdown_scaling`
328-
- `annotated_interval_model`
329-
- `external_counter_model`
373+
- `instrumented_app_sections`
374+
- `instrumented_tool_sections`
375+
- `counter_based_section_model`
376+
- `communication_section_model`
377+
- `composite_section_model`
330378

331379
These are suitable for deeper analysis and future-system evaluation.
332380

docs/cx/ESTIMATION_SPEC.md

Lines changed: 44 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -90,15 +90,37 @@ At least conceptually, the estimation flow should separate:
9090
- 簡易推定:
9191
FOM、ノード数、既知の比較基準など少数の情報から行う推定
9292
- 詳細推定:
93-
section、overlap、詳細性能カウンター、アノテーション区間時間などを使う推定
93+
アプリ自前の区間時間、外部ツール由来の区間時間、詳細性能カウンターなどを使う推定
9494

9595
Estimation should not always assume detailed counters or detailed annotations.
9696
At minimum, the following stages should be able to coexist:
9797

9898
- lightweight estimation:
9999
estimation from a small number of inputs such as FOM, node count, and known comparison baselines
100100
- detailed estimation:
101-
estimation using section, overlap, detailed counters, or annotated interval timings
101+
estimation using application-defined interval timings, tool-derived interval timings, or detailed counters
102+
103+
### 3.2.1 詳細推定の取得方式差異 / Different Acquisition Paths Within Detailed Estimation
104+
105+
詳細推定は単一の方式として扱うべきではない。
106+
少なくとも、以下の取得方式の違いを区別できることが望ましい。
107+
108+
- `instrumented_app_sections`
109+
- アプリ自前で出力された区間時間や区間別結果に基づく推定
110+
- `instrumented_tool_sections`
111+
- Caliper などの外部ツール由来の区間時間や区間別結果に基づく推定
112+
- `counter_based`
113+
- 特定区間に対して詳細性能カウンターが採取されていることを前提とする推定
114+
115+
Detailed estimation should not be treated as a single undifferentiated method.
116+
At minimum, it should be possible to distinguish the following acquisition paths:
117+
118+
- `instrumented_app_sections`
119+
- estimation based on interval timings or section-wise results emitted by the application itself
120+
- `instrumented_tool_sections`
121+
- estimation based on interval timings or section-wise results collected by external tools such as Caliper
122+
- `counter_based`
123+
- estimation that assumes detailed counters are available for specific sections
102124

103125
### 3.3 追跡可能性 / Traceability
104126

@@ -224,6 +246,14 @@ However, from the perspective of BenchKit, the following should be identifiable:
224246
- scaling method
225247
- future-system assumption
226248

249+
また、推定モデルは常に単一モデルである必要はない。
250+
区間ごとに異なる推定方式を組み合わせる複合推定を許容すべきである。
251+
特に、計算区間、通信区間、入出力区間などに対して、別々の推定方式を適用できることが望ましい。
252+
253+
The estimation model need not always be a single monolithic model.
254+
Composite estimation that combines different estimation methods for different sections should be allowed.
255+
In particular, it is desirable to apply separate estimation methods to compute, communication, and I/O sections.
256+
227257
### 4.4 比較基準 / Comparison Baseline
228258

229259
推定では、比較基準となる benchmark result が重要である。
@@ -268,6 +298,12 @@ Lightweight estimation without section breakdown, overlap, communication interva
268298

269299
When this kind of adjustment is applied, it must be made explicit in `assumptions` or `model` in Estimate JSON.
270300

301+
また、通信区間の推定方式は、計算区間とは独立に切り替え可能であることが望ましい。
302+
たとえば、計算区間はカウンターベース、通信区間は別個の通信モデル、その他の区間は区間時間ベースという組合せを許容すべきである。
303+
304+
In addition, the estimation method for communication sections should preferably be switchable independently from that of compute sections.
305+
For example, the framework should allow combinations such as counter-based estimation for compute sections, a separate communication model for communication sections, and interval-timing-based estimation for other sections.
306+
271307
### 4.5 適用可能性判定 / Applicability Evaluation
272308

273309
推定実行前に、対象方式が必要とする入力が揃っているかを判定できることが望ましい。
@@ -326,9 +362,10 @@ BenchKit は少なくとも、以下の推定方式を受け入れられるこ
326362

327363
入力:
328364

329-
- section / overlap
365+
- アプリ自前の区間時間や区間別結果
366+
- 外部ツール由来の区間時間や区間別結果
330367
- 詳細性能カウンター
331-
- アノテーション区間時間
368+
- 区間ごとの方式切替情報
332369
- より複雑なモデルや外部モデル
333370
- 各システム側のターゲットノード数
334371

@@ -366,9 +403,10 @@ If additional correction terms are introduced, they should be treated not as the
366403

367404
Inputs:
368405

369-
- section / overlap
406+
- application-defined interval timings or section-wise results
407+
- tool-derived interval timings or section-wise results
370408
- detailed performance counters
371-
- annotated interval timings
409+
- section-wise method-selection information
372410
- more complex or external models
373411
- target node count for each system
374412

0 commit comments

Comments
 (0)