Narkoy Batouma
email: narkoy.batouma@insa-lyon.fr

Decentralized Resource Management Using a Borrowing Schema

Keywords: QoS, Resource Management, Borrowing Scheme, Scheduling, Decentralized Approach, Agent. I

Resource management is a main issue when distributed applications should meet some Quality of Service (QoS) constraints. Centralized approaches are widely used for many good reasons, but decentralized approaches are often more reliable. A local view of the system from a node is not sufficient to make sound decisions. To synchronize their actions, nodes must exchange data with each other. Exchanging data incurs a cost; hence, to reduce the amount of exchanged data is desirable. This paper presents a distributed middleware to manage resources in a decentralized manner, using an approximate scheduling and a resource-borrowing scheme to improve the total QoS of the system. On each node, managers construct a comprehensive view of resource availability in the whole system. Our borrowing scheme aims to guarantee that as many applications as possible meet their deadline, to reject as few applications as possible, while decreasing the exchange costs and increasing the use of resources. Simulations show the usefulness of the approach and give encouraging results.

INTRODUCTION

Generally, Distributed Applications DAs are carried out in environments providing the best-effort policy. Unless constraints are specified, developers focus their effort on writing business code without taking into account QoS requirements, e.g., response time, resource allocation [START_REF] Cardei | Hierarchical Architecture for Real-Time Adaptive Resource Management[END_REF]. As long as resources are sufficient, the best effort policy is satisfactory, but when resources are scarce, control is needed. QoS-driven resource management is required to make the system more predictable [START_REF] Lakshmann | Integrated CPU and NetworkI/O QoS Management in an Endsystem[END_REF], [START_REF] Hafid | Providing a scalable video-on-demand system using future reservation of resources and multicast communications[END_REF], to manage resources efficiently, and to provide QoS support for applications. Resources are managed in order to maximize an optimization criterion [START_REF] French | Sequencing and Scheduling[END_REF]. For example, we could want to execute a set of tasks as fast as possible or we could want to execute as many tasks as possible within a given period. The general problem of scheduling is known to be NP-Hard [START_REF] Pinedo | Scheduling: Theory, Algorithms and Systems[END_REF]. Anyway, when the arrival law of applications is unknown, only some transient optimal solution can be reach, which has no real interest. To cope with complexity, heuristics provide approximate solutions [START_REF] Vienne | Modeling Distributed Applications for QoS Management[END_REF]. The scheduler represents an abstraction level that decides on the tasks' ordering in order to maximize some optimization criterion. This scheduler is part of a resource manager that dynamically reschedules task to maximize the QoS that is provided by the whole system. The architecture of a distributed system has a significant impact on its provided QoS. Among the numerous architectures aiming to implement resource management [START_REF] Alhalabi | Centralized vs. Decentralized QoS Management policy" Information and Communication Technologies: From Theory to Applications[END_REF], [START_REF] Xuan | Multi-agent policies:From centralized ones to decentralized ones[END_REF], we distinguish between centralized and decentralized scheduling. In the centralized approaches, scheduling is made by one scheduler according to the entire system state [START_REF] Vienne | Modeling Distributed Applications for QoS Management[END_REF], [START_REF] Vienne | A Middleware for Autonomic QoS Management based on Learning Software Engineering and Middleware (SEM 2005)[END_REF] ; in the decentralized approaches [START_REF] Maayan | Decentralized communication strategies for coordinated multi-agent policies[END_REF], [START_REF] Stumm | Strategies for Decentralized Resource Management[END_REF], [START_REF] Arora | A Decentralized Scheduling and Load Balancing Algorithm for heterogeneous Grid Environment[END_REF] the decision is constructed by several schedulers which hold a partial knowledge of the system only and deal with consistency and communication explicitly [START_REF] Maayan | Decentralized communication strategies for coordinated multi-agent policies[END_REF], [START_REF] Claudia | Optimizing information exchange in cooperative multi-agent systems[END_REF], [START_REF] Hino | Message exchange method for decentralized scheduling[END_REF]. We intend to experiment with decentralized architectures. Our approach does not relate to large systems such as grid computing [START_REF] Krauter | A Taxonomy and Survey of Grid ResourceManagement Systems for Distributed Computing[END_REF] but relies on a Local Area Network with a "flat" architecture. Our approach does not either relate to resource management such as virtualization [START_REF] Sung | Service Agent-Based Resource Management Using Virtualization for Computational Grid[END_REF], which introduces an abstraction layer on top of resources to hide physical characteristics from the users. Besides, applications are carried out on the nodes to which they are admitted. Although resource use on each node depends on the context and resource availability, our approach does not implement load balancing [START_REF] Grosu | Algorithmic Mechanisms Design for Load Balancing in Distributed Systems[END_REF] in the sense that applications do not move.

In this paper, we address distributed applications whose arrival law is unpredictable and systems subjected to QoS constraints such as the value of any service provided after the deadline is null. In this context, continuous run-time adaptation of application behavior, e.g., graceful degradation is a promising approach. To adapt resource consumption, applications participate in resource management. As a drawback, applications are specific, but this intrusive policy [START_REF] Cardei | Hierarchical Architecture for Real-Time Adaptive Resource Management[END_REF] is the only way to tune resources finely and consistently. We need a middleware that fully controls resource use based on a decentralized approach. The middleware is the layer that copes with resource management issues and controls applications' behavior on each node. We have divided the works into two parts. The first part proposes the decentralized approach of resources management. The second aims to describe adaptation of distributed applications. This paper deals with the first part only. Scheduling uses a scheme of resource borrowing to make it possible to keep locally a global view of system resource availability, allowing local managers to make decisions while reducing communication costs.

