Skip to content

Commit 47ad6ee

Browse files
committed
Upgrade Nuget
1 parent bae519e commit 47ad6ee

File tree

4 files changed

+80
-5
lines changed

4 files changed

+80
-5
lines changed

.github/instructions/benchmark.instructions.md

Lines changed: 76 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,4 +74,79 @@ public Int32 ThreadCount { get; set; }
7474
4. **对比分析**
7575
- 纵向:同场景不同并发趋势,找出最优并发点
7676
- 横向:不同方案同并发差异百分比
77-
5. 性能瓶颈定位 → 优化建议(按优先级排序,含预期收益)
77+
5. 性能瓶颈定位(按重要程度排序)→ 优化建议(含预期收益与内存节省预估)
78+
79+
## 8. 性能瓶颈定位规范
80+
81+
性能瓶颈定位章节是报告的核心价值输出,必须遵循以下规范:
82+
83+
### 8.1 瓶颈点结构(每个瓶颈必须包含)
84+
85+
每个瓶颈点必须包含以下要素,缺一不可:
86+
87+
| 要素 | 说明 | 示例 |
88+
|------|------|------|
89+
| **优先级标签** | P0/P1/P2/P3,按影响程度降序 | P0 |
90+
| **瓶颈名称** | 一句话准确描述瓶颈 | VisitTime 写入触发 MESI 缓存行争用 |
91+
| **优化收益占比** | 该瓶颈在总体可优化空间中的占比 | ~35% |
92+
| **现象与数据** | 用 BDN 实测数据量化问题严重程度 | 4T→8T 扩展仅 1.3x,低于预期 2.0x |
93+
| **根因分析** | 从代码执行路径分析到底层硬件行为 | Get 每次写 VisitTime → 缓存行 Modified → 多核 MESI 失效 |
94+
| **开销占比估算** | 在单次操作总耗时中的占比 | 占 Get 总耗时 30%~40% |
95+
| **内存影响** | 每次操作的额外内存分配或 GC 压力 | 48 B/次装箱分配,32 线程累计 3 MB |
96+
| **优化方向** | 具体可落地的优化方案 | 时间窗口内跳过更新(如 1s 内不重复写) |
97+
| **预期收益** | 速度提升倍数 + 内存节省比例 | 多线程吞吐 +20-30%,消除缓存行争用 |
98+
99+
### 8.2 瓶颈分级标准
100+
101+
| 级别 | 定义 | 优化收益占比 | 行动 |
102+
|------|------|------------|------|
103+
| **P0** | 影响核心吞吐或造成 >30% 性能损失 | ≥25% | 必须优化 |
104+
| **P1** | 影响多线程扩展性或造成显著内存压力 | 15%~25% | 建议优化 |
105+
| **P2** | 特定场景下的次要瓶颈 | 5%~15% | 可选优化 |
106+
| **P3** | 微小开销,仅在极端场景有影响 | <5% | 记录备查 |
107+
108+
### 8.3 瓶颈定位表格模板
109+
110+
性能瓶颈定位章节使用以下统一表格格式:
111+
112+
```markdown
113+
### 核心瓶颈点总览
114+
115+
| 优先级 | 瓶颈 | 优化收益占比 | 当前开销 | 优化后预估 | 内存节省 |
116+
|--------|------|------------|---------|-----------|---------|
117+
| P0 | {瓶颈名称} | ~{X}% | {耗时/分配} | {目标值} | {节省比例} |
118+
| P1 | {瓶颈名称} | ~{X}% | {耗时/分配} | {目标值} | {节省比例} |
119+
| ... | ... | ... | ... | ... | ... |
120+
```
121+
122+
### 8.4 内存优化方向表格模板
123+
124+
紧跟瓶颈总览表之后,补充内存优化方向:
125+
126+
```markdown
127+
### 关键内存优化方向
128+
129+
| 优先级 | 优化方向 | 当前分配 | 优化后预估 | 节省比例 | 实施方案 |
130+
|--------|---------|---------|-----------|---------|---------|
131+
| P0 | {方向} | {X} B/op | {Y} B/op | {Z}% | {方案} |
132+
| ... | ... | ... | ... | ... | ... |
133+
```
134+
135+
### 8.5 开销拆解要求
136+
137+
对每个核心操作,必须给出开销来源拆解表:
138+
139+
```markdown
140+
| 开销来源 | 占比估算 | 耗时估算 | 说明 |
141+
|---------|---------|---------|------|
142+
| {来源1} | ~{X}% | ~{N} ns | {原因} |
143+
| {来源2} | ~{X}% | ~{N} ns | {原因} |
144+
```
145+
146+
### 8.6 撰写原则
147+
148+
- **数据驱动**:所有结论必须有 BDN 实测数据支撑,禁止无数据臆测
149+
- **量化优先**:用"快 X 倍"、"省 Y%"、"降 Z B/op"表达,避免"显著"、"明显"等模糊词
150+
- **根因到底**:从应用层代码 → 运行时机制 → CPU 微架构逐层分析
151+
- **可操作**:每个优化建议必须指明具体修改位置和实施方案,而非泛泛建议
152+
- **排序严格**:P0 在前,P3 在后,同级按收益占比降序

AntJob.Agent/AntJob.Agent.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232
</ItemGroup>
3333

3434
<ItemGroup>
35-
<PackageReference Include="NewLife.Stardust" Version="3.7.2026.303" />
35+
<PackageReference Include="NewLife.Stardust" Version="3.7.2026.307" />
3636
</ItemGroup>
3737

3838
<ItemGroup>

AntJob.Web/AntJob.Web.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
<ItemGroup>
3131
<PackageReference Include="NewLife.Cube.Core" Version="6.9.2026.303" />
3232
<PackageReference Include="NewLife.Remoting.Extensions" Version="3.7.2026.302" />
33-
<PackageReference Include="NewLife.Stardust.Extensions" Version="3.7.2026.303" />
33+
<PackageReference Include="NewLife.Stardust.Extensions" Version="3.7.2026.307" />
3434
</ItemGroup>
3535
<ItemGroup>
3636
<ProjectReference Include="..\AntJob.Data\AntJob.Data.csproj" />

AntJob/AntJob.csproj

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,9 +49,9 @@
4949
</ItemGroup>
5050

5151
<ItemGroup>
52-
<PackageReference Include="NewLife.Core" Version="11.13.2026.301" />
52+
<PackageReference Include="NewLife.Core" Version="11.13.2026.308" />
5353
<PackageReference Include="NewLife.Remoting" Version="3.7.2026.302" />
54-
<PackageReference Include="NewLife.Stardust" Version="3.7.2026.303" />
54+
<PackageReference Include="NewLife.Stardust" Version="3.7.2026.307" />
5555
</ItemGroup>
5656

5757
<ItemGroup>

0 commit comments

Comments
 (0)