YACS can execute calculation nodes of a scheme simultaneously. However, simultaneous execution of a large number of nodes can saturate the system. The maximum number of simultaneous executions can be controlled by fixing the maximum number of threads used with the YACS_MAX_THREADS environment variable. By default, this value is equal to 50.
Each of these threads needs some memory (stack) for its execution. If too much stack is allocated for each thread, the system can run out of memory. If too little stack is allocated, you can experience some random crashes as the thread writes to memory outside its allocated stack. The stack size for YACS threads can be controlled with the YACS_THREADS_STACK_SIZE environment variable. It defines the size of the stack for each thread in bytes. The default value is 1048576 (1MB).
YACS can execute the nodes of a scheme on several machines where SALOME is already installed. Each machine is a resource which has to be declared in the resources catalog (see The resources catalog).
Every node is executed by a container. Containers use a set of constraints and rules for choosing the resource where the node will be executed (see Containers).