The paper is organized as follows: first, we present the problem description (section II) and the application model that will be used to simulate our approach (section III). Then, we describe our approach (section IV) and show how the system is implemented in practice (section V). Finally, we give some results (section VI) and we compare our approach to related works (section VII).

II. PROBLEM DESCRIPTION

The choice between centralized and decentralized architecture depends on needs. Each one has its advantages and drawbacks [START_REF] Alhalabi | Centralized vs. Decentralized QoS Management policy" Information and Communication Technologies: From Theory to Applications[END_REF], and represents solutions from different perspectives. We experimented with several centralized policies [START_REF] Vienne | Modeling Distributed Applications for QoS Management[END_REF], [START_REF] Vienne | A Middleware for Autonomic QoS Management based on Learning Software Engineering and Middleware (SEM 2005)[END_REF]. Centralized architectures are efficient but have drawbacks suck as inflexibility, scalability, single point of failure, bottleneck. This paper does not intend to compare these architectures but to investigate a decentralized architecture. In any decentralized approach, communications are crucial for schedulers to coordinate properly: communication is the way to obtain additional information from each other scheduler. Generally, it is unrealistic for the schedulers to keep up to date the resource global states continuously. A decentralized approach has to deal with communication explicitly, in particular in dynamic environments when communication incurs a cost or when continuous communications is not feasible. We wish to experiment a system in which the key characteristics are: first, schedulers are decentralized (a scheduler on each node), and second, they share information in order to improve the overall QoS of the system. In this context, each scheduler has to maximize both local and global resource use and has to minimize communication costs. Our main aims are: (i) To reduce the number of exchanged messages between nodes as much as possible; (ii) To improve the performance of the system by decreasing wasted time as much as possible; (iii) Once application is admitted and scheduled, to guarantee the execution as much as possible.

III. CONTEXT AND AIMS

A. Environment

This section describes our environment and our application model. A Node is a separate piece of hardware that has at least one processor as in UML [START_REF]UML[END_REF]. The environment (Fig. 1) is made up of a set of nodes, N 1 , N 2 , N 3 , etc. that are connected to each other via a network. Each node has its own resources (Cpu i , memory i , etc). There are two types of resources: local resources are associated with a node, and managed by a Local Manager (LM) on this node; shared resources such as bandwidth are managed collectively by all Local Managers.

To manage efficiently resources, the middleware must hold a complete description of both available resources in the environment, and resources required for application execution. Since applications and middleware cooperate in the resource management process during execution, a protocol defines how applications communicate with the middleware. For an application to be accepted in the system, an admission step is necessary to check resource availability and to decide whether the application may be executed before its deadline.

B. Resource Management

Resource reservation is required to ensure properties when event arrivals are unpredictable. Using the average load reservation policy, each activity declares an acceptable value of resource need within a period, for instance 25ms of CPU per second. When an activity asks for admission, the middleware accepts or refuses it according to resource availability. This policy assumes that activities organize themselves automatically: wait and synchronization are not managed, which is a major drawback for distributed applications. Planning reservation is a more precise policy. Each activity supplies its worst case resource requirements and its deadline. From these requirements, an exact planning is computed (e.g., [START_REF] Vienne | Modeling Distributed Applications for QoS Management[END_REF], [START_REF] Atkins | Planning and Resource Allocation for Hard Realtime, Fault-Tolerant Plan Execution[END_REF]). Before any activity launching, the admission control checks resource availability. Planning reservation is harder to implement than average load reservation, but it takes into account synchronization, and ensures end-to-end deadline, which is a major property: any admitted activity is guaranteed to execute (to cancel a running task is always expensive [START_REF] Abdelzaher | Performance Guarantees for Web Server End-Systems:A Control-Theoretical Approach[END_REF]). In this paper, we choose the Planning reservation policy.

C. Application Model

To control their behavior, applications are designed especially to be managed by the middleware. An application is viewed as a succession of steps (Fig. 2), and its execution is a path. At the end of step execution, i.e., at each vertex, applications inform their manager and wait an order to resume, implementing a Master/slave paradigm. Each step is associated with resource requirements.

A Scheduling Unit (SU) is a sequence of steps with a deadline. An application is built of one or more SUs. To execute an application is to carry out these different SUs while respecting their deadline. When steps of different parts of a DA communicate, they should be synchronized. For example on Fig. 3, the parts App 11 on N 1 and App 12 on N 2 of an application include a data transfer. When App 11 and App 12 arrive respectively at vertex 1 and 2, called rendezvous points, a synchronization between the steps Transfer and Reception occurs. After the end of the synchronized step, i.e., at vertexes 3 and 4, each part executes separately until the next synchronization or the end of application.

D. Overview of Centralized policies

