def RunCassandraStressTest(cassandra_vms, loader_vms, num_operations,
                           command, profile_operations='insert=1',
                           population_size=None, population_dist=None,
                           population_params=None):
  """Start all loader nodes as Cassandra clients and run stress test.

  Args:
    cassandra_vms: list. A list of vm objects. Cassandra servers.
    load_vms: list. A list of vm objects. Cassandra clients.
    num_keys: integer. The number of operations cassandra-stress clients should
        issue.
    command: string. The cassandra-stress command to use.
    profile_operations: string. The operations to use with user mode.
    population_size: integer. The population size.
    population_dist: string. The population distribution.
    population_params: string. Representing additional population parameters.
  """
  num_loaders = len(loader_vms)
  data_node_ips = [vm.internal_ip for vm in cassandra_vms]
  population_size = population_size or num_operations
  operations_per_vm = int(math.ceil(float(num_operations) / num_loaders))
  population_per_vm = population_size / num_loaders
  if num_operations % num_loaders:
    logging.warn(
        'Total number of operations rounded to %s '
        '(%s operations per loader vm).',
        operations_per_vm * num_loaders, operations_per_vm)
  logging.info('Executing the benchmark.')
  args = [((loader_vms[i], i, operations_per_vm, data_node_ips,
            command, profile_operations, population_per_vm,
            population_dist, population_params), {})
          for i in xrange(0, num_loaders)]
  vm_util.RunThreaded(RunTestOnLoader, args)
dataset/ETHPy150Open GoogleCloudPlatform/PerfKitBenchmarker/perfkitbenchmarker/linux_benchmarks/cassandra_stress_benchmark.py/RunCassandraStressTest/original