Currently when Cryostat observes that a recording is archived with the autoanalyze=true label, it attempts to perform automated analysis on that recording immediately (or immediately delegates to the cryostat-reports instance(s)). If the infrastructure Cryostat is running on, ex. the Kubernetes cluster, is under heavy load, then the additional cost or resource contention (mainly CPU time) of performing this analysis immediately may be undesirable. If Cryostat could detect the cluster's CPU load and had a configurable threshold it could be set up to delay analysis until the cluster is off peak. Or perhaps more simply, the automatic automated analysis feature could be made more configurable than a boolean and could have a cron-like schedule so that analyses are only run as a batch, ex. overnight at off-peak hours. Either way this would leave more of the CPU available for workloads within the cluster to consume.
Currently when Cryostat observes that a recording is archived with the
autoanalyze=truelabel, it attempts to perform automated analysis on that recording immediately (or immediately delegates to the cryostat-reports instance(s)). If the infrastructure Cryostat is running on, ex. the Kubernetes cluster, is under heavy load, then the additional cost or resource contention (mainly CPU time) of performing this analysis immediately may be undesirable. If Cryostat could detect the cluster's CPU load and had a configurable threshold it could be set up to delay analysis until the cluster is off peak. Or perhaps more simply, the automatic automated analysis feature could be made more configurable than a boolean and could have a cron-like schedule so that analyses are only run as a batch, ex. overnight at off-peak hours. Either way this would leave more of the CPU available for workloads within the cluster to consume.