Our team has carried out several experiments about centralized architectures. Within the centralized policy, one scheduler called Global Manager holds the full description of all applications and of the environment in which applications execute. This unique scheduler tunes and schedules the use of the whole resources (local and global resources) for all the concurrent applications in order to maximize the overall quality of the supplied services. On each node, there is a Local Manager that acts as an intermediary between applications and the unique global scheduler, which is hosted by a particular node. In [START_REF] Vienne | Modeling Distributed Applications for QoS Management[END_REF], the global scheduler uses a heuristic to build a precise planning and orders local scheduler to execute application. In [START_REF] Vienne | A Middleware for Autonomic QoS Management based on Learning Software Engineering and Middleware (SEM 2005)[END_REF], a learning approach is used to control resource use.

IV. THE PROPOSED BORROWING APPROACH

This section gives an overview of the proposed approach to enable resource management. In our decentralized architecture, each node owns a scheduler (called LM) which deals with a partial observation of the system and makes local decision. In the sequel, the use of any resource is represented by its time duration on a time axis. On each node, a LM deals with local and shared resources management. Let N 1 , N 2 , N 3 be nodes with their resources respectively Cpu 1 , Cpu 2 , Cpu 3 and a network symbolized by Net.

Fig. 4 represents the use of resources for each node along an axis of time. It is important to notice that an application has various resource use durations according to node properties such as processor speed. Using a simplistic approach to the problem, each node is associated with local resources, and the LM has a local view of its resources only. Distant resource availability is unknown, i.e., the node N 1 does not know resource availability on N 2 . When a Local Application (LA), i.e., which uses only local resources, arrives, a local view of resources is enough to make a decision about admission. However, when a DA, which uses resources on different nodes, arrives, the LM, which manages resources on each node, admits the application without guarantee about execution, i.e., using a local view of resources only: this is a kind of best-effort policy. In our approach, local and global resource states are available on each node, which aims to guarantee end-to-end execution of applications.

To illustrate our purpose, suppose the following points: • The time is subdivided into periods of length T, and on each node resource use is expressed as a percentage of T; • At the beginning of a period, each LM reserves a part of its resources and loans the remainder to others LMs; • Shared resources are managed in the same way. Fig. 5 depicts resource availability percentage for two successive T assuming an equal percentage of the shared resource Net for each node. Each LM holds a quota of available resources on other nodes in addition to its own resources. To admit a new application, LMs request additional resources when available resources do not meet application requirements.

The novelty of this scheme is to keep locally a view of resource availability within the whole system. Using our approach, LMs construct this view to minimize messages between nodes. The following sections detail this approach. First, it is necessary to define the sense of Loaned resources and borrowed resources as shown on Fig. 6. In a period T, nodes N 1 and N 2 hold resources Cpu 1 and Cpu 2 respectively. On each node, the LM keeps one part of its resources and loans the remainder to other LMs. The resources that each LM distributes to the others are called loaned resources. On the other hand, the resources that each LM receives are called borrowed resources.

A. Static Borrowing and Type of Resources

According to our approach, at each beginning of period resources are associated to each node. We distinguish two types of resources on each node: • Reserved resources are local node resources that each LM reserves for the execution of its applications. When a LA arrives, its required resources must meet the reserved resources of the node to accept admission. On the other hand, when a DA arrives, the required resources of the application local part, i.e., that will be carried out on the local node, must meet the reserved resources. • Borrowed resources are the resources loaned by one LM to the others. They give a local representation of remote resources availability. When a DA arrives, the required resources of the distant parts, i.e., that will be carried out on the remotes nodes, must meet the borrowed resources for each node as well as common resources to be admitted.

Notice that reserved resources are used by both LAs and DAs that arrive on a node, while borrowed resources are used by DAs only. To exchange between nodes the network resource Net is used jointly with other resources since when N 1 needs to transfer data to another node, it uses the resources Cpu 1 and the network Net. Of course, the receiver node also uses CPU resources. These mechanisms induce the following properties for each period T:

• For each resource, the sum of reserved and loaned resources is equal to T; • The sum over all nodes of shared resources is equal to T; • The sum of times of scheduled step resources is lower than or equal to T since there not necessarily always an application to execute;

Each LM can set its loaned and borrowed amount of resources. Each node can specify its own borrowing policy that is made available for all LMs.

The following subsection describes different phases performed by the middleware to manage resources.

B. Admission and execution phases

The proposed middleware uses two phases to manage resources: admission and execution. The admission phase decides whether an application should be admitted into the system after checking available resources. This phase aims to guarantee end-to-end execution. When its admission succeeds, the application is planned and waits order to execute. During the execution phase, on each node the LM selects the next step to execute based on scheduling decisions. At any time and on any node, only one step is running. Thanks to this mechanism, LMs control resources used by applications. To control application execution, the middleware uses different messages:

• From LMs to applications: to start the execution of a step, to load an application, to kill application, etc.

•

From the applications to the LMs: to notify the end of the current step execution and messages related to the arrival such as request for admission.

• From one LM to another LM: to notify application arrival and admission or to synchronize applications.

It is important to notice that in this scheme, the order to execute steps is not known at admission phase since LMs check resource availability only. This order is set at execution phase, when a LM must choose the next step to execute according to the scheduling algorithm. This way, newly admitted applications with their own deadline that force the order are taken into account.

During admission phase, when the available resources are lower than application resource requirements, a LM can request additional resources to achieve admission. The following subsections describe the process.

C. Dynamic borrowing or loan

Dynamic borrowings or loans are invoked by LMs to increase their current quantity of available resources at admission phase. These requests of additional resources belong to one of the following cases:

