KJNodes/memorygenerated

End Recording CUDAMemory History(EndRecordCUDAMemoryHistory)

해당 노드는 기술적으로 PyTorch의 torch。

End Record CUDA Memory History

input
output_path
input
COMBO
output_path
comfy_cuda_memory_history
KJNodes

End Recording CUDAMemory History 노드는 CUDA 메모리 기록을 중단하고 스냅샷을 저장하는 데 사용됩니다. 일반적으로 기록을 시작하는 노드와 함께 사용되어 두 노드 사이에 발생한 GPU 메모리 할당 및 해제 이벤트를 캡처하고 데이터를 파일로 저장합니다. 이 노드는 딥러닝 워크플로우에서의 GPU 메모리 사용량을 분석하고 시각화하는 데 도움을 주기 위해 설계되었습니다.

노드 기능

이 노드는 기술적으로 PyTorch의 torch.cuda.memory._dump_snapshot() 함수를 호출하여 메모리 스냅샷 파일을 생성합니다. 캐시를 먼저 비운 후 타임스탬프가 포함된 .pt 파일을 생성합니다. 이 파일 형식은 PyTorch 공식 메모리 시각화 도구와 호환되며, 향후 심층 분석에 사용할 수 있습니다.

노드 매개변수 설명 - End Recording CUDAMemory History

연결 입력 (Inputs)

매개변수 이름데이터 타입필수기본값범위/옵션설명
input콤보--수신된 입력 데이터를 그대로 출력하여 워크플로우의 연결성을 유지합니다.

컨트롤 매개변수 (Parameters)

매개변수 이름데이터 타입필수기본값범위/옵션설명
output_path문자열comfy_cuda_memory_history-생성된 최종 메모리 스냅샷 파일의 전체 경로입니다.

출력

매개변수 이름데이터 타입설명
inputANY수신된 입력 데이터를 그대로 출력하여 워크플로우의 연결성을 유지합니다.
output_path문자열생성된 최종 메모리 스냅샷 파일의 전체 경로입니다.

사용 시나리오

복잡한 워크플로우나 대형 모델을 디버깅할 때, 이 노드를 많은 GPU 메모리를 소비할 수 있는 노드 시퀀스 뒤에 배치할 수 있습니다. 예를 들어, 여러 개의 고해상도 이미지 생성 및 업스케일 단계를 포함하는 워크플로우의 끝에 이 노드를 연결하면 전체 생성 과정에서의 메모리 변동을 캡처하여 메모리 누수 위치를 파악하거나 배치 크기를 최적화하는 데 도움이 됩니다.

주의사항

메모리 스냅샷을 자주 기록하면 성능에 약간의 영향을 미칠 수 있으므로, 디버깅이 필요할 때만 사용하는 것이 좋습니다. 생성된 스냅샷 파일은 특정 시점의 메모리 상태를 포함하고 있으며, 이를 해석하려면 PyTorch Memory Viz와 같은 전용 도구나 함께 제공되는 시각화 노드가 필요합니다.

End Recording CUDAMemory History 노드 소스 코드 링크

End Recording CUDAMemory History 노드는 ComfyUI-KJNodes 노드 패키지에서 가져왔습니다.

댓글

GitHub로 로그인하고 토론에 참여하세요.

댓글을 불러오는 중…