Repository navigation
Fix: 부분 예열 게임이 있으면 30초마다 계획 파일을 통째로 다시 읽어 CPU 를 계속 씀 - #190
Merged
Merged
Conversation
부분 예열 게임이 남아 있는 동안 30초 틱마다 예산 계산이 예열 대상 게임 전부의 계획·목록 파일을 캐시 없이 다시 읽어 해석하고, 목록의 게임 파일을 다시 열었습니다. 읽을 것이 없는 틱에도 되풀이돼 평균 코어 하나의 약 22% 를 썼습니다. - 예산 계산이 쓰는 게임별 추정값(전체 크기, 관찰량)을 입력 파일의 길이·수정 시각과 관련 설정이 같고 10분 이내이면 재사용함 - 보충이 기다릴지 정하는 판정은 추정값으로 하고, 읽기로 정해진 뒤 읽기 직전에만 계획을 새로 읽음 - 새로 읽은 값이 추정과 다르면 그 값을 기억하고 이번 회는 읽지 않으며, 다음 회가 새 값으로 판정함 - 예열이 실제로 읽을 범위를 정하는 계획 읽기는 이전처럼 매번 새로 읽음 - 입력 파일 서명을 만드는 코드를 기존 서명과 한 곳으로 모음 - 등록에서 빠진 게임의 추정값은 지움 Issues #189
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
WarmBudget)이 쓰는 게임별 추정값(전체 크기, 관찰량)을 재사용합니다. 입력 파일(계획, 목록, 예열 전용 목록, volatile, 원시·boot 기록)의 존재·길이·수정 시각과 관련 게임 설정이 같고 10분 이내이면 다시 계산하지 않습니다 (csharp/src/AsterCache.Service/WarmEstimateCache.cs,Prewarm.Memory.cs).Prewarm.Supplement.cs).InputStamp와 한 곳으로 모았습니다.InputStamp의 값은 이전과 같습니다 (Streaming.cs).Prewarm.Games.cs).알아 둘 점
partial X/Y, 상태의hot_mib, 플레이 기록의start warm X/Y의 Y)가 다음 실제 읽기 때까지 이전 값으로 남습니다. 판정과 읽는 양에는 영향이 없습니다.Test plan
dotnet build csharp -c Release -m:1경고 0, 오류 0dotnet test csharp/tests/AsterCache.Tests -c Release --no-build --filter "Category!=Live"4,464건 통과dotnet format csharp --verify-no-changes종료 코드 0git diff --check종료 코드 0build-test통과: https://github.com/DO0OG/AsterCache/actions/runs/43528594235Closes #189