• When a LA arrives on one node, if there is a lack of reserved resources, the involved LM can request resources it has loaned to other LMs. It can ask to one node or even several when the quantity is significant. This procedure decreases the amount of borrowed resources from some remote nodes; • When a DA arrives on a node, if borrowed resources are insufficient, the involved LM can request resources to increase its borrowed resources and admit the new application. This procedure decreases the available local resources of the requested remote nodes. In this case, the LM can also request resources it has loaned to other LMs.

Suppose that a DA between nodes N 1 and N 2 arrives with resource requirements respectively Cpu 1 and Cpu 2 . N 1 tries to admit the application. If the available amount of Cpu 2 does not match application requirements, N 1 can ask additional Cpu 2 to N 2 . This request can be granted or not by the other LM according to resource availability. Throughout execution, LMs can formulate several requests for the same resource.

D. Borrowings policy evolution

In the precedent sub-section, we explained how an LM obtains additional resource. These processes modify the borrowing policy (i.e., they increase resources of some nodes and decrease those of others). We define here the resource owner as the manager that has lent the resource. Besides, borrowing policy can also change along the time. Two processes are proposed: (i) After a time ∆t (∆t ≤ T) from the beginning of the period, if one LM does not use a borrowed resource, its owner may recovers it after agreement; (ii) After k (k ≥ 1) periods, if one LM does not use a borrowed resource, its owner automatically recovers α percent from this resource where k and α are implementation parameters.

E. Application Deadlines

The middleware manages applications made up of SUs having deadlines. In theory, all deadlines would be accepted but as resources are managed on a per period basis, what to do when deadlines are within the period, e.g. d 4, d 1 and d 3 (Fig. 7)?

Since within a period the execution order is unknown, it is not possible to guarantee deadlines within the period. As a result, any deadline is aligned on periods (Fig. 8): any deadline of application d i is rounded up to aT < d i , with a, an integer and T the period. Any deadline lower than the period such as d 4 on Fig. 7 is rejected.

V. IMPLEMENTATION

A. Choice of Agent technology and platform

To implement a decentralized approach, an agent-based approach provides a suitable design and implementation framework for our purpose. Moreover, the software agents' technology is largely used in complex systems such as resource management in strongly dynamic distributed environments. Within the area of multi-agent systems (MAS), efficiency is a key issue. The efficiency of an agent system relies on both its design and the underlying agent platform. Many agents' platforms exist based on works such as [START_REF] Leszczyna | Evaluation of agent platforms[END_REF] [START_REF] Kalle | Scale-up and performance studies of three agent platforms[END_REF]. We choose JADE, widely known, easy to use, and well documented. The agent design of JADE and its Java implementation offer good runtime efficiency. Each JADE agent holds a collection of behaviors that are scheduled and executed to carry out agent actions. Every JADE agent runs in a Java thread, which satisfies autonomy properties, and all JADE behaviors are executed cooperatively within a single Java thread. For interoperability between agents or a multi-agent system, the JADE platform uses the FIFA specification [23]. Jade provides asynchronous agent communication. The agents are grouped into containers that are independent of each other. Containers can be distributed on several hosts or on a same host, which makes it possible to simulate several nodes or only one node on the same computer. Moreover, JADE provides powerful graphic tools to manage its environment, for example, a Snifter agent to trace the exchanged messages between nodes, and a tool to remotely manage agents (deletion, creation etc.). Finally, the ACL (Agent Communication Language) makes the communications between agents easier.

B. Shared Resource Management

To avoid use conflicts of shared resources such as bandwidth, a token mechanism controls shared resources. The node that holds the token can allocate shared resources to its applications. This pseudo protocol is based on the following points:

• Initially within the system, one node only holds the token, and the other nodes know which node holds the token. • The node that holds the token uses a shared resource without any notice to other nodes. When another node requires shared resources, it should request the token. It sends a message to the node that has the token and waits while executing any other step that does not require shared resources. When the node receives the token, the pending step can use shared resources. • When the token holder receives a request for the token, several cases are possible: i) If the node does not use the token, it releases it to the request sender; ii) If the node is executing a step that requires the token, the request is queued. When the token is free, the node processes the requests according to the FIFO principle.

The queue is sent to the node that requested first the token; iii) If a request arrives after the token transfer, the request is forwarded to the new token holder.

•

A node that receives the token notifies all the other nodes except the previous holder.

According to this scenario, to obtain the token in a system with N nodes, 1 message is sent to request the token, 1 message is sent for the reply, and (N-2) messages are sent to notify the others nodes, which allow updating the address of the new token holder. In total, N messages are necessary to obtain and use the token. Thus, LMs using this pseudo protocol manage shared resources collectively.

C. Scheduling Outlines

