Continuing Constructed Helpers - kimjooyoon/meta-ontology-go GitHub Wiki

바뀐 보쑰 ν•¨μˆ˜λ₯Ό λ°˜μ˜ν•˜λ©° 쑰립 이어가기

μ—…λ°μ΄νŠΈ: 2026-10-08 KST. PR #1351은 ν•„μˆ˜ CI 6κ°œμ™€ 증빙 확인 ν›„ dev 26daac53에 λ³‘ν•©ν–ˆμŠ΅λ‹ˆλ‹€. main 반영 #1352도 별도 CI 톡과 ν›„ main 60fef5c0에 λ³‘ν•©ν–ˆμŠ΅λ‹ˆλ‹€. 0.6.7 κ°œλ°œνŒμ— ν¬ν•¨λœ κΈ°λŠ₯μž…λ‹ˆλ‹€. μ•„λž˜ κ³ μ • μ†ŒμŠ€λŠ” 졜초 κ΄€μΈ‘ μ‹œμ μ΄λ©°, 곡개 μ‹€ν–‰ 파일둜 λ‹€μ‹œ ν™•μΈν•œ κ²°κ³ΌλŠ” ν˜„μž¬ μƒνƒœμ— μžˆμŠ΅λ‹ˆλ‹€.

μž‘μ€ λΆ€ν’ˆμ„ λ°”κΎΈλ©΄ κ·Έ λΆ€ν’ˆμ„ μ‚¬μš©ν•˜λŠ” λ‹€μŒ 단계도 확인해야 ν•©λ‹ˆλ‹€. Gooo의 body-compose --resume-composition은 보쑰 ν•¨μˆ˜λ₯Ό λ¨Όμ € 이어 λ§Œλ“€κ³ , λ³€κ²½λœ ν•¨μˆ˜λ₯Ό ν˜ΈμΆœν•˜λŠ” 쑰립 후보λ₯Ό λ‹€μ‹œ κ²€μ‚¬ν•©λ‹ˆλ‹€. 이전 μ μˆ˜λŠ” λ‹Ήμ‹œμ˜ μ†ŒμŠ€μ™€ ν•¨κ»˜ μž¬ν˜„ν•˜λ©°, ν˜„μž¬ μ μˆ˜λŠ” 바뀐 λΆ€ν’ˆμœΌλ‘œ κ³„μ‚°ν•©λ‹ˆλ‹€.

따라 ν•  수 μžˆλŠ” 예제

μ‹€ν–‰ μˆœμ„œμ™€ Gooo μ†ŒμŠ€λŠ” μ„Έ λ‹¨κ³„μž…λ‹ˆλ‹€.

  1. Checkpoint μ •μ±…μœΌλ‘œ 각 보쑰 ν•¨μˆ˜μ˜ 첫 후보와 λΆ€λΆ„ κ²°κ³Όλ₯Ό μ €μž₯ν•©λ‹ˆλ‹€.
  2. Explain μ •μ±…μœΌλ‘œ 남은 후보λ₯Ό μ‘°λ¦½ν•©λ‹ˆλ‹€. 바뀐 보쑰 ν•¨μˆ˜μ— μ˜μ‘΄ν•˜λŠ” κΈ°μ‘΄ 후보도 μž¬κ²€μ‚¬ν•©λ‹ˆλ‹€.
  3. μ €μž₯ν•œ κ²°κ³Όλ₯Ό μƒˆ ν”„λ‘œμ„ΈμŠ€μ—μ„œ λ‹€μ‹œ μ‹€ν–‰ν•©λ‹ˆλ‹€.

λͺ¨λΈμ€ 처음 쑰립할 λ•Œ μ„ νƒμ μœΌλ‘œ μ—°κ²°ν•©λ‹ˆλ‹€. 이어 λ§Œλ“€ λ•ŒλŠ” κΈ°μ‘΄ μ œμ•ˆ μˆœμ„œλ₯Ό μ‚¬μš©ν•˜λ―€λ‘œ λͺ¨λΈ 파일과 μΆ”κ°€ 좔둠이 ν•„μš”ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. μ„ νƒμ§€Β·κΈ°λŒ€κ°’Β·λˆ„μ  μ˜ˆμ‚°μ€ Gooo 선언에 μœ μ§€λ©λ‹ˆλ‹€.

