SIMD or vector computers and collection-oriented languages, like C , are designed to perform the same computation on each data item or on just a subset of the data. Subsets of processors or data items are implemented via an activity bit and a stack of activity bits when subsets of subsets are supported. This method is also usedinVLIWprocessors through if-conversion to implement parallel control flow as in SIMD computers. We present a new method of dynamic sheduling of several SIMD control flow constructions which can be nested. Our implementation of activity stacks is based on activity counters. At a given stack depth n, the number of memory bits required is log2 n, whereas previous implementations require n bits. The local controller is of equivalent complexity in both cases. This algorithm is useful for SIMD, vector or VLIW machines and for compilers of collection-oriented languages on MIMD computers.