Ejemplo n.º 1
0
    def add_proper_subsystem(self, server):
        """
        Create a proper sub-system from a unit server.
        """
        tasks_servers = get_child_tasks(server)
        subsystem_utilization = sum([t.utilization for t in tasks_servers])
        cpus = []
        while subsystem_utilization > 0:
            cpus.append(self.available_cpus.pop())
            subsystem_utilization -= 1

        subsystem = ProperSubsystem(self.sim, server, cpus, self.Tdummy, 10)
        for server in tasks_servers:
            self.task_to_subsystem[server.task] = subsystem
        self.subsystems.append(subsystem)
Ejemplo n.º 2
0
    def add_proper_subsystem(self, server, i, level):
        """
        Create a proper sub-system from a unit server.
        """
        tasks_servers = get_child_tasks(server)
        subsystem_utilization = sum([t.utilization for t in tasks_servers])
        u = sum([float(t.utilization) for t in tasks_servers if t.task.name != "IdleTask"])
        cpus = []
        
        while subsystem_utilization > 0:
            cpus.append(self.available_cpus.pop())
            subsystem_utilization -= 1

        subsystem = ProperSubsystem(self.sim, i, level, server, cpus, self.Tdummy, u)
        self.sim.logger.log("task in subsystem {}".format(i))
        for server in tasks_servers:
            self.sim.logger.log("{}".format(server.task.name))
            self.task_to_subsystem[server.task] = subsystem
        self.subsystems.append(subsystem)
Ejemplo n.º 3
0
    def add_subsystem(self, server, level):
        """
        Create a proper sub-system from a unit server.
        """
        tasks_servers = get_child_tasks(server)
        subsystem_utilization = sum([t.utilization for t in tasks_servers])
        cpus = []
        while subsystem_utilization > 0:
            cpus.append(self.available_cpus.pop())
            subsystem_utilization -= 1

        subsystem = ProperSubsystem(self.sim, server, cpus, level)

        for cpu in self.available_cpus:
            if not cpu in cpus:
                cpu.set_idle(self.sim.duration)

        for server in tasks_servers:
            self.task_to_subsystem[server.task] = subsystem
        self.subsystems.append(subsystem)