To get rid of scheduling complexity, the proposed algorithm is a heuristics based on EDF (Earliest Deadline First) due to its good properties: it is very simple to implement, and when there is a solution to the scheduling problem, EDF leads to this solution. When there is no solution, the result value of EDF scheduling is unknown. Our admission checks aim to reduce failures and in most cases, there is a solution. The planning is modified each time a new event occurs, e.g., admission, arrival of token and end of step. As soon as a node is idle, the next scheduled step starts. Our heuristics guarantees the execution of any admitted application except when there is synchronization as depicted on Fig. 9. This figure shows two DAs on nodes N 1 and N 2 with the schedule of their successive steps S 11 , S 12 , S 13 , S 14 , S 15 and S 21 , S 22 , S 23 respectively, and their deadline d 1 and d 2 respectively. The gray steps S 12 and S 22 use a shared resource. The others steps use local resources only. These two applications need to synchronize their steps S 12 and S 22 with others nodes that are not represented Fig. 9 for sake of simplicity. The Net axis shows the use time of the shared resource for the two nodes. At time t 1 , N 1 requests the token and obtains it for the step S 12 . While N 1 uses the token, N 2 in turn requests the token at time t 2 and waits for it. N 1 releases the token at time t 3 and N 2 obtains the token, assuming that it is the first in the queue. In any case, N 2 will not execute the steps S 23 before the deadline d 2 . This situation is a consequence of our admission checks: to admit applications on a per period basis does not ensure the order of execution in one period. Generally, this situation occurs when the system is loaded, which increase the synchronized steps with close deadlines.

D. Implementation choices

Some implementation choices are considered:

• Each LM manages a queue of pending applications. Admission occurs at the beginning of each period. When there is no raining step, admission may occur inside the period; • Regarding DAs, the node that has registered the first part of the DA manages the admission; • As DAs have parts on several nodes, the node managing the admission notifies about admission result the nodes having the other applications parts. This procedure allows planning application loading as soon as possible. • Each LM executes steps according to its scheduling.

When the step is synchronized, a message to plan synchronization is sent to the LM that has the corresponding synchronized step. • Any application whose admission does not succeed is rejected. • Steps using shared resources have a higher priority than step using local resource only. Shared resources are regarded as very scarce. • When a step has started, its execution continues until the end except when a synchronization message arrives. In this case, the current step is preempted until the end of synchronization.

VI. RESULTS

To illustrate our purpose, several simulations have been done. On each node, there are a Generator Agent (GA) and a LM agent. The GA creates applications according to an arrival law (see subsection B). The LM implements our borrowing scheme: it deals with application admission and controls application execution. Each generated application sends a message to the LM to notify its arrival. The LM registers the application and its description, getting information (deadline, resource requirements, etc.) back from the description file. Admission of DAs start only when all theirs parts are arrived and are registered on all nodes, whereas admission of LAs start as soon as the application arrives and is registered. Once admitted, the application waits order to execute while the LM schedules the steps of the admitted SU. When a DA is running, each application part runs on its node. For example in a data transfer application, a part reads and sends data, while the second part receives and displays it. Applications are integrated into the agent architecture: one agent class implements behaviors of LA, while several agents' class implement DAs' ones. Thus, the middleware creates and manages agents, which represent applications. JADE allows creating a container for each node. Each container manages several agents.

A. Experimental conditions

For each LM, a description of the environment and all the applications is available. The results below were measured under the following conditions: (i) The deadline of each generated application is set to 2*SW + random [1..2*SW], with SW = Sum of WCET (Worse Case Execution Time) of the application steps (path in the graph); (ii) The execution time of each step, is set to 2*WCET/3 + random [0..WCET/3]; (iii) The arrival law of applications is simulated by the random time random [0..C], where C is a positive number: the more C is small, the more applications arrive frequently and the more the system load increases; (iv) WCETs of applications' steps are defined in such a way that the sum of WCETs of all DAs is three time longer than the sum of WCETs of all LAs.

B. Measures

Fig. 10 compares our approach and the best-effort policy. Results show the CPU utilization and the CPU wasted due to applications that are killed when they do not meet their deadline. In the proposed approach, the percentage of used CPU is not equal to 100% because the admission phase rejects applications whose requirements do not match resource availability. The wasted time is due to applications that were admitted but finally were killed as in Fig. 9. The best-effort policy admits all the applications, which explains that the used CPU is greater but also that more applications are killed resulting in a larger wasted time than in our approach. CPU use reaches some maximum in both approaches.

Fig. 11 shows the effective use of CPU for both approaches. The effective use is measured as CPU use less wasted time.

The effective use of CPU is lower using the best-effort policy, because many applications are killed before their end, as soon as they violate their deadline, and any time spent to execute an application that will be killed is wasted. It is possible to reduce wasted time in our approach by applying strong admission checks which reduce the number of admitted and killed applications, but reduce also CPU effective use. Fig. 12 shows the number of admitted DAs and the number of exchanged messages according to the number of nodes with and without dynamic borrowing, i.e., process to ask additional resource at admission time. Dynamic borrowing increases the number of exchanged messages but also the number of admitted DAs. This result was expected because dynamic borrowings concern only DAs, hence favors the admissions of DAs. Since dynamic borrowing increases message cost, we could imagine mechanisms of automatic release of resources, i.e., at the beginning of each period, if a node does not use some resources, it might release them but no release is implemented in this experiment.

Fig. 13 illustrates the influence of the percentage of borrowed resources in our approach for a load of 60% and for three nodes. The use of dynamic borrowing increases the number of admitted DAs, hence the total number of admitted applications (LAs and DAs). The percentage of borrowing resources of x% means that each LM loans x% of its resources to each other LM and keeps the remaining. When this percentage increases, borrowing resources increase while reserved resources decreases. Fig. 13 also shows that when the percentage of borrowings reaches 40%, there are less admitted applications. That is explained by the fact that, the amount of remaining resources (reserved resources) is too small to admit both LAs and local parts of DAs, and requests for additional resources (dynamic borrowing process) are sent when the reserved resources are sufficient only.

