Timer Node KJ(TimerNodeKJ)
이 노드는 내부적으로 Python의 time.time() 함수를 호출하여 시간을 측정합니다.
Timer Node KJ
Timer Node KJ는 워크플로 내 특정 단계의 실행 시간을 측정하는 유틸리티 노드입니다. 사용자가 타이머를 시작하고 중지하여 처리 단계의 소요 시간을 정량화함으로써 성능 분석과 최적화에 도움을 줍니다.
노드 기능
이 노드는 내부적으로 Python의 time.time() 함수를 호출하여 타임스탬프를 기록합니다. 핵심 메커니즘은 TIMER 객체에 의존하며, 이 객체는 "start" 모드에서 생성 및 초기화되고, "stop" 모드에서는 시작부터 중지까지 경과된 시간을 밀리초 단위로 계산하여 반환합니다. 노드는 모든 유형의 데이터 흐름을 그대로 통과시키도록 설계되어 데이터 처리를 중단하지 않고 기존 워크플로에 원활하게 통합될 수 있습니다. 선택적 timer 입력을 사용하면 타이머 인스턴스를 연결하여 한 노드에서 다른 노드로 타이머 상태를 전달해 순차적인 측정이 가능합니다.
노드 파라미터 설명 - Timer Node KJ
입력
| 파라미터 이름 | 데이터 타입 | 필수 | 기본값 | 범위/옵션 | 설명 |
|---|---|---|---|---|---|
any_input | IO | 예 | - | - | any_input (입력 파라미터): 모든 유형의 입력 데이터를 받습니다. 노드는 이를 출력으로 그대로 전달하며, 타이머 기능에는 영향을 주지 않습니다. |
timer | TIMER | 아니오 | - | - | timer (입력 파라미터): 다른 Timer 노드에서 기존 TIMER 객체를 받는 선택적 입력입니다. 여러 타이머 노드를 연결하여 순차적으로 측정할 때 사용합니다. 독립형 타이머로 사용하려면 연결을 해제된 상태로 두십시오. |
컨트롤 파라미터 (Parameters)
| 파라미터 이름 | 데이터 타입 | 필수 | 기본값 | 범위/옵션 | 설명 |
|---|---|---|---|---|---|
mode | COMBO | 예 | start | "start", "stop" | mode (입력 파라미터): 타이머의 동작 모드를 설정합니다. 옵션은 "start"(새 타이머 시작) 또는 "stop"(현재 타이머를 중지하고 결과 계산)입니다. |
name | STRING | 예 | Timer | - | name (입력 파라미터): 현재 타이머의 이름을 지정하여 여러 타이머 작업을 구분하는 데 유용합니다. 기본 이름은 "Timer"입니다. |
출력
| 파라미터 이름 | 데이터 타입 | 설명 |
|---|---|---|
| any_output | ANY | any_output (출력 파라미터): any_input에서 받은 데이터를 그대로 출력하여 워크플로 데이터의 연속성을 보장합니다. |
| timer | TIMER | timer (출력 파라미터): 현재 상태의 TIMER 객체를 출력합니다. 노드 간에 타이머 인스턴스를 전달하여 연결하는 데 사용됩니다. |
| time | INT | time (출력 파라미터): "stop" 모드에서는 타이머 결과를 밀리초 단위의 정수 값으로 출력합니다. "start" 모드에서는 0을 출력합니다. |
사용 시나리오
복잡한 워크플로를 구축할 때 이 노드를 사용하여 병목 현상을 진단할 수 있습니다. 예를 들어, 이미지 생성 과정을 분해하여 "모델 로드"와 "이미지 생성" 단계 전후에 이 노드를 각각 배치하고 "start" 및 "stop" 모드로 설정합니다. TIMER 객체를 연결하면 각 하위 단계의 구체적인 소요 시간을 측정하여 가장 시간이 많이 걸리는 부분을 식별할 수 있습니다. 선택적 timer 입력을 사용하면 타이머 상태를 유지하면서 후속 측정을 연결할 수 있습니다.
주의사항
이 노드를 사용할 때는 "start" 및 "stop" 모드의 노드 간에 TIMER 객체가 올바르게 연결되어 타이머 상태가 전달되어야 합니다. 연결이 잘못되었거나 모드 설정이 올바르지 않으면 타이머 기능이 제대로 작동하지 않거나 0 값을 반환할 수 있습니다.
Timer Node KJ 소스 코드 링크
Timer Node KJ 노드는 ComfyUI-KJNodes 노드 패키지에서 제공됩니다.
댓글
GitHub로 로그인하고 토론에 참여하세요.