μ‹€μ œλ‘œ κ΄€μΈ‘ν•œ λ³€ν™”

예제 처음 μ €μž₯ν•œ μ•± 좜λ ₯ 이어 λ§Œλ“  μ•± 좜λ ₯ 이어 λ§Œλ“€λ©΄μ„œ ν•œ 일
두 보쑰 ν•¨μˆ˜ Seed β†’ Wrap β†’ Main 0/2 2/2 Seed에 μƒˆ 후보 1개. Wrap의 κΈ°μ‘΄ 후보 1개λ₯Ό μž¬κ²€μ‚¬ν•˜κ³  μƒˆ 후보 1개
진단 ν•¨μˆ˜, κ²°μ •λ‘  μˆœμ„œ 2/4 4/4 κΈ°μ‘΄ 후보 1개 μœ μ§€, μƒˆ 후보 3개
진단 ν•¨μˆ˜, 자체 μ†Œν˜• λͺ¨λΈ 2/4 4/4 κΈ°μ‘΄ 후보 1개 μœ μ§€, μƒˆ 후보 1개

진단 ν•¨μˆ˜ 자체의 쑰립 μ‚¬λ‘€λŠ” 두 경둜 λͺ¨λ‘ 3/5μ—μ„œ 5/5κ°€ λμŠ΅λ‹ˆλ‹€. κ²°μ •λ‘ Β·λͺ¨λΈ 경둜의 μ΅œμ’… 생성 μ½”λ“œκ°€ κ°™μ•˜κ³ , μ„Έ ν”„λ‘œκ·Έλž¨ λͺ¨λ‘ μ €μž₯ μž¬μ‹€ν–‰μ„ ν†΅κ³Όν–ˆμŠ΅λ‹ˆλ‹€. 이어 μ‘°λ¦½ν•˜κΈ°μ™€ μž¬μ‹€ν–‰μ˜ μƒˆ λͺ¨λΈ ν˜ΈμΆœμ€ 0νšŒμž…λ‹ˆλ‹€.

μ›λ³ΈΒ·μΈ‘μ •Β·μž¬ν˜„ 방법은 κΉ¨λ—ν•œ 컴파일러 μ†ŒμŠ€ 395fb538μ—μ„œ μ‹€ν–‰ν•œ 아홉 λͺ…령을 κΈ°λ‘ν•©λ‹ˆλ‹€. 자체 QAT λͺ¨λΈμ˜ κ°€μ€‘μΉ˜λ₯Ό λ°”κΎΈμ§€ μ•Šκ³  μ‚¬μš©ν–ˆμŠ΅λ‹ˆλ‹€. νŒλ‹¨μ€ 11.375Β΅s, μ μž¬λŠ” 0.716167ms, λ³΅μ›ν•œ ν…μ„œλŠ” 2,096Bμ˜€μŠ΅λ‹ˆλ‹€.

κ²°μ •λ‘  이어 λ§Œλ“€κΈ°λŠ” 0.33초, λͺ¨λΈ μˆœμ„œλ₯Ό 이어 μ“°λŠ” 싀행은 0.35μ΄ˆμ˜€μŠ΅λ‹ˆλ‹€. λͺ¨λΈ 경둜의 첫 λͺ…령은 μ‚¬μš©μž CPU 0.16초, μ‹œμŠ€ν…œ CPU 0.11초, μ΅œλŒ€ RSS μ•½ 86.0MBλ₯Ό κΈ°λ‘ν–ˆμŠ΅λ‹ˆλ‹€. Go λΉŒλ“œμ™€ μ‹€μ œ ν”„λ‘œκ·Έλž¨ 싀행이 ν¬ν•¨λœ κ°’μž…λ‹ˆλ‹€. μΊμ‹œλ₯Ό ν†΅μ œν•˜μ§€ μ•Šμ€ 단일 순차 관츑이며 λͺ¨λΈ 자체의 CPU μ¦κ°€λŸ‰μ€ λ―ΈμΈ‘μ •μž…λ‹ˆλ‹€.