These results show that, when procedures of dynamic borrowing are implemented, the percentages of resource borrowing must be judiciously chosen. When this percentage is too much (40% for example on Fig. 13) or too less (5% for example on Fig. 14), less applications are admitted. But, when the percentage is reasonable (between 15 and 25% on Fig. 13), the probability to admit applications increases. Furthermore, if DAs are scarce into the system when LAs are frequent, the percentage of borrowings resource must be very low to avoid an important number of rejected LAs during admission because the LAs use reserved resources only and these resources increase when the borrowings decrease. In practice, it is not convenient that the LM loans a great part of its resources to the others and reserves a small part.

VII. RELATED WORKS

Recent works tackle the problem of coordination of multiagent system in an uncertain environment while aiming to avoid wasting resources by minimizing the number of communications [START_REF] Maayan | Decentralized communication strategies for coordinated multi-agent policies[END_REF], [START_REF] Bernstein | The complexity of decentralized control of Markov Decision Processes[END_REF], [START_REF] Pynadath | The communicative Multiagent Team Decision Problem: Analyzing teamwork theories and models[END_REF]. The approach in [START_REF] Maayan | Decentralized communication strategies for coordinated multi-agent policies[END_REF], for example, maintains agent coordination at run-time and chooses

System Load Useful Time

Useful Time Our Approach Useful Time Best-effort Figure 13. Admitted applications according to borrowings percentages to communicate only when there is a perceived benefit to team performance. This approach based on POMDPs (Partially Observable Markov Decision Problems decision) manipulates concepts such as state, action, transition, observation or believe in an uncertain environment and is difficult to implement. Our approach implements an easy to use borrowing system to manage resources. For distributed systems, [START_REF] Logie | Sliding Window Distributed Combinatorial Scheduling using JADE; Systems, Man and Cybernetics[END_REF] proposes a fully decentralized approach, with a job-shop scheduling based on a distributed combinatorial scheduling technique, to accommodate a large number of tasks with reduced messaging requirements. The developed approach relates to the deterministic systems whereas in our approach, we face the applications whose arrival law is unknown. [START_REF] Claudia | Optimizing information exchange in cooperative multi-agent systems[END_REF] Addresses the problem of communication costs for a decentralized control in a multi-agents system. A formal model is presented using an extension of POMDPs and cooperative agents are able to share information at the off-line planning stage as if they were centrally controlled and were acting in real-time in a decentralized manner. In our approach, although the managed applications are fully described, the decisions are taken in realtime and in a decentralized way since no information about application is known before its arrival. The approach in [START_REF] Mona | A Rate-Based Borrowing Scheme for QoS Provisioning in Multimedia Wireless Networks[END_REF] uses also a borrowing technique to support real-time interactive multimedia in the domain of wireless networks and mobile. [START_REF] Stumm | Strategies for Decentralized Resource Management[END_REF] proposes a decentralized solution to monitoring hosts in a distributed system using multicasting facilities. Although multicast is an interesting alternative for dynamic borrowing requests, for example to ask a group of nodes some additional resources, as a drawback one multicast message generally induces several answers, which are not always beneficial for the whole system.

VIII. CONCLUSION

We have developed a decentralized approach aiming to manage QoS of distributed applications. Our main contribution is a borrowing scheme for resource management to execute applications while controlling resources. Using borrowing mechanisms, Local Managers construct and keep locally a view of local and remote resource availability to control admission of distributed applications. Our simulation shows that the effective use of the CPU is lower using the best-effort policy than our approach. Besides, dynamic borrowing increases the number of admitted applications. Our future works will deal with adaptation of distributed applications and will improve this approach simulating a variable period T. Further, some extensions such as grids and/or hierarchical system will be investigated.

Figure 2

 2 Figure 2. Application Model

Figure 4 Figure 5 .Figure 6 .

 456 Figure 4. Resource use

Figure 7 .

 7 Figure 8. Deadlines alignment

Figure 9

 9 Figure 9. Conflict synchronization

Figure 12 .

 12 Figure 12. Messages and admissions function of nodes


Etienne Balmes

Mathieu Corus

Stéphane Baumhauer

Pierrick Jean

Jean-Pierre Lombard

Sdtools

Constrained viscoelastic damping, test/analysis correlation on an aircraft engine

Constrained viscoelastic damping treatments are fairly common in many applications but have not been industrially applied to aerospace engines. New engine designs tend to use BLISK (integrally bladed disks) machined from a single part and thus showing less friction damping than earlier designs. Constrained viscoelastic treatments are considered as a possible technology to enhance damping. The paper presents results of a modal test performed in an environmental chamber to highlight temperature sensitivity effects which are characteristic of viscoelastic treatments. In a second part the computational methodology used for simulations is presented. Meshing, model reduction and post-treatment issues will be addressed. The significant challenge is this problem is the computation of accurate strain levels in the viscoelastic layer for a large model with different symmetry for the disk and the constraining layer. Test analysis correlation at various temperatures will be presented showing good correlation for both the overall levels and the prediction of the influence of temperature.

INTRODUCTION

