Native Wire3 KO - teamswyg/laya-tools GitHub Wiki
์ค์ ํจ์ ๊ด์ธก๊ณผ ๊ณ ์ ๊ธฐ๋๊ฐ ๋น๊ต
์์ riidolaya ์ฃผ์ฅยทํํธ ๋ชจ๋ธ์ด ํ๋ณด๋ฅผ ํ์ธํ ์์๋ฅผ ์ ์ํ๋ ค๋ฉด, ๋จผ์ ์ค๋ช
์ด ์ค์ ๋์๊ณผ ๋ง๋์ง ๊ฒ์ฆํด์ผ ํฉ๋๋ค. ์ด ๋ฌถ์์ Union ๋๋ ํฐ๋ฆฌ ์ฝ๊ธฐ์ JSON ์ค๋ณต ํค ์ฒ๋ฆฌ๋ผ๋ ๋ ๊ฐ๋ฐ ์์ฒญ์ ์๋ณธ Go ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ก ๊ด์ธกํ ๊ธฐ๋ก์
๋๋ค. ๋ชจ๋ธ์ด ๋ด๋ฆฐ ๊ฒฐ์ ์ด๋ ์ ํ์ต ๊ฒฐ๊ณผ๊ฐ ์๋๋๋ค.
์ด๋ฒ์ ํ์ธํ ๊ฒ
| ํญ๋ชฉ | ์ค์ ๊ฐ |
|---|---|
| ์์ฒญ / ๊ณ ์ ์ ๋ ฅ / ํ๋ณด ์ค๋ช | 2 / 13 / 6 |
| ์ ์ฅยท๊ฒ์ฆ์ ๋ง์น ํ๋ณด๋ณ ์ ๋ ฅ ํ | 39 |
| ๊ณ ์ Wanted ๋น๊ต | ํต๊ณผ24 / ๋ถ์ผ์น12 / ๊ด์ธก ๋ถ๊ฐ3 |
| ์ง์ ๊ณ์ธกํ ์๋ณธ ๋ฉ์๋ / ์์ฒด ์ฝ๋ฐฑ | 96 / 89 |
| ์ ์ฅ ์๋ต์ ํ์ธํ ํ๋ ์ | 528 |
| ์์ ์ ์ฒด ์คํ ์๊ฐ | 2.748737667์ด |
| ์์ ์ต๋ RSS, macOS์์ Wait ํ ์ธก์ | 12,189,696B โ 11.63MiB |
| ๋ณด๊ด ์คํ ํ์ผ | 4,575,474B โ 4.36MiB |
| ์ค์ ๊ฒฐ๊ณผ ํ์ผ / ์ ๋ | 14,303B / 404,858B |
| ์ Laya ์ถ๋ก / Fit / ๋ณดํธ ํ๊ฐ ํ | 0 / 0 / 0 |
ํ ๋ฒ์ ์ ํ ๊ด์ธก์
๋๋ค. Sync์ ํ๋ก์ธ์ค ์ค๋น๋ฅผ ํฌํจํ ์๊ฐ์ด๋ฉฐ, ๋ฐ๋ณต ๋ฒค์น๋งํฌ๋ Laya ๋ชจ๋ธ์ ์ง์ฐยท๋ฉ๋ชจ๋ฆฌ ์ธก์ ์ด ์๋๋๋ค. GPU๋ฅผ ์ฌ์ฉํ๋ค๋ ์ฆ๊ฑฐ๋ ์์ต๋๋ค. GOMEMLIMIT=64MiB๋ Go ํ์ ์๋ด ๊ฐ์ด๊ณ ํ๋ RSS ์ ํ์ด ์๋๋๋ค. ์์ยท์ค์ฒฉ ์๋ณธ ํธ์ถ ์๋ ๋ฏธํ์ธ์ผ๋ก ์ ์งํฉ๋๋ค.
39ํ์ 6ร3 + 7ร3 ์กฐํฉ์
๋๋ค. ์
๋ ฅ์ด๋ ํ๋ณดยท๋ฒ์ญ์ ๋๋ ค๋ ๋
๋ฆฝ ์์ฒญ ์๊ฐ ๋์ง ์์ต๋๋ค. ๊ธฐ์กด ์ฐ๊ฒฐ ๊ทธ๋ฃน79ยท83์ development_train ์ญํ ์ ๊ทธ๋๋ก ์ด์ด๋ฐ์ผ๋ฉฐ, ์ ๋
๋ฆฝ ์์ฒยท20โ60 ๋
๋ฆฝ ์ฝํธํธยท๋ณดํธ2400 ํ๊ฐ ์ถ๊ฐ๋0์
๋๋ค. ์ ์ฒด ์์
์5% ์ด์ ๊ฐ์ ์ด๋ ๋น์ฉ ์ ๊ฐ๋ ์
์ฆํ์ง ์์์ต๋๋ค.
๋ ์์ฒญ์ ์ฝ๊ฒ ๋ณด๋ฉด
์ฒซ ์์ฒญ์ ๊ฒน์น๋ ๋ ๋ชฉ๋ก์ ํฉ์น ๋ค ์ฌ๋ฌ ๋ฒ ๋๋ ์ฝ๋ ์์ ์ ๋๋ค. ๋ชจ๋ ํญ๋ชฉ์ ํ ๋ฒ ์บ์ํ๊ณ ์ปค์๋ฅผ ์ฎ๊ธฐ๋ ์ค๋ช ์ ๊ณ ์ 6์ ๋ ฅ์ ํต๊ณผํ์ต๋๋ค. ๋งค๋ฒ ์๋ณธ์์ ์์ ๊ฐ์๋ฅผ ์ฝ๊ฑฐ๋ ์ฒ์๋ถํฐ ์ ์ฒด๋ฅผ ๋ค์ ์ฝ๋ ์ค๋ช ์๋ ํญ๋ชฉ ๋๋ฝยท๋ฐ๋ณต ๋๋ ๋ฐํ ๊ณ์ฝ ์ฐจ์ด๊ฐ ์์์ต๋๋ค.
๋ ๋ฒ์งธ ์์ฒญ์ JSON ๊ฐ์ฒด ๋ด๋ถ์ ์ค๋ณต ํค๋ฅผ, ๊ฐ์ด ํ๋๋ก ํฉ์ณ์ง๊ธฐ ์ ์ ์ก๋ ์์
์
๋๋ค. a์ \u0061์ ๊ฐ์ ํด๋
๋ ํค์
๋๋ค. ํด๋
๋ ํค๋ฅผ ๊ฐ์ฒด๋ง๋ค ๋ณ๋๋ก ํ์ธํ๊ณ ์ฒซ ์ค๋ณต์์ ๋ฉ์ถ๋ ์ค๋ช
์7์
๋ ฅ์ ํต๊ณผํ์ต๋๋ค. ๋ฌธ์ ํ๊ธฐ๋ง ๋น๊ตํ๋ฉด escape ๋ณ์นญ์ ๋์นฉ๋๋ค. ์ด๋ฏธ Map์ผ๋ก ๋ฐ๊พธ๋ฉด ์ค๋ณต ์ ๋ณด๊ฐ ์ฌ๋ผ์ง๊ณ ์ค๋ฅยท์์นยท์ค๋จ ์ฑ๋๋ ์์ต๋๋ค. ์ด๋ ์์ฒญ ๊ณ์ฝ๊ณผ์ ์ฐจ์ด์ด๋ฉฐ ์๋ณธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋ฒ๊ทธ๋ผ๋ ์ฃผ์ฅ์ด ์๋๋๋ค.
| ์์ฒญ | ํ๋ณด0 | ํ๋ณด1 | ํ๋ณด2 |
|---|---|---|---|
| Union | 6T โ T | 2Tยท4F โ F | 3Tยท3F โ F |
| JSON | 4Fยท3U โ F | 6Tยท1F โ F | 7T โ T |
T๋ ๋ชจ๋ ๊ณ ์ ์กฐ๊ฑด์ด ํ์ธ๋๋ค๋ ๋ป์ ๋๋ค. F๋ ์ ์ด๋ ํ๋์ ์๋ ค์ง ๋ฐ๋ก๊ฐ ์๋ค๋ ๋ป์ด๊ณ , ํจ๊ป ๋จ์ U๋ฅผ ์ง์ฐ์ง ์์ต๋๋ค. U๋ง ์๋ ํ๋ณด๋ฅผ ์์ฑ ๋ผ๋ฒจ๋ก ๋ฐ๊พธ์ง ์์ต๋๋ค. ๊ฐ ์กฐ๊ฑด์ ์ ์ฅ ๋น๊ต์ ๋จ์ต๋๋ค. ๋ผ๋ฒจ์ ์ฑํยท์๋ฃ ์์ฑ์ ๋ณ๋ ๋จ๊ณ์ ๋๋ค.
๋ฐ๊ฒฌํ ์ค๋ฅ์ ์์
์ฒซ ์ค์ ์คํ์ ์ฒซ ํ์ ์ ์ฅํ๊ธฐ ์ ์ ์คํจํ์ต๋๋ค. ์ฐ๋ฆฌ ๊ด์ฐฐ ์ฝ๋๊ฐ ์ ์ฒด ์บ์ ๊ฒฐ๊ณผ ๋ฒํผ๋ฅผ ์ฒซ ๋ถ๋ถ ๊ฒฐ๊ณผ๋ก ์ฌ์ฌ์ฉํด ์ฌ์ฉํ์ง ์๋ ํญ๋ชฉ์ด ๋จ์์ต๋๋ค. InfoReturn{}์ผ๋ก ๊ฒฐ๊ณผ ๋ชฉ์ ์ง๋ฅผ ์๋ก ์์ํ๋๋ก ์์ ํ๊ณ , ๋น์ด ์์ง ์์ ๋ชฉ๋ก์6๊ฐ ํ๊ท ๋์กฐ ์ฌ๋ก๋ฅผ ์ถ๊ฐํ์ต๋๋ค. ์คํจ ์คํ ํ์ผ๊ณผ ๋ถ๋ถ ์ ๋์ ๊ทธ๋๋ก ๋ณด์กดํ์ต๋๋ค. ์์ ์คํ์ ์ ํ์ผยท์ ๊ธฐ๋ก์ผ๋ก ํ ๋ฒ ์คํํ๊ณ , ๊ณ ์ Wanted๋ ์๋ณธ ์์ค๋ฅผ ์์ ํ์ง ์์์ต๋๋ค.
๋น๊ต๊ธฐ์์๋ ์๋ ค์ง null๊ณผ ๋ฏธํ์ธ ๊ฐ์ ๊ตฌ๋ถํ๊ณ , ๋ด๋ถ ๋ณต๊ตฌ๋ ์๋ณธ ํจ๋์ ๋ณ๋๋ก ๋ฐ๋ก์ ๋จ๊ธฐ๋ฉฐ, ๋ชจ๋ ํ์ ์ํ ์ ์ง ์ ์ ๊ฒ์ฆํฉ๋๋ค. ํ ์คํธ์ฉ ๊ฐ์ง API์ ์ค์ ์๋ณธ ์คํ์ ๊ตฌ๋ถํฉ๋๋ค.
์ฌ์ฉ ๊ด์
Go1.27.1 ํ๊ฒฝ์์ ๋ค์ ๋ช ๋ น์ผ๋ก ๊ณต๊ฐ ์์ฒด ๋์กฐ ์ฌ๋ก๋ฅผ ์ฌํํ ์ ์์ต๋๋ค.
bash scripts/verify-next60-native-wire3.sh
๊ธฐ์กด ๊ณต๊ฐ wire3ยทcoreยทํ์ผยท์ ๋ ๋ชจ๋์ ์์ ํด๋์ ๋ณต์ํ๊ณ ์์ ๋ถ๋ถ์ ๋ฎ์ด์ด ๋ค race ๊ฒ์ฌ, panicnil=1 ๊ฒ์ฌ, ์ ์ ๊ฒ์ฌ์ ํฌ๋งท ๊ฒ์ฌ๋ฅผ ํฉ๋๋ค. ๊ธฐ๋ณธ CI๋ ๊ฐ์ง API์ ์์ ํ์ผ์ ์ฌ์ฉํฉ๋๋ค. ์๋ณธ์ด๋ ๋ชจ๋ธ์ ๋ค์ด๋ก๋ยท์คํํ๊ฑฐ๋ ํ์ตํ์ง ์์ต๋๋ค. ์ CI ํต๊ณผ ์ฌ๋ถ๋ PR์์ ๋ณ๋๋ก ํ์ธํ์ธ์.
source/controller๋ ์๋ณธ ์์์ ํ ๋ฒ ์์ยทํ์ํ๊ณ ํ์ผยท์ ๋ยทACKยท์ ์ EOF๋ฅผ ๋์กฐํฉ๋๋ค. source/comparer๋ ์ ์ฅ ์๋ฃ๋ง ๋น๊ตํฉ๋๋ค. source/core-overlay๋ ์บ์ ๊ฒฐ๊ณผ ์์ ๊ณผ ํ๊ท ์ฌ๋ก์
๋๋ค. source/archive๋ ๊ณผ๊ฑฐ ์คํ ํ์ผ์ ๋ณด๊ดํ๋ ์ ์ง๋ณด์ ๋๊ตฌ์
๋๋ค. source/compiler์ source/native-worker๋ ์ ํํ macOS ์๋ณธ ๊ด์ธก์ฉ ์์ค์ด๋ฉฐ ๊ธฐ๋ณธ ๊ฒ์ฌ์์ ์๋ณธ ์คํ์ ํ์ง ์์ต๋๋ค. ์ด ์ฐ๊ตฌ ๋ฌถ์์ ๊ธฐ๋ณธ riidolaya ์คํ ๋ช
๋ น์ ์๋ ๋ฑ๋ก๋์ง ์์ต๋๋ค.
์๋ณธ ์ฌํ์ ๋ณ๋ ๊ณต๊ฐ ์์ฐ, ๊ณ ์ revisionยท๋ผ์ด์ ์คยทํ์ผ SHA, fresh ์ถ๋ ฅ ๊ฒฝ๋ก๋ฅผ ๋จผ์ ํ์ธํด์ผ ํฉ๋๋ค. ํ
ํ๋ฆฟ์ originals๋ ์ค์ ๊ณ ์ ์๋ณธ ๋๋ ํฐ๋ฆฌ๋ฅผ ๋ปํฉ๋๋ค. ์คํ ํ์ผยท์๋ณธ ๋ณธ๋ฌธยท์์ ์ ๋ยท๊ฐ์ธ ๊ฒฝ๋ก๋ GitHub์ ์ฌ๋ฆฌ์ง ์์ต๋๋ค. ๊ณต๊ฐ ์์ค๋ ์์ฒด ๊ด์ฐฐยท๋น๊ตยท๋ณด๊ด ์ฝ๋์ด๋ฉฐ ์๋ณธ ๋ผ์ด์ ์ค๋ฅผ ๋์ฒดํ์ง ์์ต๋๋ค.
์ ์ฅ ๊ณต๊ฐ์ ํ๋ณดํ ๋ฐฉ๋ฒ
์ฒซ ์คํจ ์คํ ํ์ผ์ ๋จ๊ธฐ๊ณ ์ ์คํ ํ์ผ์ ๋ง๋ค๊ธฐ ์ํด, ์๋ฃ๋ ๊ณผ๊ฑฐ GJSON ์คํ ํ์ผ2๊ฐ๋ฅผ ์์ถ ๋ณด๊ดํ์ต๋๋ค. ์๋ณธ6,339,316B๋ฅผ gzip2,753,963B๋ก ๋ฐ๊พธ์ด ์ ์ด ๊ธฐ๋ก์ ์ ์ธํ๊ณ 3,585,353B๋ฅผ ํ๋ณดํ์ต๋๋ค. ์๋ณธ๊ณผ32KiB์ฉ ์ง์ ๋น๊ตํ๊ณ ํฌ๊ธฐยทSHAยทCRCยทISIZEยท๋จ์ผ ๋ฉค๋ฒยทEOF๋ฅผ ํ์ธํ ๋ค COMMIT์ ์ ์ฅํ๊ณ ์๋ณธ์ ํ ๋ฒ ์ญ์ ํ์ต๋๋ค.
์ด๋ฒ ๋ฐฉ์์ ์คํธ๋ฆผ ๋น๊ต์ด๋ฉฐ ์ค์ ๋์คํฌ ๋ณต์์ ํ๋ค๋ ๋ป์ ์๋๋๋ค. ๊ธฐ์กด44๊ฐ ์ค์ ๋ณต์ ๊ฒ์ฆ ๋ณด๊ด ์ ์ฐจ์ ๊ตฌ๋ถํฉ๋๋ค. ์คํจ ๋ถ๋ถ ํ์ผ๋ ๋ณด์กดํ๊ณ ์๋ ์ฌ์๋ํ์ง ์์ต๋๋ค. ์ ์ง ์ฐ๊ตฌ ์๋ฃ512MiB ์ ํ์ ์ค์ ๋์ ํ์ผ ๊ธฐ์ค์ผ๋ก ๊ณ์ ์ ์ฉํ๋ฉฐ Mac ์ ์ฒด RAMยท๋์คํฌ ์ฉ๋๊ณผ ๊ตฌ๋ถํฉ๋๋ค.
์คํ ์ฆ๊ฑฐ ยท ์ฒซ ์คํจ ยท ๋ณด๊ด ์ฝ๊ธฐ ๊ฒ์ฆ ยท ์ด์19 ยท English
๋ณ๋ ๋น๊ต๊ธฐ์ ์ค์ 819์กฐ๊ฑด ์ฌ๊ณ์ฐ์ด ๋ชจ๋ ์ผ์นํ ๋ค ๋ ์์ฒญ์ ๋ผ๋ฒจ6๊ฐ๋ฅผ ์ฑํํ๊ณ , 37ํ ๊ฐ๋ฐ ์๋ฃ๋ฅผ Go๋ก ์์ฑํด Reader ์ ์ฒด ๊ฐ37ํ๊ณผ ๋ฐ์ดํธ๋ฅผ ํ์ธํ์ต๋๋ค. ์ ๋ฏธํ์ธ68์กฐ๊ฑด์ ๊ธฐ์กด ์ ํ ๋ฒ์46๊ฐ์ ์ฐ๊ฒฐํ์ผ๋ฉฐ ์ Fit์0์ ๋๋ค. ๊ธฐ๋ณธ CI๋ ์ ์ฅ ์๋ฃ์ ์์ฒด ๋์กฐ ์ฌ๋ก๋ง ์ฌํํฉ๋๋ค.
PR #132: ํ์ CI ํต๊ณผยท๋์ผ ํธ๋ฆฌ ๋ณํฉ / CI passed; identical tree merged.
ํ์ต ์๋37๊ฐ ๋น๊ต / Nonlearned37 comparison ยท HF37 ๊ฒ์ ์ฆ๊ฑฐ / HF37 publication evidence.
๋ณ๋ ์ข ๋ฃ ์ ์ด ์์ ์ ์ต์ด ์๋ฝ๋ ์ค๋จ ์์ธ๊ณผ ์ ํธ ๊ฒฐ๊ณผยทerrno๋ฅผ ํจ๊ป ๋ณด์กดํฉ๋๋ค. ๊ธฐ๋ณธ/ํธํ race ๊ฒ์ฌ๋ฅผ ํต๊ณผํ์ผ๋ฉฐ ๊ธฐ์กด ์ค์ ๊ด์ธก๊ณผ ์๋ณธ ์์ค๋ ๊ทธ๋๋ก์ ๋๋ค. ์ค์ ์ ํธ ์คํจ ํ ๊ณ์ ์คํ๋๋ ์์์ ํ์ ์๋ฃ๊น์ง ๋ณด์ฅํ๋ ๋ณ๊ฒฝ์ ์๋๋๋ค. ์์ ์ค๋ช .