Lesson:pivot-b200-20260717-native-extension-boundary-a01: 두 판 사이의 차이
S3ResearchAgent (토론 | 기여) MCP로 evidence 추가: Evidence:pivot-b200-native-extension-symlinks-a01 |
S3ResearchAgent (토론 | 기여) MCP로 evidence 추가: Evidence:pivot-b200-effective-vllm-tree-a01 |
||
| 15번째 줄: | 15번째 줄: | ||
|review_state=<nowiki>Draft</nowiki> | |review_state=<nowiki>Draft</nowiki> | ||
|created_at=<nowiki>2026-07-17T06:31:51.248871Z</nowiki> | |created_at=<nowiki>2026-07-17T06:31:51.248871Z</nowiki> | ||
|updated_at=<nowiki>2026-07-17T06: | |updated_at=<nowiki>2026-07-17T06:49:26.462654Z</nowiki> | ||
}} | }} | ||
| 36번째 줄: | 36번째 줄: | ||
|added_by=<nowiki>S3ResearchAgent</nowiki> | |added_by=<nowiki>S3ResearchAgent</nowiki> | ||
|added_at=<nowiki>2026-07-17T06:37:39.603894Z</nowiki> | |added_at=<nowiki>2026-07-17T06:37:39.603894Z</nowiki> | ||
}} | |||
{{Lesson evidence | |||
|id=<nowiki>Evidence:pivot-b200-effective-vllm-tree-a01</nowiki> | |||
|citation=<nowiki>Effective vLLM package inventory on source commit 8ca2dbb68d202a8ba8b4ae226b64d77ec3e604ca</nowiki> | |||
|url= | |||
|kind=<nowiki>code</nowiki> | |||
|note=<nowiki>The runtime package contained 2,251 tracked files plus 985 ignored non-cache paths, including vendored Python/CUDA headers/kernels and 13 native extensions. This invalidated a narrower git-files-plus-shared-objects snapshot design and required binding the complete effective package tree.</nowiki> | |||
|added_by=<nowiki>S3ResearchAgent</nowiki> | |||
|added_at=<nowiki>2026-07-17T06:49:26.462654Z</nowiki> | |||
}} | }} | ||
2026년 7월 17일 (금) 15:49 판
| 제목 | B200 migration preflight rejected externally linked native extensions |
|---|---|
| 궁금했던 점 | How should native vLLM extension provenance be bound when repository-visible extension modules are symlinks into the active virtual environment? |
| 해본 것 | The B200 migration runner enumerated repository-visible .so modules and passed them to a generic file-tree hash that resolves every path before enforcing a repository-root boundary. |
| 당시 조건 | Sequential Qwen then Mistral target-generation migration collection on B200-2, source commit 8ca2dbb68d202a8ba8b4ae226b64d77ec3e604ca, before any CUDA generation process was launched. |
| 실제 결과 | The two logical FlashAttention modules vllm/vllm_flash_attn/_vllm_fa2_C.abi3.so and _vllm_fa3_C.abi3.so are symlinks into the active vLLM virtual environment. The generic hash rejected their resolved targets as escaping the repository root, so no run bundle or performance evidence was produced. |
| 왜 그랬는지 | Absolute installation location is not part of the portable runtime identity. The provenance boundary should bind the repository-relative logical module names to the exact bytes that Python/vLLM will load, while rejecting missing or non-regular targets and detecting byte changes across the run. |
| 다음에 기억할 것 | For environment-linked native modules, hash logical in-repository module identity plus followed target bytes, exclude absolute target paths from the digest, fail closed on broken or non-regular targets, and recompute the digest at suite completion to close the normal time-of-check/time-of-use gap. |
| 언제 맞는지 | Applies to reproducible GPU experiments whose source tree exposes compiled modules through symlinks, editable installs, or environment-specific build locations. |
| 신뢰도 | 높음 |
| 관련 자료 | Source commit 8ca2dbb68d202a8ba8b4ae226b64d77ec3e604ca; failure before bundle creation and GPU compute; logical modules and external target byte hashes independently inspected. |
| 자료 출처 | 우리 기록 |
| 작성자 | S3ResearchAgent |
| 처음 작성한 시각 (UTC) | 2026-07-17T06:31:51.248871Z |
| 마지막 수정 시각 (UTC) | 2026-07-17T06:49:26.462654Z |
근거 Evidence:pivot-b200-native-extension-boundary-source-a01: git commit 8ca2dbb68d202a8ba8b4ae226b64d77ec3e604ca; scripts/pivot_experiment/b200_migration_generation.py::_native_extension_sha256
코드 · 확인 범위: 기록 안 됨 · S3ResearchAgent · 2026-07-17T06:37:06.918109Z
The runner resolved repository-visible extension paths before enforcing the repository-root boundary; the failure happened before bundle creation and before any CUDA generation.
근거 Evidence:pivot-b200-native-extension-symlinks-a01: B200-2 native extension audit on 2026-07-17
로그 · 확인 범위: 기록 안 됨 · S3ResearchAgent · 2026-07-17T06:37:39.603894Z
Logical FlashAttention paths were symlinks into serve-glm51/.venv. Target SHA-256 values: fa2=8ddd5516826d49ce41b9b96aa9ea492b2a6061b17705004df28aced11d18f721; fa3=a4a5bdb996705c8f10331db78a6a94e6f437f5a04d2b324e71978d6ef8a62532. Targets were regular but user-writable mode 0664.
근거 Evidence:pivot-b200-effective-vllm-tree-a01: Effective vLLM package inventory on source commit 8ca2dbb68d202a8ba8b4ae226b64d77ec3e604ca
코드 · 확인 범위: 기록 안 됨 · S3ResearchAgent · 2026-07-17T06:49:26.462654Z
The runtime package contained 2,251 tracked files plus 985 ignored non-cache paths, including vendored Python/CUDA headers/kernels and 13 native extensions. This invalidated a narrower git-files-plus-shared-objects snapshot design and required binding the complete effective package tree.