- Gooo shared record field judge v1
- 2026-10-08 ํ์ ๊ฐ๋ฐ: ์ ์ฅํ ๋ณด์กฐ ํจ์ ์กฐ๋ฆฝ ์ด์ด๊ฐ๊ธฐ
- 2026-10-08 ๊ณต๊ฐ 0.6.6์์ ์์ฒด ๋ชจ๋ธ๋ก ๋๊ตฌ ์กฐ๋ฆฝํ๊ธฐ
- 2026-10-08: ์กฐ๋ฆฝํ ๋ณด์กฐ ํจ์๋ฅผ ์ฑ์์ ํธ์ถํ๊ณ ์
๋ ฅ์ ๊ด์ธกํ๊ธฐ
- Gooo๋ก ์์ฑํ ์ํ๊ณ ๋๊ตฌ์ ์ฐ๊ฒฐํ๊ธฐ
- Gooo ์ ์ธ์์ ๊ณต๊ฐ API ์ฐธ์กฐ ์์ฑํ๊ธฐ
- ์คํจํ ์กฐํฉ์ ๊ธฐ๋กํ๊ณ ๋ค์ ์ฝ๋๋ฅผ ์์ฑํ๊ธฐ
- ํ์ฌ ๊ฐ๊ณผ ์ ์ฅ๊ฐ์ ์ถ์ฒ๋ฅผ ์ฝ๋ ์
๋ ฅ
- ์์ฐจ ํ๋ ์กฐ๋ฆฝ์ผ๋ก ํ์ฅ ์ค
- ๊ฐ์ ์๋ฃ์์ ๊ด์ธกํ ๊ฒฐ๊ณผ
- ์ฌ์ฉ
- ์ค์ ์กฐ๋ฆฝ๊ณผ ์คํ
- ํ์ต๊ณผ ๊ทผ๊ฑฐ
- ๊ณต๊ฐ ๋ชจ๋ธ์ ๊ฐ๋ฐ ์ค์ ์ค์ ์ฌ์ฉํ ๊ธฐ๋ก
- ์ฐธ๊ณ ํ ์๋ฆฌ์ ์ฐ๊ตฌ
- ์ค์น๋ณธ์ ๋ฐ๋ณต ๊ด์ธก
- 2026-10-08 ํ์ ๊ฐ๋ฐ: ์ ์ฅํ ๋ณด์กฐ ํจ์ ์กฐ๋ฆฝ ์ด์ด๊ฐ๊ธฐ
Gooo shared record field judge v1
2026-10-08 ํ์ ๊ฐ๋ฐ: ์ ์ฅํ ๋ณด์กฐ ํจ์ ์กฐ๋ฆฝ ์ด์ด๊ฐ๊ธฐ
Gooo์ ๋ ์ฝ๋ ์ ํ ์กฐ๋ฆฝ์ ๋ณด์กฐ ํจ์์ ํธ์ถ์๊น์ง ์ด์ด๊ฐ ์ ์๊ฒ ๊ตฌํํ์ต๋๋ค. ํจ์๊ฐ ๋ฐ๋๋ฉด ๊ทธ ํจ์์ ์์กดํ๋ ๊ธฐ์กด ํ๋ณด๋ฅผ ๋ค์ ๊ฒ์ฌํ๊ณ , ๊ณผ๊ฑฐ ๋จ๊ณ๋ ๋น์ ์์ค๋ก ์ฌํํฉ๋๋ค. ๋ชจ๋ธ์ ์ฒ์ ์ ์ํ ํ๋ณด ์์๋ฅผ ๋จ๊ธฐ๋ฉฐ, ํ์ ์กฐ๋ฆฝ์๋ ์ ๋ชจ๋ธ ํธ์ถ์ด ์์ต๋๋ค.
๊ฐ์ ์ง๋จ ๊ณผ์ ์์ ์ฒซ ์ ์ฅ ๊ฒฐ๊ณผ๋ ๋ถํ ์ฌ๋ก 3/5ยท์ฑ ์ถ๋ ฅ 2/4์์ต๋๋ค. ์ด์ด ๋ง๋ค๊ธฐ๋ ๊ฒฐ์ ๋ก ์์์์ ์ ํ๋ณด 3๊ฐ, ์ด QAT ๋ชจ๋ธ์ ์์์์ 1๊ฐ๋ฅผ ์๋ํด ๋ ๊ฒฝ๋ก ๋ชจ๋ ๋ถํ 5/5ยท์ฑ 4/4์ ๊ฐ์ ์์ฑ ์ฝ๋๋ฅผ ์ป์์ต๋๋ค. ์ ์ฅ ์ฌ์คํ๋ 4/4์์ต๋๋ค. ๋ณ๋์ ์ค์ฒฉ ํจ์ ์์ ๋ ๋ฐ๋ ๋ณด์กฐ ํจ์ ์๋์์ ๊ธฐ์กด ํ๋ณด 1๊ฐ๋ฅผ ์ฌ๊ฒ์ฌํ๋ฉฐ ์ฑ ์ถ๋ ฅ 0/2 โ 2/2๋ฅผ ๊ด์ธกํ์ต๋๋ค.
๋ชจ๋ธ ํ๋จ์ 11.375ยตs, ์ค๋น๋ 0.716167ms, ๋ณต์ ํ ์๋ 2,096B์์ต๋๋ค. ์ ์ฒด ํ์ ๋ช ๋ น์ ๊ฒฐ์ ๋ก 0.33์ดยท๋ชจ๋ธ ์์ 0.35์ด์์ต๋๋ค. ๋จ์ผ ์์ฐจ ๋ก์ปฌ ๊ด์ธก์ด๋ฉฐ ์บ์๋ฅผ ํต์ ํ์ง ์์์ต๋๋ค. ๋ชจ๋ธ ์์ฒด์ CPU ์ฆ๊ฐ๋๊ณผ ์ธ๋ถ ์ฌํ์ ๋ฏธ์ธก์ ์ ๋๋ค. ๊ฐ์ค์น์ ํ์ต ์๋ฃ๋ ์ด๋ฒ ์คํ์์ ๋ณ๊ฒฝํ์ง ์์์ต๋๋ค.
๊นจ๋ํ ์ปดํ์ผ๋ฌ 395fb538fae6c55edb173e660b22daef8544f01a์์ ์คํํ์ต๋๋ค. ์๋ ๊ณต๊ฐ 0.6.6 ๋ฐฐํฌ ์ดํ์ ๊ฐ๋ฐ ๊ธฐ๋ฅ์ ๋๋ค. ํจํค์ง ์คํ์ ํ์ ์กฐ๋ฆฝ๊ณผ ํ๋ณด ํ๊ฐ ์ค ์ค์ฒฉ ์ ๋ ฅ ์ด๋ ฅ์ ๋ค์ ์ธ์ด ๊ณผ์ ์ ๋๋ค.
English: Gooo now continues record-choice helper construction, rechecks dependent candidates when a helper changes, and replays historical stages with their original sources. This unchanged small model supplies the initial ordering. Continuation and replay make zero new predictions. The linked study retains partial results and the exact source, finite checks and measurement limits.
2026-10-08 ๊ณต๊ฐ 0.6.6์์ ์์ฒด ๋ชจ๋ธ๋ก ๋๊ตฌ ์กฐ๋ฆฝํ๊ธฐ
Gooo 0.6.6 ๊ฐ๋ฐํ์ ์ง๋จ ์์ ํ ํ๋ฆฟ, ํจํค์ง ํจ์ ํธ์ถ, ๋ณด์กฐ ํจ์ ๋ณธ๋ฌธ ์กฐ๋ฆฝ๊ณผ ์ค์ ์ธ์ ๊ด์ธก์ ๋ด์์ต๋๋ค. ๊ณต๊ฐ macOS arm64 ํ์ผ์ ๋ด๋ ค๋ฐ์ ์ฌ๋ ์ฌ์ฉ ํ๋ฆ์ ์คํํ์ต๋๋ค. ์ด ๋ชจ๋ธ์ Gooo๊ฐ ์ ์ธํ ํ๋ณด์ ์๋ ์์๋ฅผ ์ ์ํ๋ฉฐ, ์์ค์ ์กฐ๋ฆฝ ๊ท์น๊ณผ ๊ฒ์ฌ ๊ธฐ์ค์ ์ ์งํฉ๋๋ค.
| ๊ณต๊ฐ ์คํ ํ์ผ์ ๊ณผ์ | ๊ฒฐ์ ๋ก ํ๋ณด ์ | ๋ชจ๋ธ ํ๋ณด ์ | ์ต์ข ๊ธฐ๋ ์ถ๋ ฅ |
|---|---|---|---|
| ์ ์ง๋จ ํ ํ๋ฆฟ | 4 | 2 | ๋ ๊ฒฝ๋ก ๋ชจ๋ 8/8 |
| ๋ณด์กฐ ํจ์ ํธ์ถ ์ฑ | 4 | 2 | ๋ ๊ฒฝ๋ก ๋ชจ๋ 4/4 |
| ํธ์ถ ์ฑ์ ์ฒซ ํ๋ณด์์ ์ค๋จ | โ | 1 | 2/4 |
๋ ์ง์ง์ ์คํ์ ๊ฐ์ ์์ฑ ์ฝ๋์ ์ถ๋ ฅ์ ๋ง๋ค์์ต๋๋ค. ๋ถ๋ถ ๊ฒฐ๊ณผ์ ๋ณด์กฐ ํจ์ ์ฌ๋ก๋ 3/5์๊ณ , Gooo ์ค๋ช ๋๊ตฌ๋ PROGRESS / CONTINUE_CANDIDATES๋ฅผ ๋ฐํํ์ต๋๋ค. ์ ์ฅ ์ฌ์คํ์ ์ ๋ชจ๋ธ ํธ์ถ 0ํ์์ผ๋ฉฐ, ๋ค์ ์์ ์ ์์ ์๋ ์คํ์ ํ์ ๊ตฌํ ๊ณผ์ ์ ๋๋ค.
๋ชจ๋ธ ํ๋จ์ ์ง๋จ ํ ํ๋ฆฟ 19.250 ยตs, ํธ์ถ ์ฑ 17.833 ยตs์์ต๋๋ค. ๋ชจ๋ธ ์ค๋น๋ ๊ฐ๊ฐ 0.740084 msยท0.164333 ms, ๋ณต์ ํ ์๋ 2,096 B์ ๋๋ค. ์ ์ฒด ๋ช ๋ น ์๊ฐ์ ๊ฒฐ์ ๋ก /๋ชจ๋ธ ์์๋ก ์ง๋จ ํ ํ๋ฆฟ 0.86/0.33 s, ํธ์ถ ์ฑ 0.52/0.35 s์์ต๋๋ค. ์ด ์์น๋ Apple M4ยทmacOS 26.5.2ยทGo 1.27.1์ ๋จ์ผ ์์ฐจ ๊ด์ธก์ด๋ฉฐ, ์บ์์ ๋ค๋ฅธ ์์ ์ ํต์ ํ์ง ์์์ต๋๋ค. ํ๋ณด ์์ ์ ์ฒด ์๊ฐ์ ๋ณ๋๋ก ์ฝ์ต๋๋ค. ์๋ณธ์๋ CPU ์๊ฐ๊ณผ BSD time ์ต๋ RSS, ๊ฐ๊ฐ์ ์ธก์ ๋ฒ์๋ ๋ณด์กดํ์ต๋๋ค.
์ฌ์ฉํ ๊ฐ์ค์น๋ ๊ธฐ์กด QAT ๋ฆฌ๋น์ ์ 446 B ํ์ผ์ ๋๋ค. ์ด๋ฒ ์ฐ๊ฒฐ์ ์ถ๊ฐ ํ์ต์ 0ํ์ ๋๋ค. ๋ชจ๋ธ ํ์ต ์๋ฃ์ ์คํ ์ ๋ ฅ์ ๋ ๋ฆฝ์ฑ, ์ธ๋ถ ์ฌํ์ ์์ง ๊ด์ธกํ์ง ์์์ต๋๋ค.
๋ค์ ๋ฐ์ ๋ฐฉํฅ์ ๋ณด์กฐ ํจ์ ๋ณ๊ฒฝ์ ๋ฐ์ํ ํ์ ์กฐ๋ฆฝ, Gooo ์ง๋จ์ผ๋ก ๋ค์ ์์ ์ ์งํํ๋ ๋๊ตฌ, ๋ค๋ฅธ ๋๋ฉ์ธ์ ์ฌ์ฌ์ฉ ํจํค์ง์ ๋๋ค. ์ค์ Gooo ์์ ์์ ์๋ํ ๊ฒฝ๋ก์ ๋ฐ๋ก๋ฅผ ๋ค์ ์ํ ๋ชจ๋ธ ํ์ต ์๋ฃ๋ก ์ฐ๊ฒฐํฉ๋๋ค.
English: the published Gooo binary uses this optional small model to rank source-declared choices. Deterministic and model-guided runs share the same checks. Retain partial results, replay without new inference, and grow the language through useful tools and reproducible failures.
2026-10-08: ์กฐ๋ฆฝํ ๋ณด์กฐ ํจ์๋ฅผ ์ฑ์์ ํธ์ถํ๊ณ ์ ๋ ฅ์ ๊ด์ธกํ๊ธฐ
Gooo๊ฐ ๋ณด์กฐ ํจ์์ ๋ณธ๋ฌธ์ ๋จผ์ ์กฐ๋ฆฝํ๊ณ , ์ฑ์ ์ ํ๋ ํจ์๋ฅผ ํธ์ถํฉ๋๋ค. ์ด ๊ณต๊ฐ QAT ๋ชจ๋ธ์ Gooo์ ์ ์ธํ ์ธ ํ๋์ ํ๋ณด ์์๋ฅผ ์ ์ํฉ๋๋ค. ์คํ ์ค ์ค์ ๋ก ์ ๋ฌํ ์ธ์๋ฅผ ๊ธฐ๋กํด, ์ ์ฑ ์ ๋ ฅ์ด ๊ธฐ์กด ๋ณด์กฐ ํจ์ ์ฌ๋ก์ ๊ฒน์น๋์ง๋ ๊ตฌ๋ถํฉ๋๋ค. ๊ฐ์ ๋ชจ๋ธ ๊ฐ์ค์น๋ฅผ ์ฌ์ฉํ๊ณ ์ด๋ฒ ์ฐ๊ฒฐ์ ์ถ๊ฐ ํ์ต์ 0ํ์ ๋๋ค.
| ๊ฒฝ๋ก | ์๋ํ ํ๋ณด | ๋ณด์กฐ ํจ์ ์ฌ๋ก | ์ฑ ๊ธฐ๋ ์ถ๋ ฅ | ์กฐ๋ฆฝ ์ฌ๋ก์ ๊ฒน์น์ง ์๋ ์ ๋ ฅ์ ํต๊ณผ ์ | ์ ์ถ๋ก |
|---|---|---|---|---|---|
| ๊ฒฐ์ ๋ก ์ ์์ | 4 | 5/5 | 4/4 | 4/4 | 0 |
| ๊ณต๊ฐ QAT | 2 | 5/5 | 4/4 | 4/4 | 1 |
| ์ฒซ ํ๋ณด์์ ์ค๋จ | 1 | 3/5 | 2/4 | 2/4 | 1 |
| ์ ์ฅ ๊ฒฐ๊ณผ ์ฌ์คํ | 2๊ฐ ์ด๋ ฅ ์ ์ง | 5/5 ์ ์ง | 4/4 | 4/4 | 0 |
์ด์ ์ปดํ์ผ๋ฌ์์ ์ ์ฅํ ์กฐ๋ฆฝ ๊ฒฐ๊ณผ๋ ์ ์ถ๋ก ์์ด ์ฌ์คํํ์ต๋๋ค. ์ฌ๊ธฐ์ ์ ๋ ฅ ๊ตฌ๋ถ์ ์ ์ธํ ์ฌ๋ก์ ๊ธฐ๋ก๋ ๊ด์ธก์ ๋ํ ๊ฒ์ด๋ฉฐ, ๋ชจ๋ธ ํ์ต ์๋ฃ์์ ๋ ๋ฆฝ์ฑ์ ๋ฏธํ์ธ์ ๋๋ค. ๋ค๋ฅธ ํจ์์ ํ๋ณด๋ฅผ ํ๊ฐํ๋ ๋์ ๋ฐ์ํ ๊ฐ์ ํธ์ถ์ ์ธ์ ์ด๋ ฅ๋ ์์ง ๊ธฐ๋กํ์ง ์์, ํด๋น ๊ฒฝ๋ก๋ UNKNOWN์ผ๋ก ๋จ์ต๋๋ค.
๊นจ๋ํ ๊ฐ๋ฐ ๋ฆฌ๋น์ d5130460356646f964d01a619f0db62f166f0ea5ยทGo 1.27.1์์ ๊ด์ธกํ์ต๋๋ค. ์์ธก 12,042 ns, ๋ชจ๋ธ ์ค๋น 0.734625 ms, ํ ์ 2,096 B์์ต๋๋ค. ์ ์ฒด ๋ชจ๋ธ ๋ช ๋ น์ 0.36์ดยท์ต๊ณ RSS 86,720,512 B์๊ณ ๊ฒฐ์ ๋ก ์ ๋ช ๋ น์ 0.34์ด์์ต๋๋ค. ๋ชจ๋ธ ๋ช ๋ น์ CPU ์๊ฐ 0.27์ด/๋ฒฝ์๊ฐ 0.36์ด๋ ํ ์ฝ์ด ๊ธฐ์ค ํ๊ท 75%์ด๋ฉฐ ์์ ํ๋ก์ธ์ค๋ฅผ ํฌํจํฉ๋๋ค. ํธ์คํธ CPU ์ฆ๊ฐ๋์ ๋ฏธ์ธก์ ์ ๋๋ค. ๋จ์ผ ๋ก์ปฌ ๊ด์ธก์ด๋ฏ๋ก ํ๋ณด ์์ ์ ์ฒด ์คํ ์๊ฐ์ ๊ฐ๊ฐ ์ฝ์ต๋๋ค.
์ฌํํ ์์ค์ ์ฌ์ฉ๋ฒ ยท ์๋ณธ 13๊ฐยท์์ค ์๋ณ๊ฐยท์ธก์ ๋ฒ์. ์๋ ๊ธฐ๋ก์ ๊ฐ ์คํ ๋น์์ ์ปดํ์ผ๋ฌ์ ๋ฐฐํฌ ๋ฒ์ ์ ์ ์งํฉ๋๋ค.
In this development study, Gooo constructs a helper body before compiling its caller. The unchanged local QAT model orders declared candidates; source-owned cases and native execution retain separate finite outcomes. Actual helper arguments distinguish repeated construction inputs from newly observed inputs. Saved replay makes zero new model calls. The linked raw study includes partial outcomes and remaining unknowns; independent reproduction is still to be measured.
Gooo๋ก ์์ฑํ ์ํ๊ณ ๋๊ตฌ์ ์ฐ๊ฒฐํ๊ธฐ
Gooo ์ ์ธ์์ ๊ณต๊ฐ API ์ฐธ์กฐ ์์ฑํ๊ธฐ
The Gooo ecosystem workbench uses this shared QAT model. Its reference command reads the compiler's operation-interface JSON. A Gooo activity assembles the public name, signature, stable type IDs, and source/interface digests into Markdown. Go connects the compiler, Gooo execution, and output files.
git clone https://github.com/kimjooyoon/gooo-ecosystem-workbench.git
cd gooo-ecosystem-workbench
go run ./cmd/workbench reference --compiler /path/to/gooo --package examples/catalog --entry ApproveInvoice --out out/api-reference
The sample declares ApproveInvoice(Invoice, Reviewer) -> Approval. Its generated page contains the two inputs, output type, and stable IDs. Local and Linux CI output matched the expected page 1/1 and a saved replay matched. This checks a declaration-level reference; it does not document implementation behavior.
Compiler source: f144dddb8261b9b525181dee510afc65f1603153. Source and original result ยท Linux CI ยท Usage.
gooo-ecosystem-workbench๋ฅผ ๊ณต๊ฐํ์ต๋๋ค. Gooo ํ์ค ํจ์13๊ฐ, ์คํ ๊ฒฐ๊ณผ์ ์ง๋จ, scalar/record Gooo ํ์ผ ์์ฑ์ ๊ตฌํํ์ต๋๋ค. ์ง๋จ๊ณผ ์์ ํ๋ก๊ทธ๋จ์ ์ธ ํ๋ ํ๋ณด ์์๋ฅผ ์ด ๊ณต๊ฐ QAT๊ฐ ์ ์ํฉ๋๋ค. ๋ณธ๋ฌธ๊ณผ ํ ํ๋ฆฟ์ Gooo์ ์๊ณ Go๊ฐ ํ์ผ๊ณผ ์คํ์ ์ฐ๊ฒฐํฉ๋๋ค. ๋ชจ๋ธ ์ต์ ์ ์๋ตํ๋ฉด ๊ฒฐ์ ๋ก ์ ์ผ๋ก ์งํํฉ๋๋ค.
๊ณ ์ ์ฌ๋ก์์151/151์ถ๋ ฅยท66/66๋ ์ฝ๋ ํ๋๋ฅผ ํ์ธํ์ต๋๋ค. ๊ฐ์ ์ง๋จยท์์ ์ฌ๋ก๋ฅผ ๋ ์ ํ ์์์์ ์คํํ ์๋ฅผ ํฌํจํฉ๋๋ค. ๋ค์ฏ ์ ์ฅ ์ฌ์คํ๊ณผ Linux ์๋ณธ์ ์ค์ ๊ฐ๋ ๋ค์ ์ ์ต๋๋ค. ์ด ํ์ธ ๋ช ๋ น์ ์์ฑ ํ๋จ์2ํ์ด๋ฉฐ ์คํ๊ณผ ์ฌ์คํ์ ์ถ๊ฐ ํ๋จ์0ํ์ ๋๋ค. ์ด๋ฒ ์ฐ๊ฒฐ์์ ์ ๊ฐ์ค์น ํ์ต์0ํ์ ๋๋ค.
์ธ ๋ช ๋ น์ผ๋ก ์คํํ๊ธฐ ยท ์ค์ ์ฌ๋กยท๋ถ๋ชจยท์๋ณธ ยท macOSยทLinux ์คํ ํ์ผ๊ณผ Linux ๊ด์ธก.
์คํจํ ์กฐํฉ์ ๊ธฐ๋กํ๊ณ ๋ค์ ์ฝ๋๋ฅผ ์์ฑํ๊ธฐ
๋ ํ๋ณด์์ ๊ฐ๊ฐ ๊ฒ์ฌํ์ ๋๋ ์ ํจํด๋ ํจ๊ป ๋ฐ๊พธ๋ฉด ์ ์ฅํ ๋ณ์๋ฅผ ์ฐ๋ ๊ณณ์ด ๋ชจ๋ ์ฌ๋ผ์ง ์ ์์ต๋๋ค. ์ด ์กฐํฉ์์ ์ ์ฒด ํ์์ด ๋ฉ์ถ๋ ๋ฌธ์ ๋ฅผ ์์ ํ์ต๋๋ค. ํ์ ์ค๋ฅ์ ์กฐํฉ ๋ฒํธ๋ฅผ ๋จ๊ธฐ๊ณ ๊ฐ์ ์๋ ์์ฐ ์์์ ๋ค์ ์ฝ๋๋ก ์ด์ด๊ฐ๋๋ค. ์์์ ์ฐพ์ ๋ถ๋ถ ๊ตฌํ๋ ๋ณด์กดํฉ๋๋ค.
๊ฐ๋ฐ PR1237๊ณผ main PR1238์ ๋ณํฉํ์ต๋๋ค. ํ์ฌ ์ค์น ์์ค๋ main f144dddb8261b9b525181dee510afc65f1603153ยทGo1.27.1ยทSDKv0.2.24์ ๋๋ค. ๊ฐ PR์ ์ ์ฒด12๊ฐ ๊ฒ์ฌ์ ๋ ๋ฆฝ ํ์ธ, ์ค์ ์ค์น๋ณธ์ ์ ๊ด์ธก์ ํจ๊ป ๊ณต๊ฐํฉ๋๋ค.
๊ฐ์ ์์ฑ ์์ ์์ ๊ฒฐ์ ๋ก ์์ฐ4๋ ์ ํ12/15ํ๋ยท์ค์ 6/14์ถ๋ ฅ์ ๋ณด์กดํ๊ณ , ์์ฐ8์15/15ํ๋ยท14/14์ถ๋ ฅ์ ์ถฉ์กฑํ์ต๋๋ค. ๊ธฐ์กด ๊ณต๊ฐ QAT๋ ์์ฐ4์8 ๋ชจ๋ ํ ๋ฒ ํ๋จํ์ฌ ํ๋ณด ์์๋ฅผ ์ ํ๊ณ , ํ์ ํ๋ฝ ํ ๊ฐ๋ฅผ ๊ธฐ๋กํ ๋ค ๊ฐ์ ์์ ํ ๊ฒฐ๊ณผ๋ฅผ ์ป์์ต๋๋ค. ํ๋ณด๋ฅผ ์๋ํ ์ยทํ ์คํธํ ์ยทํ์ ํ๋ฝ ์๋ฅผ ๋ฐ๋ก ์ฝ์ต๋๋ค. ํ ์คํธํ์ง ์์ ํ๋ฝ ํ๋ณด์ ๋ถ๋ชจ๋0์ ๋๋ค.
์คํ๊ณผ ์ ์ฅ ๊ฒฐ๊ณผ ์ฌ์คํ์ ์ ์ถ๋ก ์0ํ์ ๋๋ค. ๋ ์์ ์์32๊ฐ ์์ฒญ์ ๋ณด๋ธ ๊ด์ธก์ ๋ค ๋ฒ ๋ฐ๋ณตํ๊ณ , ๊ฐ๊ฐ ์ ํ480/480ํ๋์32๊ฐ ํ์ ํ๋ฝ ๊ธฐ๋ก์ ํ์ธํ์ต๋๋ค. ์ฒซ ์๋ต์ ์ ๋ ฅ ์ข ๋ฃ ์ ์ ๋์ฐฉํ์ต๋๋ค. ์ด๊ฒ์ ํ ์์ ์ ํด๋น ์์ฒญ ๊ท๋ชจ์์ ํ์ธํ ๊ฒฐ๊ณผ์ ๋๋ค. ๋ชจ๋ธ ํ์ต๋๊ณผ ๊ฐ์ค์น๋ ์ ์งํ์ต๋๋ค.
์๋ ์คํจยท๊ฐ๋ฐ ๊ด์ธกยท์ค์น๋ณธ ์๋ณธ๊ณผ ์ฌํ Go ๋๊ตฌ ยท ๋ฐ๋ผํ ๋ช ๋ น๊ณผ ๊ฒฐ๊ณผ ์ฝ๊ธฐ. ยท ์์ฑยท์ถฉ์กฑ ์ยท์ ์ฅ ์ฌ์คํ ์๋ด. ์๋ ์ถ์ฒยท๊ณต์ ยท์์ฐจ ๊ด์ธก์ ๊ฐ๊ฐ์ ์์ค์ ์คํ ์์ ์ ์ ์งํฉ๋๋ค. ์ ์ถ์ฒ ๊ฐ์ค์น์ ๊ท ํ ํ์ต์ ๊ณ ์ ๋ถํ ์ ๋ ๋ค์ ์คํ์ผ๋ก ๊ณํํ์ต๋๋ค.
ํ์ฌ ๊ฐ๊ณผ ์ ์ฅ๊ฐ์ ์ถ์ฒ๋ฅผ ์ฝ๋ ์ ๋ ฅ
Gooo์ ์ ์์ค ๊ทธ๋ํ๋ ์ ์ยท๋ณต์ฌยทํ๋ ๋์ ยท์ฝ๊ธฐยท์กฐ๊ฑด ํฉ๋ฅ์ ์กฐ๊ธฐ ๋ฐํ ๋ค์ ๋จ์ ๊ฒฝ๋ก๋ฅผ ์ฐ๊ฒฐํฉ๋๋ค. ์์ ์ค์ธ ๋ฌธ์ ์์ ์ด์ ์ฌ์ง์ ๋๋ฏ, ํ์ฌ ํ๋์ ์ ์ฅํ ํ๋๊ฐ ์ด๋์์ ์๋์ง ๋ชจ๋ธ ์ ๋ ฅ์ผ๋ก ์ค๋นํฉ๋๋ค. ๊ฐ๋ฐ PR1235์ main PR1236์ ๊ฐ๊ฐ ์ ์ฒด12๊ฐ ๊ฒ์ฌ์ ๋ ๋ฆฝ ํ์ธ ํ ๋ณํฉํ์ต๋๋ค. main 78dd30db84758f7adff61e6cc9628738a34d31d1ยทGo1.27.1ยทSDKv0.2.24๋ก ๋ ์คํ๊ธฐ๋ฅผ ์ค์นํ๊ณ , ๊ธฐ์กด ๊ณต๊ฐ QATยท๊ฒฐ์ ๋ก ๊ฒฝ๋ก์์ ์ ํ15/15ํ๋ยท์ค์ 14/14์ถ๋ ฅ๊ณผ ์ถ๊ฐ ์ถ๋ก ์๋ ์ ์ฅ ์ฌ์คํ์ ํ์ธํ์ต๋๋ค.
๋ค ์์ค ํํยท์ฌ๋ ๋ด๋ณด๋ด๊ธฐ์ ์ฌ์ฏ ๊ด์ธก ๊ฒ์ฌ๊ฐ ํต๊ณผํ์ต๋๋ค. ์ ํน์ง ๋ฐฐ์ด์ ํ์ฌ ๊ธฐ๋ก๊ณผ ์ ์ฅ ๊ธฐ๋ก์ ํํ์ ๊ตฌ๋ถํ๊ณ , ์ง์ญ ์ด๋ฆ๊ณผ ์์ ์ ๋ ฅ๊ฐ์ ๋ฐ๊พธ์ด๋ ๊ฐ์ ๊ด๊ณ๋ฅผ ์ ์งํฉ๋๋ค. ์ด ๋ด๋ณด๋ด๊ธฐ์ ์ถ๋ก ยทํ๋ณด ์คํยทํ์ต์ ๋ชจ๋0ํ์ ๋๋ค. ์ธ ํ๋์ฉ768์นธ ์ค ๊ฐ ํ๋๋64ํํยท32์ถ์ฒยท160์๋ ์นธ์ ์ฌ์ฉํฉ๋๋ค.
์์ฐจ ์์ ์ ์์ค ์ค๋น ๋จ๊ณ๋5ํ ๋ฐ๋ณต ์ค์๊ฐ59.9ยตsยท์์ ํ ๋น86,892 B์์ต๋๋ค. ํ์ ์ ๋ณด๋ฅผ ๋ฐ๋ก ๋ณด๊ดํ ๋ณ๊ฒฝ์ผ๋ก ์์ ํ ๋น43.1%, ์ด ๋จ๊ณ์ ์๊ฐ8.8%๊ฐ ์ค์์ต๋๋ค. ์์ค ์ค๋น์ ์ ์ฒด ์์ฑยท๋น๋ยท์คํ ๋น์ฉ์ ๋๋์ด ์ฝ์ต๋๋ค. ์๋ณธยท๋ฐ๋ณตยท๋น๋์ ์ค์น ๊ทผ๊ฑฐ๋ฅผ ๊ณต๊ฐํ์ต๋๋ค. ์๋ก์ด ๊ฐ์ค์น ํ์ต์ ๋ค์ ๋จ๊ณ์ด๋ฉฐ, ๊ณต๊ฐ v1 ๊ฐ์ค์น๋ ๊ทธ๋๋ก์ ๋๋ค. ์ ์ถ์ฒ ๊ณ์ฝ์ ํฉ์ฑ ๊ฐ์ค์น๋ ํธ์ถ ๊ฒฝ๋กยท์ ํ ํ์ยท์ฌ์คํ ํ๊ท์ ์ฌ์ฉํ์ต๋๋ค.
์ปดํ์ผ๋ฌ ์์ ํด๋์์ ๋ค์ ๋ช ๋ น์ผ๋ก ์คํ ์ ์ ๊ด๊ณ๋ฅผ ๋ณผ ์ ์์ต๋๋ค.
gooo body-context --value-flow --activity Select \
--feature-version triple_record_field_flow_v2_shared_v1 \
examples/body-codegen/record-field-updates.gooo.fixture
์ฌ์ด ์ถ์ฒ ์๋ด ยท ๋ค์ ๊ท ํ ํ์ต ๊ณํ.
์์ฐจ ํ๋ ์กฐ๋ฆฝ์ผ๋ก ํ์ฅ ์ค
๊ฐ์ ๊ณต๊ฐ ๊ฐ์ค์น๋ฅผ ์ฌ์ฉํด ์ง์ญ ๋ ์ฝ๋์ ํ๋๋ฅผ ํ๋์ฉ ๊ฐฑ์ ํ๋
์ ์คํ์
์คํํ์ต๋๋ค. ์์์ ๋ฐ๊พผ ์ํ๋ฅผ ๋ค์ ์ค๋ช
ํ๋๊ฐ ์ฝ๊ณ ,์ ์ฅํ ๋ ์ฝ๋์
๋ฌธ์์ด ๊ฐ์ ์ฌ์ฉํ๋ ์ฌ์ฏ ์ฝ๋ ํํ์
๋๋ค. Gooo์field_update ์ ํ์
์ฐ๊ฒฐํ PR1233๊ณผ
main PR1234์ ๊ฐ๊ฐ ์ ์ฒด12๊ฐ ๊ฒ์ฌ์
๋
๋ฆฝ ํ์ธ ํ ๋ณํฉํ์ต๋๋ค. ์์ฐจ ์คํ ๋น์ ์ค์น๋ณธ์ main a5f6e8c668ff9fc7cfe3367a5019b50fbcadc1faยทGo1.27.1ยทSDKv0.2.23์์ต๋๋ค.
์์ฐจ ์กฐ๋ฆฝ ์์ ์๋ด๋ฅผ ์ ๊ณตํฉ๋๋ค.
์ฐ๊ตฌ CI์ ์ ์ฒด27๊ฐ ์์
์ด ํต๊ณผํ๊ณ Linux์์ ์๋ก ์คํํ72๊ฐ ๊ทธ๋ํ๋ฅผ
๋ด๋ ค๋ฐ์ ํ๋ยทํ๋ณดยท์ค์ ๊ฐ์ ๋
๋ฆฝ ํ์ธํ์ต๋๋ค. ์๋ Mac ๊ด์ธก๊ณผ ์ค์น ํ ๊ด์ธก์ ๊ตฌ๋ถํฉ๋๋ค.
์ค์น ํ72๊ฐ ๊ทธ๋ํ๋ ๊ฐ์ ํ๋ณดยท์๋ตยท์ค์ ๊ฐ์ ์ ์งํ์ต๋๋ค. ๋ ์์
์์
4ํ ๊ด์ธก์ ๊ฐ๊ฐ32๊ฐ ์์ฒญยท์ ํ ํ๋384/384๊ฐ๋ฅผ ์๋ฃํ๊ณ ์
๋ ฅ ์ข
๋ฃ ์ ์
์ฒซ ์๋ต์ด ๋์ฐฉํ์ต๋๋ค. ์ฒ์525.86ms, ๋ฐ๋ณต6.7110.37msยท์์
์RAM22.8823.41MiB์
๋๋ค.
์ถ๊ฐ ์๋ณธ๊น์ง ํฉ์น๋ฉด ์ฒ์16MiB ๋ชฉํ๋ฅผ ๋์ด18.98MiB์ด๋ฉฐ, ๋ชจ๋ ์์ถ ๋ณด์กดํฉ๋๋ค.
๋ณ๋ ์ค์นยท์์
์ ๊ด์ธก์ ์ฝ์ ์ ์์ต๋๋ค.
72๊ฐ ์ ํจํ ๊ทธ๋ํยท144ํ ์คํ์์ QAT๋ ์ฒซ ํ๋ณด๋ก ํ๋144/144๊ฐ์
ํ๋ ์ถ๋ ฅ96/96๊ฐ๋ฅผ ๋ง์ท์ต๋๋ค(๊ฐ ์๋ ์์ฐ์12๊ฐ ๊ทธ๋ํ).
๋ชจ๋ ๋ชฉํ๊ฐ ๊ฐ์ mask7์ด๋ฏ๋ก ์ด ์์น์๋ ๋์์์ ์ ํธํ๋ ํธํฅ์ด
์์ฉํ ์ ์์ต๋๋ค. ํ์ต0ํ,์ถ๋ก ์ค์๊ฐ17.50~18.46ยตs,์ ์ฒด ๋ช
๋ น์์ฝ310ms์
๋๋ค.
์ด๊ธฐ24๊ฐ ๋ฏธ์ฌ์ฉ ๋ณ์ ์ค๋ฅ์ ์์ ๊ณํ์ ํฌํจํ ์๋ณธ์
์ฌ๊ธฐ์์ ์ฝ์ ์ ์์ต๋๋ค.
๊ณต๊ฐ v1 ์
๋ ฅ ๋ฐฐ์ด์์๋copy.state์saved.state๊ฐ ๋์ผํด ์ค์ ๋ชจ๋ธ ์๋ต๋
๊ฐ์ต๋๋ค. ์ด ๊ด์ธก์ ์ด์ด ์ ์ถ์ฒ ์
๋ ฅ ๊ณ์ฝ์ ๊ตฌํํ์ต๋๋ค. ์๋์ ๋ณ๋ ๊ด์ธก์ ์ ๋ฆฌํฉ๋๋ค.
Gooo์์ ์ ๋ชฉยท์ํยท์ฌ์ ํ๋์ ๋ค์ด๊ฐ ๋ ํ๋ณด์์ ์ค๋นํ๊ณ , ์์ ์์ฒด ๋ชจ๋ธ์ด ์๊ตฌ ๋ฌธ์ฅ์ ์ฝ์ด ์กฐ๋ฆฝ ์์๋ฅผ ๊ณ ๋ฅด๋ ์คํ์ ๋๋ค. ๊ฐ์ ํ๋จ๊ธฐ๋ฅผ ํ๋ ์ธ ๊ณณ์ ์ฐ๊ณ , ๊ทธ ์ ์๋ฅผ ํฉ์ณ ์ฌ๋ ์ฝ๋ ๊ฒฝ๋ก๋ฅผ ์ ๋ ฌํฉ๋๋ค. ์ค๊ณ๋์์ ๋ถํ์ ํ๋์ฉ ๊ณ ๋ฅธ ๋ค ์ค์ ๋ก ์กฐ๋ฆฝํด ๋ณด๋ ๋ฐฉ์์ ๋๋ค. ์กฐ๊ฑด๋ฌธยท๋ณ์ยทํ๋์ ํํ์ ์คํ์ Gooo ์ปดํ์ผ๋ฌ๊ฐ ๋ด๋นํ๋ฉฐ, ์์์์ ๋ง์ ๊ธฐ๋ฅ์ ๋น์จ์ ๋ณ๋๋ก ๊ธฐ๋กํฉ๋๋ค.
๊ฐ์ ์๋ฃ์์ ๊ด์ธกํ ๊ฒฐ๊ณผ
| ๋ชจ๋ธ | ๋ค๋ฅธ ๋ณธ๋ฌธยท๊ธฐ๋ณธ ํํ: ์ฒซ ์์ ์กฐํฉ | ๋ค๋ฅธ ๋ณธ๋ฌธยท์ ํํ | ๋ณธ๋ฌธ ํ๊ฐ์ ๋ง์ ํ๋ | ๊ฐ์ค์น ํ์ผ |
|---|---|---|---|---|
| ์์ dense v2 FP32 | 424/1,536 (27.60%) | 81/512 (15.82%) | 2,942/4,608 (63.85%) | 74,624 B |
| ๊ณต์ FP32 | 1,152/1,536 (75.00%) | 120/512 (23.44%) | 4,224/4,608 (91.67%) | 8,288 B |
| ๊ณต์ PTQ ์ผ์งํ | 168/1,536 (10.94%) | 88/512 (17.19%) | 2,304/4,608 (50.00%) | 446 B |
| ๊ณต์ QAT ์ผ์ง ํ์ต | 1,344/1,536 (87.50%) | 102/512 (19.92%) | 4,416/4,608 (95.83%) | 446 B |
์ธ ํ๋์ ์ฌ๋ ์์ฑ๋ ๋ณธ๋ฌธ/ํ๋ณด์ ๋ชจ์์ ์ฌ์ฌ์ฉํ ๋ฒค์น๋งํฌ์ ๋๋ค. ๋ชจ๋ ์ฌ๋ ์๊ตฌ ์กฐํฉ์ ํ์ต์ ํฌํจ๋ฉ๋๋ค. ์ ํํ์์๋ ์ฒซ ์กฐํฉ ๋น์จ์ด ํฌ๊ฒ ๋จ์ด์ง๋๋ค. ์ง์ ์ผ์งํํ PTQ์ ํ์ง๋ ๋ฎ์ต๋๋ค. ๋ณธ๋ฌธยทํํยทํ๋ ์งํ๋ฅผ ํจ๊ป ์ฝ์ด์ผ ํ์ฌ ์ด๋ ๋ถ๋ถ๊น์ง ์กฐ๋ฆฝ ๊ฐ๋ฅํ์ง ์ ์ ์์ต๋๋ค.
FP32์ ๋ฌธ๋งฅ ํด์์ ํฌํจํ ๋ฐ๋ปํ ์ถ๋ก ์ค์๊ฐ์9.50ยตs, ์์ dense ๋ชจ๋ธ์ ๊ฐ์ ์คํ์์15.96ยตs์์ต๋๋ค. ๋ฏธ๋ฆฌ ๋ง๋ ํน์ง ๋ฐฐ์ด ํ ํ์ ๊ณ์ฐ์3.04ยตs, QAT๋3.13ยตs์๊ณ ์ค๋น๋ ๋ฐฐ์ด์ FP32/QAT ๊ณ์ฐ์ ํธ์ถ๋น ํ ํ ๋น0ํ์์ต๋๋ค. ๋ฐฐ์ด ๊ณ์ฐ์ ํ ์คํธ/์ ํด์์ ์ ์ธํ ์ธก์ ์ ๋๋ค. ์ ์ฒด ์ฝ๋ ์์ฑ ์๋๋ ๋ณ๋๋ก ์ธก์ ํฉ๋๋ค. ์ผ์ง ํ์ผ์ ํ๋ ฌ ์์๋ฅผ ๋ค์ฏ trit์ฉ ๋ฌถ์ผ๋ฉฐ FP32 bias๋ ํฌํจํฉ๋๋ค. ์ค์ ์คํ์ int8 ๋ฐฐ์ด2,096 B์ scale8 B, ์์ฒญ๋ณ workspace3,200 B ๋ฑ์ ์ฌ์ฉํฉ๋๋ค. ํ์ผ์1.58bit ์์ค ํํ๊ณผ ์ ์ฒด ํ๋ก์ธ์ค RAM์ ์๋ก ๋ค๋ฅธ ํฌ๊ธฐ์ ๋๋ค.
์ฌ์ฉ
์๋ ๊ณต์ ํ๋ ์์ ๋ ์์ main2c์ ๊ณ ์ ๋ฐฐํฌ ๊ธฐ๋ก์ ๋๋ค. ์ต์ ์์ฐจ ํ๋ ๊ธฐ๋ฅ์ ์ main ์์ค์ ์์ ์๋ด๋ฅผ ์ฌ์ฉํฉ๋๋ค. ๋ชจ๋ธ ๊ฐ์ค์น๋ ๋์ผํฉ๋๋ค.
SDK v0.2.23-experimental, ๋ชจ๋ธ ํน์ง
triple_record_field_context_v1_shared_v1, ์ฐ์ float32_separate_v1์
๋๋ค.
๊ฐ๋ฐ PR1231๊ณผ
main PR1232์ ๊ฐ๊ฐ ์ ์ฒด12๊ฐCI์
๋
๋ฆฝ ์ฆ๊ฑฐ ํ์ธ ํ ๋ณํฉํ์ต๋๋ค. ๊นจ๋ํ main 2c807d461afc68a7ebfbd277d1dd6e97f5168e92๋ฅผ Go1.27.1๋ก
๋น๋ยท์ค์นํ๊ณ ๊ณต๊ฐ ๊ฐ์ค์น๋ก ์ค์ ์คํ์ ํ์ธํ์ต๋๋ค.
์์ ์ ํ๋ณด ์์ฐ์8์ด๋ฉฐ, ์
๋ ฅ์ ์ ๋ฌํ๋ ๋ ํ๋์ ์ค์ ๋ก ์์ฑยท์คํํฉ๋๋ค.
hf download asketeddy/gooo-record-shared-field-tiny-v1 \
models/qat_ternary/model.json models/qat_ternary/weights.bin \
demo.gooo.fixture demo-cases.json \
--revision 87f8c482d23dc0eaa41f5575f652e7ca61f44280 \
--local-dir ./gooo-field-model
gooo body-compose --source ./gooo-field-model/demo.gooo.fixture \
--model ./gooo-field-model/models/qat_ternary/model.json \
--cases ./gooo-field-model/demo-cases.json
--model์ ์๋ตํ๋ฉด ๊ฒฐ์ ๋ก ์ ํ๋ณด ์์๋ก ์กฐ๋ฆฝํฉ๋๋ค. ๋ชจ๋ธ์ด ์์ผ๋ฉด ํ ๋ฒ์
์ถ๋ก ์ผ๋ก ํ๋ณด๋ฅผ ์ ๋ ฌํ๊ณ , Gooo์ ์ ํ ํ
์คํธ ๊ฒฐ๊ณผ๋ก ์ด์ด์ ์ ํํฉ๋๋ค.
์์ฑ๋ ์ฝ๋ ์คํ๊ณผ ์ ์ฅํ ์ ํ์ ์ฌ๊ตฌ์ฑ์๋ ์ ๋ชจ๋ธ ํธ์ถ์ด ์์ต๋๋ค.
์ ๊ณตํ ๋ฌธ๋งฅ์ ํ๋ ์๋ ํฌ๊ธฐ๊ฐ ๋ง์ง ์์ผ๋ฉด ์ด์ ๋ฅผ ๋จ๊ธฐ๊ณ ๊ฒฐ์ ๋ก ์ ์ผ๋ก
์งํํฉ๋๋ค. ํ๋์ฉ ๋ชจ๋ธ์ scalar ๋ณธ๋ฌธ์ ์ง์ ํด๋ ์ด ๋ฐฉ์์ผ๋ก ์งํํฉ๋๋ค.
Go SDK์ LoadRecordSharedThree์ PredictRecordSharedInto๋ก ๊ฐ์ ๋ชจ๋ธ์
์ฝ์ ์ ์์ต๋๋ค. PredictRecordSharedFeaturesInto๋ ๋ฏธ๋ฆฌ ์ค๋นํ
[768]float32 ๋ฐฐ์ด์ ๋ฐ์ ํ
์คํธ ํด์ ๋น์ฉ์ ๋ถ๋ฆฌํฉ๋๋ค.
RecordChoiceMarginals๋ ๊ฐ ํ๋์ ์ฒซ/๋์งธ ํ๋ณด ํ๋ฅ ์ ๋ฐํํฉ๋๋ค.
์์ฒญ๋ง๋ค workspace/output์ ์์ ํ๊ณ ๊ฐ์ค์น๋ฅผ ํจ๊ป ์ฝ์ต๋๋ค.
์ค์ ์กฐ๋ฆฝ๊ณผ ์คํ
๋์ผํ24๊ฐ ์์ค์์ ๊ฒฐ์ ๋ก ์ ์์, ์์ v2, ์ธ ๊ณต์ ๋ชจ๋ธ์ ํ๋ณด ์์ฐ1/2/8๋ก ๋น๊ตํ์ต๋๋ค.360๊ฐ ๊ทธ๋ํ์720ํ ๋ค์ดํฐ๋ธ ์คํ์ ๋ง์ณค๊ณ ์์ ์ถ๋ ฅ์์ ์งํ๋ฅผ ๋ค์ ๊ณ์ฐํด ๋ชจ๋ ์์ฝ๊ณผ ์ผ์นํจ์ ํ์ธํ์ต๋๋ค. ์์ฐ8์120๊ฐ ๊ทธ๋ํ๋ ๋ชจ๋ ์ ํ ์์15/15 ํ๋, ์ ๋ฐํ์ ์ ๋ ฅ12/12 ํ๋์8/8 ์ด๋ฆ ๋ถ์ ์ถ๋ ฅ์ด ๋ง์์ต๋๋ค.
| ํ๋ณด ํ๋์ผ ๋, ์ค์ ๋ณํ ํ๋ | ๊ฒฐ์ ๋ก ์ | ์์ v2 | ๊ณต์ FP32 | ๊ณต์ QAT |
|---|---|---|---|---|
| ํ์ฑ ์ ๋ ฅ์ ์๊ตฌ ํ๋ | 72/144 | 108/144 | 126/144 | 126/144 |
| ์ ๋ ฅ๊ณผ ๋ค๋ฅธ ๊ฐ์ด ํ์ํ ํ๋ | 60/120 | 92/120 | 108/120 | 106/120 |
ํ๊ฐ ์ถ์ ๋๋๋ฉด ๊ธฐ๋ณธ ํํ์ ํ์ฑ ํ๋๋ ์์ v2 76/96๊ฐ, ๊ณต์ FP32/QAT 96/96๊ฐ์์ต๋๋ค. ์ ํํ8๊ฐ ์์ค๋ ์์ v2 32/48๊ฐ, ๊ณต์ ๋ชจ๋ธ30/48๊ฐ๋ก ์ค์์ต๋๋ค. ์ ์ฒด ํฉ๊ณ์ ๊ฐ์ ๊ณผ ์ ํํ ๋ฌถ์์ ํดํ์ ํจ๊ป ๊ธฐ๋กํฉ๋๋ค.
์ ์ง ๋ถ๊ธฐ์144/144 ํ๋๋ ๋ณ๋๋ก ๊ณ์ฐํ์ต๋๋ค. ์ ์ฒด ๋ช ๋ น ์ค์๊ฐ์ ๊ฒฐ์ ๋ก ์ 395.80ms, ๊ณต์ FP32 394.65ms, QAT 395.30ms์์ต๋๋ค. ์์ฑยท๋น๋ยท์คํ ์์ ๋น์ฉ์ ํฌํจํ๋ฉฐ ๊ณ ์ ๋ ์์๋ก ์ธก์ ํ์ต๋๋ค. ์์ ์ถ๋ก ์ด ๋นจ๋ผ์ง ๊ด์ธก๋ง์ผ๋ก ์ ์ฒด ์ฝ๋ ์์ฑ์ ์๋ ํฅ์์ ํ๋จํ๊ธฐ ์ด๋ ต์ต๋๋ค. ๋ฐํ์๊ณผ ์ ํ ์ฌ๊ตฌ์ฑ์ ์ถ๊ฐ ๋ชจ๋ธ ํธ์ถ์0์ด๋ฉฐ, ์์ฑ ์์ฒญ๋น ์ค์ ๋ชจ๋ธ ํธ์ถ์1์ ๋๋ค.
evidence.zip์ ์ ์คํ ์์์๋ฃ37.91MiB๋ฅผ ์์ถํด ๋ด์ต๋๋ค. ๊ธฐ์กด ์์ค/ํน์ง
๋ฑ
ํฌ๋ v2์ ๊ณ ์ ๊ณต๊ฐ ์์นด์ด๋ธ๋ฅผ ์ฌ์ฌ์ฉํฉ๋๋ค. audit.json,
native-summary.json๊ณผ SHA256SUMS์์ ์งํ์ ๋ฐ์ดํธ ๊ทผ๊ฑฐ๋ฅผ ์ฝ์ ์ ์์ต๋๋ค.
์ฐ๊ตฌ CI37226752241์
์ ์ฒด26๊ฐ ์์
์ ํต๊ณผํ์ต๋๋ค. Linux์360๊ฐ ๊ทธ๋ํยท720ํ ์คํ ์๋ณธ์ ๋ด๋ ค๋ฐ์
์์คยทํ๋ณด ์ ํยทํ๋ยท๊ฐ ์ ๋ฌยท์ค์ ์ถ๋ ฅยทํ๋ก์ธ์ค ์๋ฃ๋ฅผ ๋
๋ฆฝ ์ฌ๊ณ์ฐํ์ต๋๋ค.
๊ณ ์ 120๊ฐ NumPy/Go ๋น๊ต์ ์ต๋ logit ์ฐจ์ด๋0์ด๋ฉฐ, ๋ชจ๋ ๋ชจ๋ธ์ ํ์ง ์๊ฐ
macOS ๊ด์ธก๊ณผ ๊ฐ์ต๋๋ค. validation/linux-validation.json์ ์๋ณธ ์ง๋ฌธ์ ๊ธฐ๋กํฉ๋๋ค.
์ต์ด ๋ก์ปฌ ์๋ณธ์39,748,306 B๋ก ๊ณํํ64MiB ์ด๋ด์์ต๋๋ค. ํ์ Linux ์ฌ์์ ๋ ผ๋ฆฌ์ ์๋ณธ40,178,256 B๋ฅผ ํฉ์น๋ฉด76.22MiB๋ก ๊ทธ ๋ชฉํ๋ฅผ ๋์ต๋๋ค. ๋ ๊ด์ธก์ ์ ์งํ๊ณ ๋ฒ์๋ฅผ ๊ณต๊ฐํฉ๋๋ค. ๋ก์ปฌ์๋Linux ์๋ฃ์8MB์์ถ ํ์ผ์ ๋ณด๊ดํด ๋ฉ๋ชจ๋ฆฌ์์ ๊ฒ์ฐํ๋ฉฐ ๋ณ๋ ์์ถ ํด์ ๋ณต์ฌ๋ณธ์ ๋ง๋ค์ง ์์์ต๋๋ค.
ํ์ต๊ณผ ๊ทผ๊ฑฐ
- ๊ณํ/ํ์ต ์์ค: 862dd0e.
- ์์ธ ๊ณํ: shared field pilot.
- ์๋ณธ7,168๊ฐ ์์ค/ํน์ง: ์์ v2 ๊ณต๊ฐ ์๋ฃ.
- ์ Go ์ด๊ธฐ๊ฐ seed20261055,2,072๊ฐ ๋งค๊ฐ๋ณ์. ๊ฐ์40 FP32+40 QAT epoch, ์ด3,840ํ ๊ฐฑ์ . ํ์ต3,072/๋ณด์ 1,536; ํ๊ฐ1,536/512/512. ๋ณด์ ๋ง์ผ๋ก checkpoint/temperature๋ฅผ ์ ํํ์ผ๋ฉฐ ์ง๋จ ํ ์ฌํ์ตํ์ง ์์์ต๋๋ค.
- Go๊ฐ ์์คยทํน์งยท์ถ๋ก ยท์คํยท์งํ๋ฅผ ๋ด๋นํ๊ณ Python์ ์คํ๋ผ์ธ MPS ์ต์ ํ/๋ด๋ณด๋ด๊ธฐ์ ์ฌ์ฉํ์ต๋๋ค. ๋ ๋ฆฝ NumPy ์ฐ์ ๊ณผ Go์ ๊ณ ์ 120๊ฐ ์ถ๋ ฅ ๋น๊ต์์ ์ต๋ logit ์ฐจ์ด๋0์ด์์ต๋๋ค.
- ํ์ต ํ๋ก์ธ์ค9.45์ด, CPU5.06์ด(ํ ์ฝ์ด ๊ธฐ์ค ํ๊ท 53.5%), ์ต๊ณ RAM 477.9MiB. ํ์ต ๋ฃจํ7.24์ด, MPS tensor13.56MiB/driver50.72MiB๋ฅผ ํ๋ณธ ๊ด์ธกํ์ต๋๋ค. GPU utilization๊ณผ ํธ์คํธ ์ ์ฒด CPU ์ฆ๊ฐ๋์ ๋ฏธ์ธก์ ์ ๋๋ค.
ํ๋๋ณ ๋ ๋ฆฝ ์ ์๋ผ๋ ๊ตฌ์กฐ๊ฐ ์ด ์์ ๊ณผ์ ์ ํ์ต์ ๋์์ต๋๋ค. ํ๋ ์ฌ์ด์ ์์กด ๊ด๊ณ, ์ ์์ฐ์ด ํํ๊ณผ ๋ ๋ค์ํ ํ์ ยท๋ณธ๋ฌธ์ ํ์ ์ธ์ด ์ฐ๊ตฌ์ ํ์ํฉ๋๋ค. ํ๋ฅ ์ ํ๋ณด ์์๋ฅผ ์ ํ๋ ๊ฐ์ด๋ฉฐ ํ ์คํธ์์ ํ์ธํ ๊ธฐ๋ฅ ์์ ์ฑ์ ์คํ ๊ด์ธก์ผ๋ก ๊ณ์ฐํฉ๋๋ค. ํ์ฌ ํ ๋ฒ์ ๋์ ์ ๋ต๋ฅ ์ ์๊ตฌํ๊ธฐ๋ณด๋ค ๋จ์ ๊ธฐ๋ฅ์ ์ธก์ ํ๊ณ ๋ค์ ํ๋ณด๋ก ์งํํ๋ ์ฌ์ฉ ํ๋ฆ์ ๋ฐ์ ์ํค๊ณ ์์ต๋๋ค.
๊ณต๊ฐ ๋ชจ๋ธ์ ๊ฐ๋ฐ ์ค์ ์ค์ ์ฌ์ฉํ ๊ธฐ๋ก
๊ณต๊ฐ ๋ฆฌ๋น์ 87f8c482์21๊ฐ ํ์ผ์ ์๋ณธ๊ณผ ๋ฐ์ดํธ ๋จ์๋ก ํ์ธํ์ต๋๋ค.
๊ฐ๋ฐ ํ๋ณดd515db9d์์ ๋ ์์
์์32๊ฐ ์์ฒญ์4ํ ๊ด์ธกํ์ต๋๋ค. ๋งคํ
์ ํ ์์์ ํ๋480/480๊ฐ๊ฐ ๋ง์๊ณ ์ฒซ ์๋ต์ ์
๋ ฅ์ ๋ซ๊ธฐ ์ ์ ๋์ฐฉํ์ต๋๋ค.
์ฒซ ์คํ์497.015ms, ์ธ ๋ฐ๋ณต์8.752/12.342/11.866ms์์ต๋๋ค.
๊ฐ ๋ฐ๋ณต์ ์์
์ ์์๊ณผ ๋ฌธ๋งฅ ํด์ยท์กฐ๋ฆฝ์ ํฌํจํฉ๋๋ค. ์ต์ด ์คํ๋ ๋ณด์กดํฉ๋๋ค.
๋ฉ๋ชจ๋ฆฌ๋์ฝ22.622.9MiB, ํ๋ก์ธ์คCPU์๊ฐ์0.1140.158์ด์์ต๋๋ค.
ํธ์คํธ ์ ์ฒดCPU ์ฆ๊ฐ๋๊ณผ ์ผ๋ฐ์ ์ธ ์ฒ๋ฆฌ๋์ ๋ฏธ์ธก์ ์
๋๋ค.
์ค์นํ main2c807d461afc68a7ebfbd277d1dd6e97f5168e92์์๋ ๊ฐ์ ๊ณต๊ฐ ํ์ผ๊ณผ ์ฌ์ฏ ์ค์ ์คํ ๋์กฐ๊ตฐ,
32๊ฐ ํผํฉ ์๊ตฌ์ ์์
์ ์์ฒญ์ ํ์ธํ์ต๋๋ค. ์์ฑ๋ ํ๋ก๊ทธ๋จ ์คํ์
์ถ๊ฐ ๋ชจ๋ธ ํธ์ถ์0ํ์
๋๋ค. ์๋ณธ ๋ณด๊ณ ์๋validation/worker-trials์
validation/installed-public-dogfood.json์ ์์ต๋๋ค. ๋ฐ๋๋ฝ ๊ฒํ ์ ๋ฒ์๋
๊ฐ60์ด ์ ํ์์ ๋ ์์
์์32๊ฐ ๊ณ ์ ์์ฒญ์ ์๋ฃํ๋ ๊ด์ธก์
๋๋ค.
Go ๋
์๋go run validation/read-model.go --text MODEL.json CONTEXT.json์ผ๋ก
ํ๋ ์ด๋ฆยท์๋ยท๋ ํ๋ณด์ยทํ๋ฅ ๊ณผ ์ ์์์ ์ฝ์ ์ ์์ต๋๋ค. ์์ ์ ์ ๋ชฉ์
50:50๋๋ฅ , ์ํ๋์ฝ99.9%๋ก ๊ด์ธกํ์ต๋๋ค. ๋๋ฅ ์ ์ฒซ ํ๋ณด๋ ์ค์ ์ ํ ์์ ๋ฅผ
ํต๊ณผํ ์ ์์ผ๋ฏ๋ก ํ๋ณด ํ๋ฅ ๊ณผ ๊ธฐ๋ฅ์ ์์ ์ฑ์ ๋ฐ๋ก ์ฝ์ต๋๋ค.
์งง์ ์ฌ์ฉ ํ๋ฆ
ยท main CI37228772888.
์ฐธ๊ณ ํ ์๋ฆฌ์ ์ฐ๊ตฌ
Laya๋ ์ํ์ ํ์ ์ด ์๋ ์ง๋ฌธ์ ๋ฐ์ ์ ํ๊ณผ ํ๋ฅ ์ ๋ฐํํ๋ ์ ๊ทผ์ ๋ณด์ฌ์ค๋๋ค. Gooo์์๋ ์ด๋ฅผ ์ค์ ํ๋ณด์์ ๋ํ ์์ ํ๋จ ์ง๋ฌธ์ผ๋ก ์ขํ ์คํํฉ๋๋ค. ์ด๋ฒ ๊ฐ์ค์น๋Go์ ์๋ก์ด ์ด๊ธฐ๊ฐ๊ณผ Gooo์์ ๋ง๋ ์๋ฃ๋ก ํ์ตํ์ต๋๋ค.
Ma ๋ฑ์ BitNet b1.58 ์ฐ๊ตฌ๋ ๊ฐ์ค์น์
์ผ์ง ํํ{-1,0,1}๊ณผ ๊ทธ์ ๋ง๋ ํ์ต์ ๋ค๋ฃน๋๋ค. ์ฐ๋ฆฌ์ ์์ ํ๋จ๊ธฐ์์๋
PTQ์QAT๋ฅผ ๋ฐ๋ก ๊ด์ธกํ๊ณ ํ์ผ ํฌ๊ธฐยท์ค์ ํ
์ยท์ ์ฒดRAMยท๊ธฐ๋ฅ ์ถฉ์กฑ๋ฅ ์
๊ฐ๊ฐ ๊ณ์ฐํฉ๋๋ค.
W3C PROV-O์ ๊ฐ์ฒดยทํ๋ยท์ฌ์ฉยท์์ฑ ๊ด๊ณ๋ Gooo๊ฐ ์๋ณธ, ์์ฑ ๊ณผ์ ๊ณผ ๊ด์ธก ๊ฒฐ๊ณผ๋ฅผ ์ฐ๊ฒฐํ๋ ์ดํ์ ๋ฐํ์ ๋๋ค. ์์ค์ ์ ํ์ ์ด์ , ์ค์ ๋ก ์ ๋ฌํ ๊ฐ์ด ๊ฐ์ ๊ธฐ๋ก์ ๋จ๋๋ก ์ธ์ด๋ฅผ ๋ฐ์ ์ํค๊ณ ์์ต๋๋ค.
์ค์น๋ณธ์ ๋ฐ๋ณต ๊ด์ธก
์ค์น๋ณธ์ ์ฒซ ์๋ต์483.816ms, ์ธ ๋ฐ๋ณต์12.16436.625ms, ์์
์RAM์22.5323.27MiB์์ต๋๋ค. ๋ชจ๋ 4ํ์์32์์ฒญยท์ ํ ํ๋480/480๊ฐ๊ฐ ๋ง๊ณ ์
๋ ฅ ์ข
๋ฃ ์ ์ ์ฒซ ์๋ต์ด ๋์ฐฉํ์ต๋๋ค.
๊ฐ๋ฐ ํ๋ณด์ ๋ฐ๋ณต8.8~12.3ms์ ์ค์น๋ณธ์ ๋ฐ๋ณต์ ๊ฐ๊ฐ ๋ณด์กดํฉ๋๋ค.
๊ฐ์ฅ ๋น ๋ฅธ ๊ฐ๋ง ๊ณ ๋ฅด์ง ์๊ณ 36.6ms ๋ฐ๋ณต๋ ํฌํจํฉ๋๋ค. validation/installed-worker-summary.json์
๊ฐ ์์ฒญ ๋ฌถ์์ํ๋ก์ธ์คCPU์ด/์ ์ฒด๋ฒฝ์๊ฐร100์ ํ ์ฝ์ด ๊ธฐ์ค ํ๊ท ์ผ๋ก
๊ณ์ฐํฉ๋๋ค. ๋ ์์
์์ ๋ฐํ์์ ํฉ๊ณ์ด๋ฏ๋ก100%๋ฅผ ๋์ ์ ์์ต๋๋ค.
ํธ์คํธ ์ ์ฒดCPU ์ฆ๊ฐ๋๊ณผGPU utilization์ ๋ฏธ์ธก์ ์
๋๋ค.