소스 정보
- 저장소
- ZhangXin8069/20250814-20260815
- 최근 소스 활동
- 2026년 8월 14일 03:26
- 감지된 SKILL.md 언어
- 중국어
- 스타
- 1
- 포크
- 0
설치 방법
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
소스 파일 검토
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
메뉴
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
직접 명령은 검토 Prompt를 거치지 않습니다. 실행하기 전에 소스를 확인하세요.
npx skills add https://github.com/ZhangXin8069/20250814-20260815 --skill gpu-pipeline명령은 한 줄로 유지됩니다. 복사하기 전에 가로로 스크롤해 전체 내용을 확인하세요.
로컬 사본을 원하시나요? SkillsMP에서 현재 제공할 수 있는 파일을 다운로드하세요.
将 Peskin & Schroeder《An Introduction to Quantum Field Theory》转写为 LaTeX 的完整 skill — 从 pdftotext 提取逐章重建可编译 LaTeX(22 章 3 部 + 附录),公式按章自动编号,插图提取为 figX.Y.png
编译项目中任意 LaTeX 文档 — 单文件、整个目录或全量重编译
将 Wilson《Confinement of quarks》(PRD 10, 2445 (1974))转写为 LaTeX 的完整 skill — 从 pdftotext 提取逐节重建可编译 LaTeX(6 节 + 致谢 + 参考文献),保留原文编号、公式与 10 张插图
SOC 직업 분류 기준
SKILL.md 표시 중
| name | gpu-pipeline |
| description | 一键运行 GPU 加速非极化胶子 PDF 全流程验证管线 (CuPy/CUDA, 蒸馏2pt+OPE从头计算+huangcl分析) |
一键在当前环境运行完整的 disconnected 胶子 PDF 验证管线: 蒸馏两点函数 → OPE 从头计算 → huangcl 比率分析 → 图表 → 报告。
系综: beta6.20_mu-0.2770_ms-0.2400_L24x72 (L24x72)
格点: 72×24³, a=0.1053 fm, β=6.20
Nev: 100 (per-conf eigensystem)
组态: 6250, 6450, 6650 (Nconf=3)
动量: P=(0, 0, -2), mom_smear=-2
算符: _Cg5g4 (Cγ₅γ₄)
GPU: CUDA/CuPy, complex64, 自动检测设备
gpu-pipeline run — 运行完整 GPU 管线cd /root/lattice-pdf/agent/docker-v20260727
# 完整运行 (3 组态, ~8.5 min)
python run_pipeline.py
# 单组态快速测试 (~3 min)
python run_pipeline.py --conf-id 6250
# 双精度模式 (complex128, ~60 min)
python run_pipeline.py --conf-id 6250 --precision complex128
# 仅重新生成图表 (已有数据)
python run_pipeline.py --skip-2pt --skip-ope
# 详细调试输出
python run_pipeline.py --conf-id 6250 --verbose
gpu-pipeline check — GPU 环境与数据检查cd /root/lattice-pdf/agent/docker-v20260727 && python3 -c "
import sys, os
sys.path.insert(0,'.')
# ── GPU ──
import cupy as cp
d = cp.cuda.Device(); mem = d.mem_info
props = cp.cuda.runtime.getDeviceProperties(d.id)
name = props['name'].decode() if isinstance(props['name'], bytes) else props['name']
print(f'GPU: {name} | Mem: {mem[0]/1024**3:.1f}/{mem[1]/1024**3:.1f} GB free')
print(f'CuPy: {cp.__version__} | CUDA: {cp.cuda.runtime.runtimeGetVersion()}')
# ── Python modules ──
for mod in ['numpy','scipy','matplotlib','cupy']:
m = __import__(mod); print(f' {\"✓\"} {mod}: {getattr(m,\"__version__\",\"?\")}')
# ── Data ──
paths = {
'eig_6250': '/public/group/lqcd/eigensystem/beta6.20_mu-0.2770_ms-0.2400_L24x72/6250/',
'eig_6450': '/public/group/lqcd/eigensystem/beta6.20_mu-0.2770_ms-0.2400_L24x72/6450/',
'eig_6650': '/public/group/lqcd/eigensystem/beta6.20_mu-0.2770_ms-0.2400_L24x72/6650/',
'gauge_6250': '/public/group/lqcd/configurations/CLOVER/beta6.20_mu-0.2770_ms-0.2400_L24x72/beta6.20_mu-0.2770_ms-0.2400_L24x72_cfg_6250.lime',
'peram_6250': '/public/group/lqcd/perambulators/beta6.20_mu-0.2770_ms-0.2400_L24x72/light/6250/',
}
for name, p in paths.items():
ok = os.path.exists(p)
sz = ''
if ok and os.path.isfile(p): sz = f' ({os.path.getsize(p)/1024**3:.1f} GB)'
elif ok and os.path.isdir(p): sz = f' ({len(os.listdir(p))} files)'
print(f' {\"✓\" if ok else \"✗\"} {name}: {p}{sz}')
"
gpu-pipeline status — 查看最新运行状态latest=$(ls -dt /root/lattice-pdf/agent/docker-v20260727/output_*/ 2>/dev/null | head -1)
[ -n "$latest" ] && {
echo "=== ${latest} ==="
echo "Timing:"
grep "elapsed=" "$latest/run.log" | grep -E "01_compute|02_compute|03_huang|Total time"
echo ""
echo "Summary:"
grep -E "Pipeline Complete|ALL OK|✗|ERROR|Ratio" "$latest/run.log" | tail -10
echo ""
echo "Plots:"
ls -lh "$latest/plots/"*.png 2>/dev/null
} || echo "No output found."
gpu-pipeline plots — 仅重新生成图表cd /root/lattice-pdf/agent/docker-v20260727
latest=$(ls -dt output_*/ 2>/dev/null | head -1)
[ -z "$latest" ] && { echo "No output found. Run gpu-pipeline run first."; exit 1; }
python3 -c "
import sys; sys.path.insert(0,'.')
from analyze_ratio import run_analysis
from utils import setup_logging
import json
from pathlib import Path
config = json.load(open('run_config.json'))
data_dir = Path('$latest') / 'data'
plots_dir = Path('$latest') / 'plots'
logger = setup_logging(Path('$latest') / 'run.log', 'plot_fix')
results = run_analysis(config, data_dir, plots_dir, logger)
print(f'Status: {results[\"status\"]}')
"
gpu-pipeline report — 编译技术报告cd /root/lattice-pdf/agent/docker-v20260727
xelatex -interaction=nonstopmode -halt-on-error \
-output-directory=report report/main.tex 2>/dev/null
xelatex -interaction=nonstopmode -halt-on-error \
-output-directory=report report/main.tex 2>/dev/null
echo "Report: $(ls -lh report/main.pdf | awk '{print $5}')"
gpu-pipeline clean — 清理所有输出echo "Cleaning all pipeline outputs..."
rm -rf /root/lattice-pdf/agent/docker-v20260727/output_*/
rm -f /root/lattice-pdf/agent/docker-v20260727/report/main.{aux,log,out,toc,pdf}
echo "Done."
gpu-pipeline package — 打包输出cd /root/lattice-pdf/agent/docker-v20260727
latest=$(ls -dt output_*/ 2>/dev/null | head -1 | sed 's:/$::')
[ -z "$latest" ] && { echo "No output to package."; exit 1; }
tar -czf "${latest}.tar.gz" "$latest"/{plots,run.log,timing.jsonl,final_report.md,run_config.json,gpu_info.json}
# Compile report
xelatex -interaction=nonstopmode -halt-on-error -output-directory=report report/main.tex >/dev/null 2>&1
xelatex -interaction=nonstopmode -halt-on-error -output-directory=report report/main.tex >/dev/null 2>&1
[ -f report/main.pdf ] && cp report/main.pdf "$latest/report.pdf"
echo "Packaged: ${latest}.tar.gz ($(du -h ${latest}.tar.gz | cut -f1))"
echo "Report: $latest/report.pdf"
| 步骤 | 描述 | GPU 加速 | 典型耗时 (Nconf=1/Nconf=3) |
|---|---|---|---|
| 0 | 环境检查 | — | <1s / <1s |
| 1 | 质子 2pt 蒸馏 | VVV, Wick 收缩 | 125s / 389s |
| 2 | OPE 从头计算 | F_{μν}, Wilson 线, 缩并 | 42s / 120s |
| 3 | huangcl 比率分析 | Jackknife 重采样 | 3s / 3s |
| 4 | 最终报告 | — | <1s / <1s |
output_YYYYMMDD_HHMMSS/
├── run.log # 完整日志
├── timing.jsonl # 每步耗时与显存
├── final_report.md # Markdown 综合报告
├── gpu_info.json # GPU 设备信息
├── data/
│ ├── eigenvalues_Nev100.npy
│ ├── conf_6250/ # VVV, F_{μν}×3, OPE×3, 2pt, meff
│ ├── conf_6450/
│ └── conf_6650/
└── plots/
├── ratio.png # R(z) 比率图
├── ratio_diagnostics.png # 多 z 值 Re/Im 诊断
├── effective_mass.png # 有效质量 3-panel
└── field_strength_diagnostics.png # OPE 质量诊断
| 选项 | 精度 | GPU 显存 | 耗时 | 适用场景 |
|---|---|---|---|---|
--precision complex64 (默认) | 单精度 float32 | 低 | 快 | 快速验证、统计研究 |
--precision complex128 | 双精度 float64 | 高 (2×) | 慢 (~20×) | 精密谱学 |
当前统计误差 ($N_{\rm conf}=3$) 远大于 complex64 的精度损失 ($\sim 10^{-3}$), 默认单精度完全满足需求。