def test():
    config.change_to('worker_select')
    # print config.output_order
    # print config.default_instance_num
    # print config.default_task_per_instance
    # print config.default_worker_per_instance
    # worker should be at least 2 times more than task
    run_on_variable('skew', 'worker_per_instance', config.worker_per_instance)
    run_on_variable('skew', 'task_per_instance', config.task_per_instance)
def run_experiments_plan(mode):
    if mode == 'online':
        logger.info('online mode')
        config.change_to('online')
    elif mode == 'batched':
        logger.info('batched mode')
        config.change_to('batched')
    elif mode == 'mix':
        logger.info('mix mode')
        config.change_to('mix')

    for dist in config.distribution:
        if dist != 'real':
            # run_on_variable(dist, 'worker_num_per_instance', config.worker_num_per_instance)
            # run_on_variable(dist, 'task_num_per_instance', config.task_num_per_instance)
            run_on_variable(dist, 'worker_location_mean',
                            config.worker_location_mean)
            run_on_variable(dist, 'worker_location_variance',
                            config.worker_location_variance)
            run_on_variable(dist, 'worker_cluster_number',
                            config.worker_cluster_number)

        # run_on_variable(dist, 'task_duration', config.task_duration)
        # run_on_variable(dist, 'task_requirement', config.task_requirement)
        # run_on_variable(dist, 'task_confidence', config.task_confidence)
        # run_on_variable(dist, 'worker_capacity', config.worker_capacity)
        # run_on_variable(dist, 'worker_reliability', config.worker_reliability)
        run_on_variable(dist, 'working_side_length',
                        config.working_side_length)
        run_on_variable(dist, 'batch_interval_time',
                        config.batch_interval_time)
    # print config.default_worker_per_instance
    # worker should be at least 2 times more than task
    run_on_variable('skew', 'worker_per_instance', config.worker_per_instance)
    run_on_variable('skew', 'task_per_instance', config.task_per_instance)


if __name__ == '__main__':
    if len(sys.argv) > 1:
        arg = sys.argv[1]
        if arg == 'test':
            logger.info('test mode')
            test()
            exit()
        elif arg == 'worker_select':
            logger.info('worker-selected mode')
            config.change_to('worker_select')
        elif arg == 'server_assign':
            logger.info('server-assigned mode')
        else:
            exit()

    for dist in config.distribution:
        if dist != 'real':
            run_on_variable(dist, 'worker_per_instance',
                            config.worker_per_instance)
            run_on_variable(dist, 'task_per_instance',
                            config.task_per_instance)
        run_on_variable(dist, 'task_duration', config.task_duration)
        run_on_variable(dist, 'task_requirement', config.task_requirement)
        run_on_variable(dist, 'task_confidence', config.task_confidence)
        run_on_variable(dist, 'worker_capacity', config.worker_capacity)
예제 #4
0
def test():
    config.change_to('worker_select')
    run_on_variable('skew', 'worker_per_instance', config.worker_per_instance)
    run_on_variable('skew', 'task_per_instance', config.task_per_instance)
def test():
    config.change_to('batched')
    run_on_variable('real', 'task_duration', config.task_duration)
    config.change_to('online')
    run_on_variable('real', 'task_duration', config.task_duration)