Sorry, for asking but I am not so familiar with conda.
Is it normal behavior if the init of the robot run takes some time?
In the youtube videos it is looking like it is running in an instance. In my cases, it often takes several seconds/minutes.
It looks like the robot cannot use the existing env and clones it every time:
#### Progress: 0/4 [try use existing live same environment?] 0a6dc3b2-a864-8027-da43-9988c933a115
FINAL union conda environment descriptior:
#### Progress: 1/4 [try clone existing same template to live, key: 45a3439d9a44c819]
#### Progress: 4/4 [Done.] [Stats: 3 environments, 10 requests, 0 merges, 3 hits, 3 dirty, 3 misses, 1 failures | v7.1.5]
Thanks for your help.
There are a couple of things that affect the runtimes.
In general when you create a new robot, open a robot or edit the conda.yaml we need to setup that environment. Even a small environment in python is usually around 200MB and usually a lot of small files.
RCC builds a cache out the environments so that only the 1st run is actually loading the environment. RCC also detects if the live environment has been polluted. So if you for example after the environment has been build manually go into the environment and install something with pip for example, then on the next run RCC will restore the environment to the state that conda.yaml dictates. This is done to ensure and isolate the execution environment from any unknown changes.
I think in the log you shared there we are getting a cache hit so I think you might be hitting the Defender case below.
On Windows machines especially the disk speed takes a hit from Windows Defender (or other antivirus tools) as they basically have to scan each small file before letting them through. This can basically drop the disk speed to half.
It is quite common to create exclusion rules for Defender in developer folder and we have a guide for this.
A bit of a long answer, but this is one of the key benefits we want to provide with RCC so we are a bit passionate on this .
You do not have fight with setting up different python versions, pip installs etc. etc. which break everything whenever you touch something or try to run on another machine… just define the conda.yaml and RCC does it for you.
Sneak-peak: We also have the next evolution of the RCC environment cache in the pipeline to reduce the disk footprint by a LOT
Thanks a lot, Kari.
I love your detailed answer.
It really helps me to get a better overview about the whole concept.
Thanks for the guide. Sorry, I haven’t realized that so far.
Reducing the disk footprint by a lot…that sounds awesome
I am curious about it…