In turbomachines have traditionally relied on friction in the blade roots to achieve sufficient damping levels in the rotors. With the extension of BLISK (integrally bladed disks) machined from a single part, interfaces between parts are now limited to stage connections and no longer induce sufficient damping. Friction joints remains the main damping treatment technology for BLISK, but has its limitations and trade-offs. Constrained viscoelastic treatments are well known to induce significant levels of damping [START_REF] Nashif | Vibration Damping[END_REF][START_REF] Rao | Recent Applications of Viscoelastic Damping for Noise Control in Automobiles and Commercial Airplanes[END_REF] . They have been used in a wide range of industrial applications for decades. The principle proposed in [START_REF] Dupeux | Movable Impeller for a Turbojet and Turbojet comprising same[END_REF] is an adaptation of the concept using the flexibility of the inter-stage rims. Figure 1 shows radial deformation for two sample modes. It clearly appears that rim bending occurs in the axial direction (first mode shown) and/or tangential direction (second mode). Constrained layer damping can thus be considered as a damping mechanism.

The work presented here considers the base design shown in figure 2. The titanium BLISK has 36 blades and the carbon/epoxy constraining layer is cut in 4 segments. The two axial segments of the constraining layer correspond to developable surfaces, which eased manufacturing. The shaft thickness is close to 2 mm, the constraining layer 1 mm and the viscoelastic material 0.2mm. The localization of the constraining layer within the main shaft, avoids any interaction with the air flow and imposes very little shear in the constrained layer thus limiting the risk of delamination. In this design, the shaft and constraining layer shapes were only optimized in thickness but other shape optimisation can clearly enhance performance. Section 1 discusses results of the experimental modal test that was performed at 3 temperatures to illustrate damping sensitivity to temperature. Section 2 presents the finite element model considered for simulations and briefly outlines computational methodologies needed to deal with a potentially huge problem: 950 000 nodes, 220 modes and in the full model that needs to account for the frequency/temperature dependence of the viscoelastic material. The viscoelastic material, SMACTANE 50, was selected to demonstrate the design (but is not suitable for actual engine operation). Correct prediction of the drop in damping associated with temperature increase, shown in section 2.2, was used to validate the model. Throughout the paper, frequencies and damping ratio are shown in an adimensional unit system to preserve confidentiality of the prototype details.

MODAL ANALYSIS OF A DEMONSTRATOR 1.Experimental setup and modal results

Measurements were performed at Ecole Centrale Paris (MSSMat). Input loads were measured with a B&K load cell and velocities with a Polytec vibrometer. Data acquisition was performed using an LDS Dactron portable analyser. Handling of measurements was performed using a prototype data acquisition environment based on the MATLAB and SDT [START_REF] Balmes | Structural Dynamics Toolbox 6.2 (for use with MATLAB)[END_REF] environment.

Tests were performed within an environmental chamber thus allowing a fairly precise control of the temperature. Temperature stabilization was obtained by waiting several hours and an automated procedure for measurement rejection during fan operation was introduced. In the future, automated measurement quality assessment would be very much needed to perform long acquisitions more reliably.

Obtaining a clean input implied many attempts. The structure is very lightly damped and one seeks to excite a band of several kHz. The configuration eventually retained, and shown in figure 3, is a load cell impact generated using a soft pulse in an electrodynamic shaker. The final configuration used a load cell aligned with the shaker axis, horizontal offsets allowed dynamic amplification but gave lesser quality measurements.

To avoid damping induced by exponential windows typically used for impact tests, the measurements were not windowed at all. This absence of windowing deteriorates estimated transfers away from resonances, so that identification should only be performed using data around resonances. Outside problems with the harmonics of 50 Hz, measurements are rather clean at 25 C and less so at other temperatures. The frequency resolution considered in the test was quite high (45 000 points), but this is still insufficient to properly separate all modes. Figure 5left thus shows two isolated modes (with frequencies indicated as vertical lines) at the beginning of accumulation and a large number of peaks with only a few properly identified. The associated damping estimates should thus be taken with caution. The existence of a consistent lower limit on damping within the accumulations seems however to correspond to the expected material damping (mostly due to thermoelastic effects in this case). For modes outside the accumulations, the identification is not necessarily much easier as most modes are nearly but not exactly double. The excitation configuration retained does favor 0 diameter modes, so that almost all the significant peaks correspond to double modes. Figure 5right illustrates a particular resonance, where careful inspection clearly shows two modes. The local relative error on the Nyquist [START_REF] Balmes | Methods for vibration design and validation[END_REF] shown at the bottom indicates a very accurate identification for which non-linear optimization of the pole locations [START_REF] Balmes | Frequency domain identification of structural dynamics using the pole/residue parametrization[END_REF] was necessary.

Figure 6 displays a few global deformations. Figure 7 shows the influence of temperature on response levels. As expected for the selected material, performance drops very significantly as temperature increases. Measurement problems (changes in impact location laser direction due to sag of the suspension at higher temperatures) don't really allow proper quantitative 4 comparison of transfers, the correlation will thus be based on predicted modal damping levels. Global damping results will be shown with FEM predictions in 2.2. The fundamental mechanism of constrained viscoelastic damping is shear in the constrained layer. To obtain such predictions the sheared layer must be modeled using volume elements. While for automotive applications a shell/volume/shell layup is classical [START_REF] Plouin | A test validated model of plates with constrained viscoelastic materials[END_REF][START_REF] Balmes | Viscoelastic vibration toolbox, User Manual[END_REF] , typical engine models use volumes. The models considered in this project, thus introduce a volume mesh for each layer with linear or quadratic element formulations depending on the choice made for the main structural FEM.