기둝을 μ½λŠ” κΈ°μ€€

  • μœ μ§€ν•œ 후보: 이전에 μ‹œλ„ν–ˆλ˜ ν›„λ³΄μ˜ κ°œμˆ˜μž…λ‹ˆλ‹€.
  • μž¬κ²€μ‚¬ν•œ 후보: 보쑰 ν•¨μˆ˜ λ³€κ²½ ν›„ λ‹€μ‹œ 점수λ₯Ό κ³„μ‚°ν•œ κΈ°μ‘΄ ν›„λ³΄μž…λ‹ˆλ‹€.
  • μƒˆ 후보: μ΄λ²ˆμ— 처음 μ‹œλ„ν•œ ν›„λ³΄μž…λ‹ˆλ‹€.

μž¬κ²€μ‚¬λŠ” 계산을 μ‚¬μš©ν•˜μ§€λ§Œ μƒˆ 후보 μ˜ˆμ‚°μ„ λŠ˜λ¦¬μ§€λŠ” μ•ŠμŠ΅λ‹ˆλ‹€. κ³Όκ±° 기둝을 ν™•μΈν•˜λŠ” μž¬μ‹€ν–‰ λΉ„μš©λ„ λ³„λ„λ‘œ μ‘΄μž¬ν•©λ‹ˆλ‹€. 이 μ„Έ 수λ₯Ό 전체 CPU μž‘μ—…λŸ‰μœΌλ‘œ ν•΄μ„ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. ν•œλ•Œ λͺ¨λ“  사둀λ₯Ό λ§žν˜”λ˜ ν˜ΈμΆœμžκ°€ 보쑰 ν•¨μˆ˜ λ³€κ²½ ν›„ μ‹€νŒ¨ν•˜λŠ” κ²½μš°λ„ νšŒκ·€ 검사에 λ„£μ—ˆμŠ΅λ‹ˆλ‹€.

ν˜„μž¬ λ ˆμ½”λ“œ 선택 μ‘°λ¦½μ—μ„œ μ§€μ›ν•˜λ©°, νŒ¨ν‚€μ§€ μ‹€ν–‰μ˜ package resume에도 μ—°κ²°λμŠ΅λ‹ˆλ‹€. νŒ¨ν‚€μ§€ μ˜ˆμ œμ™€ 보쑴 λ²”μœ„. λ‹€λ₯Έ 쑰립 ν”„λ‘œν•„κ³Ό 후보λ₯Ό κ²€μ‚¬ν•˜λ©΄μ„œ λ°œμƒν•œ 쀑첩 호좜의 μž…λ ₯ 이λ ₯은 남은 λ²”μœ„μž…λ‹ˆλ‹€. μ‚¬μš©μžκ°€ λͺ…령을 μ‹œμž‘ν•˜λ©°, 도ꡬ가 슀슀둜 λ‹€μŒ 싀행을 μ˜ˆμ•½ν•˜λŠ” κΈ°λŠ₯은 후속 κ³Όμ œμž…λ‹ˆλ‹€.

이 κΈ°λŠ₯은 μž‘μ€ 도ꡬλ₯Ό 계속 고쳐 μ“Έ λ•Œ λ“œλŸ¬λ‚œ μ–Έμ–΄ μš”κ΅¬μ—μ„œ μΆœλ°œν–ˆμŠ΅λ‹ˆλ‹€. μ•žμœΌλ‘œλ„ μ‚¬μš© κ°€λŠ₯ν•œ 도ꡬ, ꡬ체적인 μ‹€νŒ¨, κ·Έ μ‹€νŒ¨λ₯Ό ν•΄κ²°ν•˜λŠ” μ–Έμ–΄ κΈ°λŠ₯을 μ—°κ²°ν•΄ λ°œμ „μ‹œν‚΅λ‹ˆλ‹€.

μ„±μž₯ λ°©ν–₯ Β· μ•žμ„  배포 κ΄€μΈ‘ Β· λ¬Έμ„œ ν™ˆ