chore: initialize Calculet NPU research archive
This commit is contained in:
@@ -0,0 +1,14 @@
|
||||
archives/** filter=lfs diff=lfs merge=lfs -text
|
||||
history/**/*.bundle filter=lfs diff=lfs merge=lfs -text
|
||||
history/**/*.tar filter=lfs diff=lfs merge=lfs -text
|
||||
history/**/*.tar.gz filter=lfs diff=lfs merge=lfs -text
|
||||
source/**/*.a filter=lfs diff=lfs merge=lfs -text
|
||||
source/**/*.bin filter=lfs diff=lfs merge=lfs -text
|
||||
source/**/*.deb filter=lfs diff=lfs merge=lfs -text
|
||||
source/**/*.gz filter=lfs diff=lfs merge=lfs -text
|
||||
source/**/*.ko filter=lfs diff=lfs merge=lfs -text
|
||||
source/**/*.so filter=lfs diff=lfs merge=lfs -text
|
||||
source/**/*.tar filter=lfs diff=lfs merge=lfs -text
|
||||
source/**/*.zst filter=lfs diff=lfs merge=lfs -text
|
||||
source/**/*.zip filter=lfs diff=lfs merge=lfs -text
|
||||
|
||||
@@ -0,0 +1,76 @@
|
||||
# Calculet NPU 研究资料归档
|
||||
|
||||
本仓库是 2026-08-01 至 2026-08-02 从测试样机采集并在本地验收的 Calculet NPU 研究资料入口,供内网团队持续分析 Runtime、驱动、`llama.cpp`、算子优化、多模型调度和新模型适配。
|
||||
|
||||
状态:八个权威主归档完整,合计 `21,078,519,107` 字节;源码历史、Git bundle、模型文件清单和研究报告均已纳入。原始内容的 SHA-256 不因本仓库的分片方式而改变。
|
||||
|
||||
## 快速开始
|
||||
|
||||
仓库使用 Git LFS。首次使用前安装 Git LFS,然后克隆:
|
||||
|
||||
```bash
|
||||
git lfs install
|
||||
git clone git@192.168.10.248:cogito/calculet-npu-research-archive.git
|
||||
cd calculet-npu-research-archive
|
||||
./scripts/verify-repository.sh
|
||||
```
|
||||
|
||||
只想先看报告和源码、不立即下载约 21 GiB 原始归档时:
|
||||
|
||||
```bash
|
||||
GIT_LFS_SKIP_SMUDGE=1 git clone git@192.168.10.248:cogito/calculet-npu-research-archive.git
|
||||
```
|
||||
|
||||
随后可按需执行 `git lfs pull --include='archives/<路径>'`。
|
||||
|
||||
## 目录
|
||||
|
||||
| 路径 | 内容 | 用途 |
|
||||
|---|---|---|
|
||||
| `reports/` | 30 份研究报告、JSON 和校验工具 | 研究导航、接口契约、调优与实施规格 |
|
||||
| `documentation/` | Runtime API 与 VPN 原始 PDF | 官方接口和接入资料 |
|
||||
| `source/` | 去除嵌套 `.git` 后的可浏览源码快照 | 直接检索、代码阅读和修改起点 |
|
||||
| `history/` | Git bundle、精确仓库 tar、patch、reflog 和主题索引 | 恢复完整提交历史与失败/调优路径 |
|
||||
| `archives/` | 八个权威主归档;大文件为 512 MiB 可逆分片 | 灾备、重新解包、原始证据保全 |
|
||||
| `checksums/` | 原始归档、分片、模型和 Git 资产校验值 | 完整性复核 |
|
||||
| `provenance/` | 原始索引、传输 manifest、日志和完成标记 | 采集与传输审计 |
|
||||
| `scripts/` | 重组、校验和 bundle 恢复脚本 | 复现与长期维护 |
|
||||
|
||||
## 权威主归档
|
||||
|
||||
| 归档 | 字节数 | SHA-256 |
|
||||
|---|---:|---|
|
||||
| `00-critical-context-20260801.tar.zst` | 8,942,525 | `2ad543697861a386b36604f863acdc161fbfd6552c9cd1e959b1fbe540b524ed` |
|
||||
| `01-model-runtime-no-weights-20260801.tar.zst` | 11,253,912 | `5414d91cb4bc3c0e64bf29f7e86fc9cef2e2963ff0c5a5ca6488f008053630b8` |
|
||||
| `llama.cpp-full-no-exclusions-fd9bd632.tar.gz` | 264,921,801 | `55d28eb0b72eb8e22627028965912b3a274b76314f8d726f67427a42ee0b2d25` |
|
||||
| `baseline-analysis-export-20260801.tar` | 436,398,080 | `ba39aee991c8655324db4326c49a1f32af20ae450a8d07d51f9eac1c60186a4c` |
|
||||
| `calculet-container-home-v0.4.8-release.tar.gz` | 740,994,223 | `54fe26018983d293c404b2963db7eb90f70bf9d367eefe64ab36003cc9f9530c` |
|
||||
| `calculet-llama-v0.4.8-release.oci.tar` | 1,646,166,016 | `1ad4aba68c6a96cf7f592fdcd8e0c801bf022845aaf71cd49b909abd60365bf3` |
|
||||
| `user2-live-home-complete-20260801.tar.zst` | 1,684,911,580 | `581202c7c9fb732baaae3b7c5bd8aa595ac5e4d8a5c155749811cb282ce2afa1` |
|
||||
| `calculet-models-complete-20260801.tar.zst` | 16,284,930,970 | `ebb143415bc44456599265d07e0b0057497d8708ebafb23f53435d0c189622d8` |
|
||||
|
||||
小于等于 512 MiB 的归档直接位于 `archives/`。更大的归档位于同名 `.parts/` 目录,运行以下命令可重组并核对整包哈希:
|
||||
|
||||
```bash
|
||||
./scripts/reassemble-archives.sh /path/to/output
|
||||
```
|
||||
|
||||
## 恢复 Git 历史
|
||||
|
||||
`source/` 是便于 Gitea 在线浏览的工作树,不把嵌套仓库的 `.git` 目录直接嵌入本仓库。完整对象、分支、标签、reflog 证据和不可达提交保存在 `history/` 的 bundle 与精确仓库 tar 中。
|
||||
|
||||
从 bundle 建立独立仓库:
|
||||
|
||||
```bash
|
||||
./scripts/clone-bundle.sh history/llama.cpp/llama.cpp-all-refs-20260802.bundle /path/to/llama.cpp
|
||||
```
|
||||
|
||||
## 完整性与已知例外
|
||||
|
||||
- 八个主归档在发布前重新核对过 SHA-256 和格式。
|
||||
- 七个恢复仓库通过 `git fsck --full --no-reflogs`,五个 bundle 通过 `git bundle verify`。
|
||||
- macOS 普通工作树不能精确表达 Linux 大小写碰撞路径及 7 个 overlay whiteout 设备节点;它们在权威 tar 中完整保留。
|
||||
- baseline 自带清单对一个 depth500 包含一条过期重复哈希,实际文件匹配其第二条记录;baseline 主归档整包哈希通过。
|
||||
- `user2-live-home` 含采集时的 shell 历史、用户配置、测试目录和 rootless Podman 状态。发布前未检出 SSH 私钥、OpenVPN 配置、口令、访问令牌或授权头,但仓库仍应仅在获准的内网团队范围使用。
|
||||
|
||||
详细验收依据见 `provenance/完整性验收报告.md` 和 `reports/Calculet-NPU-全部数据下载与验收摘要-20260802.md`。
|
||||
Binary file not shown.
Executable
+14
@@ -0,0 +1,14 @@
|
||||
#!/bin/sh
|
||||
set -eu
|
||||
|
||||
if [ "$#" -ne 2 ]; then
|
||||
echo "usage: $0 BUNDLE DESTINATION" >&2
|
||||
exit 2
|
||||
fi
|
||||
|
||||
bundle=$1
|
||||
destination=$2
|
||||
|
||||
git bundle verify "$bundle"
|
||||
git clone "$bundle" "$destination"
|
||||
|
||||
Executable
+25
@@ -0,0 +1,25 @@
|
||||
#!/bin/sh
|
||||
set -eu
|
||||
|
||||
repo_root=$(CDPATH= cd -- "$(dirname -- "$0")/.." && pwd)
|
||||
output_dir=${1:-"$repo_root/reassembled"}
|
||||
|
||||
mkdir -p "$output_dir"
|
||||
|
||||
find "$repo_root/archives" -mindepth 1 -maxdepth 1 -type d -name '*.parts' -print | sort |
|
||||
while IFS= read -r parts_dir; do
|
||||
archive_name=$(basename "$parts_dir" .parts)
|
||||
destination="$output_dir/$archive_name"
|
||||
echo "Reassembling $archive_name"
|
||||
find "$parts_dir" -type f -name 'part-*' -print | sort | xargs cat > "$destination"
|
||||
done
|
||||
|
||||
for archive in "$repo_root"/archives/*; do
|
||||
if [ -f "$archive" ]; then
|
||||
archive_name=$(basename "$archive")
|
||||
[ -e "$output_dir/$archive_name" ] || ln -s "$archive" "$output_dir/$archive_name"
|
||||
fi
|
||||
done
|
||||
|
||||
(cd "$output_dir" && shasum -a 256 -c "$repo_root/checksums/main-archives.sha256")
|
||||
|
||||
Executable
+21
@@ -0,0 +1,21 @@
|
||||
#!/bin/sh
|
||||
set -eu
|
||||
|
||||
repo_root=$(CDPATH= cd -- "$(dirname -- "$0")/.." && pwd)
|
||||
|
||||
cd "$repo_root"
|
||||
git lfs fsck
|
||||
shasum -a 256 -c checksums/published-files.sha256
|
||||
shasum -a 256 -c checksums/archive-parts.sha256
|
||||
awk '
|
||||
NR == FNR { expected[$2] = $1; next }
|
||||
!($2 in expected) || expected[$2] != $1 { bad = 1 }
|
||||
{ delete expected[$2] }
|
||||
END {
|
||||
for (name in expected) bad = 1
|
||||
exit bad
|
||||
}
|
||||
' checksums/main-archives.sha256 checksums/reassembled-archives.sha256
|
||||
|
||||
echo "Repository files and LFS objects verified."
|
||||
echo "Run ./scripts/reassemble-archives.sh /path/to/output for whole-archive verification."
|
||||
Reference in New Issue
Block a user