Timer Node KJ(TimerNodeKJ)
Ce nœud appelle en interne la fonction time de Python.
Timer Node KJ
Le nœud Timer Node KJ est un nœud utilitaire conçu pour mesurer le temps d'exécution d'étapes spécifiques dans un flux de travail. Il permet aux utilisateurs de démarrer et d'arrêter un chronomètre, quantifiant ainsi la durée des étapes de traitement pour faciliter l'analyse et l'optimisation des performances.
Fonctionnalités du nœud
Ce nœud appelle en interne la fonction Python time.time() pour enregistrer des horodatages. Son mécanisme central repose sur un objet TIMER, qui est créé et initialisé en mode « start », et qui calcule et retourne le temps écoulé en millisecondes du démarrage à l'arrêt en mode « stop ». Le nœud est conçu pour transmettre des flux de données de tout type, garantissant une intégration transparente dans les flux de travail existants sans interrompre le traitement des données. L'entrée optionnelle timer permet de chaîner des instances de chronomètre, de sorte que l'état du chronomètre peut être passé d'un nœud à un autre pour des mesures séquentielles.
Description des paramètres du nœud - Timer Node KJ
Entrées (Inputs)
| Nom du paramètre | Type de données | Requis | Valeur par défaut | Plage de valeurs/Options | Description |
|---|---|---|---|---|---|
any_input | IO | Oui | - | - | any_input (paramètre d'entrée) : Accepte des données d'entrée de tout type. Le nœud les transmet telles quelles en sortie, sans affecter la fonction de chronométrage. |
timer | TIMER | Non | - | - | timer (paramètre d'entrée) : Entrée optionnelle pour recevoir un objet TIMER existant d'un autre nœud Timer. Utilisez-la pour chaîner plusieurs nœuds Timer pour un chronométrage séquentiel. Laissez déconnecté pour un chronomètre autonome. |
Paramètres de contrôle (Parameters)
| Nom du paramètre | Type de données | Requis | Valeur par défaut | Plage de valeurs/Options | Description |
|---|---|---|---|---|---|
mode | COMBO | Oui | start | « start », « stop » | mode (paramètre d'entrée) : Définit le mode de fonctionnement du chronomètre. Les valeurs possibles sont « start » (démarrer un nouveau chronométrage) ou « stop » (arrêter le chronométrage en cours et calculer le résultat). |
name | STRING | Oui | Timer | - | name (paramètre d'entrée) : Spécifie un nom pour le chronomètre actuel, facilitant la distinction entre plusieurs tâches de chronométrage. Le nom par défaut est « Timer ». |
Sorties (Outputs)
| Nom du paramètre | Type de données | Description |
|---|---|---|
| any_output | ANY | any_output (paramètre de sortie) : Restitue exactement les données reçues via any_input, assurant la continuité des données dans le flux de travail. |
| timer | TIMER | timer (paramètre de sortie) : Sort l'objet TIMER dans son état actuel, utilisé pour passer l'instance du chronomètre entre les nœuds pour le chaînage. |
| time | INT | time (paramètre de sortie) : En mode « stop », sort le résultat du chronométrage sous forme de valeur entière en millisecondes ; en mode « start », sort 0. |
Cas d'utilisation
Lors de la construction de flux de travail complexes, vous pouvez utiliser ce nœud pour diagnostiquer les goulots d'étranglement. Par exemple, décomposez un processus de génération d'image et placez ce nœud avant et après les étapes « Charger le modèle » et « Générer l'image », en le configurant respectivement en modes « start » et « stop ». En connectant l'objet TIMER, vous pouvez mesurer la durée spécifique de chaque sous-étape, identifiant ainsi les segments les plus longs. L'entrée optionnelle timer vous permet de chaîner les mesures suivantes sans perdre l'état du chronomètre.
Notes
Lors de l'utilisation de ce nœud, assurez-vous que l'objet TIMER est correctement connecté entre les nœuds en modes « start » et « stop » pour transmettre l'état du chronométrage. Des connexions incorrectes ou des réglages de mode erronés peuvent entraîner un dysfonctionnement du chronométrage ou le retour d'une valeur nulle.
Lien vers le code source du nœud Timer Node KJ
Le nœud Timer Node KJ provient du pack de nœuds ComfyUI-KJNodes.
Commentaires
Connectez-vous avec GitHub pour rejoindre la discussion.