To predict shear levels getting the geometry right is critical. In particular offsets with respect to the neutral fiber need to be precise. As the thickness of the layer can be very small (0.2 mm here), the accuracy on node positions needed for proper predictions is much higher than typically found in FEM input files (often ten digits or less). This problem is illustrated in figure 8 where the initial mesh shows a significant fluctuation of energy at inter-sector boundaries and the corrected mesh does not (a slight variation to blade locations is expected and found). To obtain accurate predictions, one uses the multi-stage cyclic symmetry method introduced in [START_REF] Sternchüss | Reduction of Multistage disk models : application to an industrial rotor[END_REF][START_REF] Sternchüss | Multi-level parametric reduced models of rotating bladed disk assemblies[END_REF] and industrialized in the SDT Rotor [START_REF] Balmes | Rotor module for SDT, User Manual[END_REF] module.

On first computes mono-harmonic solutions for target diameters. 0,1,2 and 8 diameter modes for high and low values of the viscoelastic modulus are first computed (each computation takes about 15 mn CPU). The resulting vector set contains 473 vectors in the bandwidth of interest. The iterative maximum sequence procedure is then used to generate bases for each of the 3 stages considered in the model (the base sector with 36 blades and 276 independent vectors, the lower and upper constraining layers with 4 segments and 90 and 42 vectors respectively).

From these reduced sector models, one can assemble a reduced 3D model with 34485 DOFs (of whom 80 % are internal DOFs of the second order elements in the viscoelastic layer). Figure 9 illustrates typical restitution two modes. To get a feel of the displacement shape, a coarse outline of the shaft and blades is showing all blades. To analyze energy dissipation, strain energy density in the constrained viscoelastic layer is then displayed. For correlation, one then needs to account for the frequency and temperature dependence of the material modulus and loss factor shown in figure10. To achieve such predictions in a reasonable time, a multi-model reduction approach, implemented in the SDT Visco module [START_REF] Balmes | Viscoelastic vibration toolbox, User Manual[END_REF] , is used. 250 modes of the reduced shaft model are computed for low and high modulus values and the model is reduced on the associated subspace. Poles are then computed for a range of complex moduli and interpolation is used to give precise damping estimates.

Correlation of modal damping ratio

Figure 11 shows, using the same scale, measured and predicted damping ratio as a function of temperature. Understanding the level of correlation requires significant comments.

The blade modes are clearly visible as drops in the damping levels (and vertical lines in the computation). In the model, titanium is taken to have no material damping at all, so predicted damping drops to extremely low levels as almost all the energy is concentrated in the blades. In the test, estimating damping for those modes is very difficult due to strong modal overlap. A low value near 0.3 damping units does however exist and is expected due to thermoelastic material damping.

Between the accumulations associated with blade modes, the shaft undergoes significant deformation and is thus damped by the constrained viscoelastic layer. Each correlation should be considered in detail. The first experimental mode (a 2 diameter global bending) underestimates damping. Damping for this mode is essentially located in the constrained layer just below the inter-stage rim. The model does not account for segmentation of the rim and is thus too stiff and lightly damped. In the 550 to 620 frequency unit range damping is under-predicted with no clear explanation. The first modes of the accumulation are extremely close in level. In the [630-670] range the coincidence is very good. In the 670 to 730 the test starts to pose problem with only the lightly damped modes showing (two more significantly damped modes could be found in the 25 C test but not clearly at other temperatures). The sensitivity to temperature is very consistently predicted with the expected trend of performance decreasing with temperature.

CONCLUSION

A basic design of constrained viscoelastic treatment was tested on a BLISK. The results clearly show that, outside narrow accumulation frequencies corresponding to blade modes, damping is significantly enhanced by the treatment. Overall damping levels and trends when the viscoelastic material properties are affected by temperature correlate well between test and analysis. Current work on the concept focuses on selecting materials adapted to real engine temperatures, extending design methodologies to optimize treatments and demonstrations in operational conditions.

Figure 1 :

 1 Figure 1: Sample modes with axial and tangential bending of the rim

Figure 2 :

 2 Figure 2: Sector of bladed disk, and sector of damping treatment

Figure 3 :

 3 Figure 3: General view of measurement points. Excitations configuration #1.

Figure 4 :

 4 Figure 4: CMIF of test at 25C

Figure 5 :

 5 Figure 5: Sample transfers around a blade mode (left) and an isolated mode with split resonance.

Figure 6 :

 6 Figure 6: A few modal deformations.

Figure 7 :

 7 Figure 7: Blade tip response as a function of temperature. Full range and zoom

Figure 8 :

 8 Figure 8: Variation in strain energy in the viscoelastic layer. Left : initial tetrahedral mesh, Right : corrected geometry with perfect revolution and hexahedral elements obtained by revolution. (The two different configurations shown differ from the prototype built)

Figure 9 :

 9 Figure 9: Displacement viewed on a coarse outline of the BLISK and strain energy in the viscoelastic layer.

Figure 10 :

 10 Figure 10: Modulus and loss factor variation for SMACTANE 50 in the target frequency range.

Figure 11 :

 11 Figure 11: Experimental (top) and computed (bottom) frequencies and damping ratio at 5, 25 et 45 C