Anne Benoit

Valentin Le Fèvre

Lucas Perotin

Padma Raghavan

Yves Robert

Hongyang Sun

Resilient Scheduling of Moldable Jobs on Failure-Prone Platforms

niveau recherche, publiés ou non, émanant des établissements d'enseignement et de recherche français ou étrangers, des laboratoires publics ou privés.

Introduction

In the scheduling literature, a moldable job is a parallel job that can be executed on an arbitrary number of processors, but whose execution time depends on the number of processors allotted to it. More precisely, a moldable job allows a variable set of resources for scheduling but requires a fixed set of resources to execute, which the job scheduler must allocate before it starts the job: this corresponds to a variable static resource allocation, as opposed to a fixed static allocation (rigid jobs) and a variable dynamic allocation (malleable jobs) [START_REF] Feitelson | Toward convergence in job schedulers for parallel supercomputers[END_REF]. Moldable jobs can easily adapt to the amount of available resources, contrarily to rigid jobs, while being easy to design and implement, contrarily to malleable jobs. In fact, most computational kernels in scientific libraries are provided as moldable jobs that can be deployed on a wide range of processor numbers 1 .

Because of the importance and wide availability of moldable jobs, scheduling algorithms for such jobs have been extensively studied. An important objective is to minimize the overall completion time, or makespan, for a set of jobs that are either all known before execution (offline setting) or released on-the-fly (online setting). Many prior works have published approximation algorithms or inapproximability results for both settings. These results notably depend upon the speedup model of the jobs. Indeed, consider a job whose execution time is t(p) with p processors, where 1 ≤ p ≤ P ; here P denotes the total number of processors on the platform. An arbitrary speedup model allows t(p) to take any value, but realistic models call for t(p) non-increasing with p: after all, if t(p + 1) > t(p), then why use that extra p + 1-st processor? Several speedup models have been introduced and analyzed, including the roofline model, the communication model, the Amdahl's model, and the (more general) monotonic model, where the area p • t(p) is non-decreasing with p. Section 2 presents a survey of the most important results for all these models.

In this paper, we revisit the problem of scheduling moldable jobs in a resilience framework. Unlike the classical problem without job failures, we consider failure-prone jobs that may need to be re-executed several times before successful completion. This is primarily motivated by the threat of silent errors (a.k.a. silent data corruptions or SDCs), which strike large-scale high-performance computing (HPC) platforms at a rate proportional to the number of floating-point (CPU) operations and/or the memory footprint of the applications (bit flips) [START_REF] O'gorman | The effect of cosmic rays on the soft error rate of a DRAM at ground level[END_REF][START_REF] Ziegler | Cosmic ray soft error rates of 16-Mb DRAM memory chips[END_REF]. When a silent error strikes, even though any bit can be corrupted, the execution continues (unlike fail-stop errors), hence the error is transient, but it may dramatically impact the result of a running application. Coping with silent errors represent a major challenge on today's HPC platforms [START_REF] Snir | Addressing failures in exascale computing[END_REF] and it will become even more important at exascale [START_REF] Herault | Fault-Tolerance Techniques for High-Performance Computing, Computer Communications and Networks[END_REF]. Fortunately, many silent errors can be accurately detected by verifying the integrity of data using dedicated, lightweight detectors (e.g., [START_REF] Chen | LADR: Low-cost application-level detector for reducing silent output corruptions[END_REF][START_REF] Chen | Online-ABFT: An online algorithm based fault tolerance scheme for soft error detection in iterative methods[END_REF][START_REF] Guhur | Lightweight and accurate silent data corruption detection in ordinary differential equation solvers[END_REF][START_REF] Wu | Fault tolerant matrix-matrix multiplication: Correcting soft errors online[END_REF]). When considering job failures caused by silent errors, we assume the availability of ad-hoc detectors to detect such errors.

Although the primary motivation is to deal with silent errors, this work is agnostic of the type and characteristics of the errors experienced by the jobs. Instead, we focus on a general setting, where we aim at scheduling a set of moldable jobs subject to a failure scenario that specifies the number of failures for each job before successful completion. The failure scenario is, however, not known a priori, but only discovered as failed executions manifest themselves when the jobs complete. Hence, the scheduling decisions must be made dynamically on-the-fly: whenever an error has been detected, the job must be re-executed. As a result, even for the same set of jobs, different schedules may be produced, depending on the failure scenario that occurred in a particular execution. Intuitively, the problem is half-way between an offline problem (where all the jobs are known before the execution starts) and an online problem (where the jobs are revealed on-the-fly). The goal is to minimize the makespan for any set of jobs under any failure scenario. More precisely, we aim at designing approximation algorithms that guarantee a makespan within a small factor of the optimal makespan, independently of the job profiles and their failure scenarios.

While scheduling moldable jobs in a failure-free setting is already a difficult problem, this work lays the foundation for the theoretical and practical study of scheduling moldable jobs on failure-prone platforms. The key contributions are the design and analysis of two algorithms (one list-based and one batch-based) with new approximation results for various speedup models. We further show that these algorithms achieve very good performance in practice using an extensive set of simulations. Our main contributions are the following:

• We present a formal model for the problem of resilient scheduling of moldable jobs on failure-prone platforms. The model formulates both the worst-case and expected performance of an algorithm for general speedup models and under arbitrary failure scenarios. • We design a list-based scheduling algorithm, and prove new O(1)approximation results for three prominent speedup models, namely the roofline model, the communication model, and the Amdahl's model.

For the communication model, our approximation ratio improves upon that of the literature for failure-free jobs. • We design a batch-based scheduling algorithm, where each job is allowed a restricted number of failures per batch (and is re-executed in the following batch if still not successful). We prove that the algorithm achieves O(log 2 f max )-approximation for the arbitrary speedup model, where f max denotes the maximum number of failures of any job in a failure scenario. • We conduct an extensive set of simulations to evaluate and compare different variants of the two proposed algorithms. The results show that they consistently outperform some baseline heuristics. In particular, the list algorithm performs better for the roofline and communication models, while the batch algorithm has better performance for the Amdahl's model. Overall, our best algorithm is within a factor of 1.47 of a lower bound on average and within a factor of 1.8 in the worst case. The rest of this paper is organized as follows. Section 2 reviews some related work. The formal model and problem statement are presented in Section 3. Section 4 describes the two algorithms and analyzes their approximation ratios. Section 5 presents an extensive set of simulation results and highlights the main findings. Finally, Section 6 concludes the paper and discusses future directions.

Related Work

In this section, we review some related work on scheduling moldable jobs, and highlight the difference between existing scheduling models and the one considered in this paper.

Offline Scheduling of Independent Moldable Jobs

In the offline problem, all jobs are known a priori, along with the execution time t(p) of each job as a function of the processor allocation p. The following surveys some results in the failure-free setting under various job speedup models (the definitions of which can be found in Section 3.1).

Roofline Model

Some authors have considered this model for moldable jobs with precedence constraints (see Section 2.3). We are not aware of any results for independent moldable jobs. In this paper, we present a 2-approximation algorithm for this model when jobs are subject to failures.

Communication Model

Havill and Mao [START_REF] Havill | Competitive online scheduling of perfectly malleable jobs with setup times[END_REF] presented a shortest execution time (Set) algorithm, which allocates processors to minimize each job's execution time and then schedules it as early as possible. They showed that Set has an approximation ratio around 4. Dutton and Mao [START_REF] Dutton | Online scheduling of malleable parallel jobs[END_REF] presented an earliest completion time (Ect) algorithm, which allocates processors for each job that minimizes its completion time based on the current schedule. They proved tight approximation ratios of Ect for P ≤ 4 processors and presented a general lower bound of 2.3 for arbitrary P .

Monotonic Model

Belkhale and Banerjee [START_REF] Belkhale | An approximate algorithm for the partitionable independent task scheduling problem[END_REF] presented a 2/(1 + 1/P )-approximation algorithm by starting from a sequential schedule and then iteratively incrementing the processor allocations. B lażewicz et al. [START_REF] Blazewicz | Approximation algorithms for scheduling independent malleable tasks[END_REF] presented a 2-approximation algorithm while relying on an optimal continuous schedule. Mounié et al. [START_REF] Mounié | Efficient approximation algorithms for scheduling malleable tasks[END_REF] presented a ( √ 3 + )-approximation algorithm with a two-phase approach and dual approximation. Using the same techniques, they later improved the approximation ratio to 1.5 + [START_REF] Mounié | A 3/2-approximation algorithm for scheduling independent monotonic malleable tasks[END_REF]. Jansen and Land [START_REF] Jansen | Scheduling monotone moldable jobs in linear time[END_REF] showed the same 1.5 + ratio but with a lower runtime complexity as well as a PTAS, when the execution time functions of the jobs admit certain compact encodings.

Arbitrary Model

Turek et al. [START_REF] Turek | Approximate algorithms scheduling parallelizable tasks[END_REF] presented a 2-approximation list-based algorithm and a 3-approximation shelf-based algorithm. Ludwig and Tiwari [START_REF] Ludwig | Scheduling malleable and nonmalleable parallel tasks[END_REF] improved the 2-approximation result with lower runtime complexity. When each job admits a subset of all possible processor allocations, Jansen [START_REF] Jansen | A (3/2+ ) approximation algorithm for scheduling moldable and non-moldable parallel tasks[END_REF] presented a (1.5 + )-approximation algorithm, which is the strongest result possible for any polynomial-time algorithm, since the problem does not admit an approximation ratio better than 1.5 unless P = N P [START_REF] Johannes | Scheduling parallel jobs to minimize the makespan[END_REF].

Online Scheduling of Independent Moldable Jobs

In an online problem, jobs are released one by one and each released job must be scheduled irrevocably before the next job is revealed. Some algorithms discussed above (e.g., [START_REF] Dutton | Online scheduling of malleable parallel jobs[END_REF][START_REF] Havill | Competitive online scheduling of perfectly malleable jobs with setup times[END_REF]) make scheduling decisions independently for each job, so their results are directly applicable to this setting with the corresponding competitive ratios. For arbitrary speedup models, Ye et al. [START_REF] Ye | Online scheduling of moldable parallel tasks[END_REF] presented a general technique to transform any ρ-bounded algorithm2 for rigid jobs to a 4ρ-competitive algorithm for moldable jobs. Relying on a 6.66bounded algorithm for rigid jobs [START_REF] Hurink | Online algorithm for parallel job scheduling and strip packing[END_REF][START_REF] Ye | A note on online strip packing[END_REF], they then gave a 26.65-competitive algorithm for moldable jobs. Both algorithms are based on building shelves. They also provided an improved algorithm with a competitive ratio of 16.74 [START_REF] Ye | Online scheduling of moldable parallel tasks[END_REF].

Our scheduling problem can be considered as semi-online, since all jobs are known offline but their failure scenarios are revealed online. Note that the transformation technique in [START_REF] Ye | Online scheduling of moldable parallel tasks[END_REF] does not apply here, since it assumes the independence of all jobs, whereas the different executions of a job in our problem (due to failures) have linear dependence.

Scheduling Moldable Jobs with Precedence Constraints

Some authors have also studied the problem of scheduling moldable jobs subject to a precedence constraint that is modeled as a directed acyclic graph (DAG).

For the roofline model, Wang and Cheng [START_REF] Wang | A heuristic of scheduling parallel tasks and its analysis[END_REF] showed that the earliest completion time (Ect) algorithm is a (3 -2/P )-approximation. Feldmann et al. [START_REF] Feldmann | Optimal on-line scheduling of parallel jobs with dependencies[END_REF] proposed an online algorithm for the same model, and showed that it achieves 2.618-competitive even when the job execution times and the DAG structure are unknown. For the more general monotonic model, various constant approximation results have also been obtained (e.g., [START_REF] Belkhale | A scheduling algorithm for parallelizable dependent tasks[END_REF][START_REF] Chen | An improved approximation for scheduling malleable tasks with precedence constraints via iterative method[END_REF][START_REF] Chen | A 3.42-approximation algorithm for scheduling malleable tasks under precedence constraints[END_REF][START_REF] Jansen | Scheduling malleable tasks with precedence constraints[END_REF][START_REF] Jansen | An approximation algorithm for scheduling malleable tasks under general precedence constraints[END_REF][START_REF] Lepère | Approximation algorithms for scheduling malleable tasks under precedence constraints[END_REF]) under different assumptions on the speedup function and the DAG structures.

In our scheduling problem, the jobs can be considered to form multiple linear chains, where each chain represents a job and the number of nodes in a chain represents the number of executions for the corresponding job. However, the failure scenario (thus the complete graph) is not known a priori, which prevents the above algorithms (except the ones in [START_REF] Feldmann | Optimal on-line scheduling of parallel jobs with dependencies[END_REF][START_REF] Wang | A heuristic of scheduling parallel tasks and its analysis[END_REF]) from being directly applicable, since they all rely on knowing the complete graph in advance.

Models

In this section, we introduce the job, speedup and failure models, and formally state the resilient scheduling problem.

Job and Speedup Model

We consider a set J = {J 1 , J 2 , . . . , J n } of n parallel jobs to be executed on a platform consisting of P identical processors. All jobs are released at the same time, corresponding to the batch scheduling scenario in an HPC environment. We focus on moldable jobs, which can be executed using any number of processors at launch time. The number of processors allocated cannot be changed once a job has started executing. For each job J j ∈ J , let t j (p j ) denote its execution time when allocated p j ∈ {1, 2, . . . , P } processors, and the area of the job is defined as a j (p j ) = p j • t j (p j ).

Let w j denote the total work of job J j (or its sequential execution time t j (1)). The parallel execution time t j (p j ) of the job when allocated p j processors depends on the speedup model. We consider several speedup models:

• Roofline model: linear speedup up to a bounded degree of parallelism pj , i.e., t j (p j ) = w j /p j for p j ≤ pj and t j (p j ) = w j /p j for p j > pj ; • Communication model: there is a communication overhead c j per processor when more than one processor is used, i.e., t j (p j ) = w j /p j + (p j -1)c j ; • Monotonic model: the execution time (resp. area) is a non-increasing (resp. non-decreasing) function of the number of allocated processors, i.e., t j (p j ) ≥ t j (p j + 1) and a j (p j ) ≤ a j (p j + 1); • Amdahl's model: this is a particular case of the monotonic model with t j (p j ) = w j 1-γ j p j + γ j , where γ j denotes the inherently sequential fraction of the job; • Arbitrary model: there are no constraints on t j (p j ).

Failure Model

We consider silent errors (or SDCs) that could cause a job to produce erroneous results after an execution attempt. Further, we assume that such errors can be detected using lightweight detectors with negligible overhead at the end of an execution. In that case, the job needs to be re-executed followed by another error detection. This process repeats until the job completes successfully without errors.

Let f = (f 1 , f 2 , . . . , f n ) denote a failure scenario, i.e., a vector of the number of failed execution attempts for all jobs, during a particular execution of the job set J . Note that the number of times a job will fail is unknown to the scheduler a priori, and the failure scenario f becomes known only after all jobs have successfully completed without errors.

Problem Statement

We study the following resilient scheduling problem: Given a set of n moldable jobs, find a schedule on P identical processors under any failure scenario f . In this context, a schedule is defined by the following two decisions:

• Processor allocation: a collection p = ( p 1 , p 2 , . . . , p n ) of processor allocation vectors for all jobs, where vector p j = (p

(1) j , p (2)
j , . . . , p

(f j +1) j
) specifies the number of processors allocated to job J j at different execution attempts until success. Note that processor allocation can change for each new execution attempt of a job.

• Starting time: a collection s = ( s 1 , s 2 , . . . , s n ) of starting time vectors for all jobs, where vector s j = (s

(1) j , s (2)
j , . . . , s

(f j +1) j
) specifies the starting times for job J j at different execution attempts until success.

The objective is to minimize the overall completion time of all jobs, or makespan, under any failure scenario. Suppose an algorithm makes decisions p and s for a job set J under a failure scenario f . Then, the makespan of the algorithm for this scenario is defined as:

T (J , f , p, s) = max 1≤j≤n s (f j +1) j + t j (p (f j +1) j
) .

(

) 1
Both scheduling decisions should be made with the following two constraints: (1) the number of processors used at any time should not exceed the total number P of available processors; (2) a job cannot be re-executed if its previous execution attempt has not yet been completed.

As the problem generalizes the failure-free moldable job scheduling problem, which is known to be N P-complete for P ≥ 5 processors [START_REF] Du | Complexity of scheduling parallel task systems[END_REF], the resilient scheduling problem is also N P-complete. We therefore consider approximation algorithms. An algorithm Alg is said to be r-approximation if its makespan is at most r times that of an optimal scheduler for any job set J under any failure scenario f :

T Alg (J , f , p, s) ≤ r • T Opt (J , f , p * , s * ) , (2)
where T Opt (J , f , p * , s * ) denotes the makespan produced by an optimal scheduler with scheduling decisions p * and s * .

Expected Makespan

The problem defined above is agnostic of the failure scenario, which is given as an input of the scheduling problem. A scheduling algorithm is an rapproximation only if it achieves a makespan at most r times the optimal for any possible failure scenario. This can be viewed as a worst-case setting.

In contrast, some practical scenarios may call for an average-case analysis. In practice, each job J j ∈ J could fail with a probability q j in each execution attempt. Then, the probability that the job fails f j times before succeeding on the f j + 1-st execution is given by q j (f j ) = q f j j (1q j ). Assuming that errors occur independently for different jobs, the probability that a failure scenario f = (f 1 , f 2 , . . . , f n ) happens can then be computed as Q(f ) = n j=1 q j (f j ). With this probability, we can define the expected makespan of an algorithm Alg as

E(T Alg ) = f Q(f ) • T Alg (J , f , p, s).
In this case, an algorithm is said to be r-approximation if its expected makespan satisfies:

E(T Alg ) ≤ r • E(T Opt ) , (3)
where E(T Opt ) denotes the optimal expected makespan.

For the theoretical analysis (in Section 4), we will focus on bounding the worst-case approximation ratios. For the experimental evaluations (in Section 5), we will consider both worst-case and expected ratios as the performance indicators. To instantiate the failure model, we consider silent errors that strike CPUs and registers during the execution of the jobs. In this framework, the probability of having a silent error is determined solely by the number of flops of the job, or equivalently, by its sequential execution time. On the contrary, the amount of resources used to execute the job does not matter, even if the parallel execution time depends on the number of allocated processors. Specifically, suppose the occurrence of silent errors follows an exponential distribution with rate λ, then the failure probability for job J j is a fixed value q j = 1e -λt j (1) , where t j (1) is the sequential execution time of J j . Equipped with this model, we report both worse-case and expected performance in Section 5, under a variety of experimental scenarios and speedup models.

Resilient Scheduling Algorithms

We present two resilient scheduling algorithms, called Lpa-List and Batch-List. We derive the approximation ratios of the two algorithms for different speedup models.

Makespan Lower Bound

Before presenting the algorithms, we first consider a simple lower bound for the makespan of any scheduling algorithm under a given failure scenario. This generalizes the well-known lower bound [START_REF] Ludwig | Scheduling malleable and nonmalleable parallel tasks[END_REF][START_REF] Turek | Approximate algorithms scheduling parallelizable tasks[END_REF] for the failure-free case.

Let p denote the processor allocation decision made by a scheduling algorithm Alg for job set J under failure scenario f . Then, we define, respectively, the maximum cumulative execution time and total cumulative area of the jobs under algorithm Alg to be:

t max (J , f , p) = max 1≤j≤n f j +1 i=1 t j (p (i) j ) , (4)
A(J , f , p) = n j=1 f j +1 i=1 a j (p (i) j ) . (5)
The following shows a lower bound on the makespan of the algorithm for job set J under failure scenario f (regardless of its scheduling decision s):

T Alg (J , f , p, s) ≥ L(J , f , p) = max t max (J , f , p), A(J , f , p) P . (6)

Lpa-List Scheduling Algorithm

Our first algorithm, called Lpa-List, adopts a two-phase scheduling approach [START_REF] Ludwig | Scheduling malleable and nonmalleable parallel tasks[END_REF][START_REF] Turek | Approximate algorithms scheduling parallelizable tasks[END_REF]. The first phase uses a Local Processor Allocation (Lpa) strategy to determine the processor allocation p, and the second phase uses a List scheduling strategy to determine the starting time s of the jobs.

List Scheduling Strategy

We first discuss the List scheduling strategy for the second phase, assuming a given processor allocation p. Thus, this becomes a rigid-job scheduling phase. Algorithm 1 shows the pseudocode of List. The strategy first organizes all jobs in a list based on some priority rule. Then, at time 0, or whenever a running job J k completes and hence releases processors, the algorithm detects if job J k has errors. If so, the job will be inserted back into the list, again based on its priority, to be re-scheduled later. It finally scans the list of pending jobs and schedules all jobs that can be executed at the current time with the available processors. Since the algorithm is triggered begin Organize all jobs in a list L according to some priority rule; P avail ← P ; fj ← 0, ∀j; when at time 0 or a running job J k completes execution do P avail ← P avail + p

(f k +1) k ; if job J k has errors then L.insert with priority(J k ); f k ← f k + 1; end for j = 1, . . . , |L| do Jj ← L(j); if P avail ≥ p (f j +1) j
then execute job Jj at the current time;

P avail ← P avail -p (f j +1) j ; L.remove(Jj); end end end end
whenever a job completes (with errors or successfully), the complexity is O((f sum + n)n), where f sum = n j=1 f j denotes the total number of failures from all jobs in a failure scenario. We point out that the algorithm essentially resembles a greedy backfilling strategy.

In our analysis below, we show that the worst-case approximation ratio is independent of the job priorities used in the algorithm, although it may affect the algorithm's practical performance. In Section 5, we will consider some commonly used priority rules for the experimental evaluation.

The following lemma shows the worst-case performance of the List scheduling strategy. Note that the job set J is dropped from the notations since the context is clear.

Lemma 1. Given a processor allocation decision p for the jobs, the makespan of a List schedule (that determines the starting times s) under any failure scenario f satisfies:

T List (f , p, s) ≤ 2A(f ,p) P , if p min ≥ P 2 A(f ,p) P -p min + (P -2p min )•tmax(f ,p) P -p min , if p min < P 2
where p min ≥ 1 denotes the minimum number of utilized processors at any time during the schedule.

Proof. We first observe that List only allocates and de-allocates processors upon job completions. Hence, the entire schedule can be divided into a set of consecutive and non-overlapping intervals I = {I 1 , I 2 , . . . , I v }, where jobs start (or complete) at the beginning (or end) of an interval, and v denotes the total number of intervals. Let |I | denote the length of interval I . The makespan under a failure scenario f can then be expressed as

T List (f , p, s) = v =1 |I |.
Let p(I ) denote the number of utilized processors during an interval I . Since the minimum number of utilized processors during the entire schedule is p min , we have p(I ) ≥ p min for all I ∈ I. We consider the following two cases:

Case 1: p min ≥ P 2 . In this case, we have p(I ) ≥ p min ≥ P 2 for all I ∈ I. Based on the definition of total cumulative area, we have

A(f , p) = v =1 |I | • p(I ) ≥ P 2 • T List (f , p, s)
. This implies that:

T List (f , p, s) ≤ 2A(f , p) P .
Case 2: p min < P 2 . Let I min denote the last interval in the schedule with processor utilization p min , and consider a job J j that is running during interval I min . Necessarily, we have p j ≤ p min . We now divide the set I of intervals into two disjoint subsets I 1 and I 2 , where I 1 contains the intervals in which job J j is running (including all of its execution attempts), and I 2 = I\I 1 . Let T 1 = I∈I 1 |I| and T 2 = I∈I 2 |I| denote the total lengths of all intervals in I 1 and I 2 , respectively. Based on the definition of maximum cumulative execution time, we have

T 1 = f j +1 i=1 t j (p (i) j ) ≤ t max (f , p).
For any interval I ∈ I 2 that lies between the i-th execution attempt and the (i + 1)-th execution attempt of J j in the schedule, where 0 ≤ i ≤ f j , the processor utilization of I must satisfy p(I) > Pp min , since otherwise there are at least p min ≥ p j available processors during interval I and hence the i + 1-st execution attempt of J j would have been scheduled at the beginning of I.

For any interval I ∈ I 2 that lies after the (f j + 1)-th (last) execution attempt of J j , there must be a job J k running during I and that was not running during I min (meaning no attempt of executing J k was made during I min ). This is because p(I) > p min , hence the job configuration must differ between I and I min . The processor utilization during interval I must also satisfy p(I) > Pp min , since otherwise the processor allocation of J k will be p k ≤ p(I) ≤ Pp min , implying that the first execution attempt of J k after interval I min would have been scheduled at the beginning of I min .

Thus, for all I ∈ I 2 , we have p(I) > Pp min . Based on the definition of total cumulative area, we have A(f , p) ≥ (Pp min ) • T 2 + p min • T 1 . The makespan of List under failure scenario f can then be derived as:

T List (f , p, s) = T 1 + T 2 ≤ T 1 + A(f , p) -p min • T 1 P -p min = A(f , p) P -p min + (P -2p min ) • T 1 P -p min ≤ A(f , p) P -p min + (P -2p min ) • t max (f , p) P -p min .
While Lemma 1 bounds the general performance of a List schedule for a given processor allocation p, the following lemma shows its approximation ratio when the processor allocation strategy satisfies certain properties.

Lemma 2. Given any failure scenario f , if the processor allocation decision p satisfies:

A(f , p) ≤ α • A(f , p * ) , t max (f , p) ≤ β • t max (f , p * ) ,
where p * denotes the processor allocation of an optimal schedule, then a List schedule using processor allocation p is r(α, β)-approximation, where

r(α, β) = 2α, if α ≥ β P P -1 α + P -2 P -1 β, if α < β (7)
Proof. Based on Lemma 1, when p min ≥ P 2 , we have:

T List (f , p, s) ≤ 2A(f , p) P ≤ 2α • A(f , p * ) P ≤ 2α • T Opt (f , p * , s * ).
The last inequality above is due to the makespan lower bound, as shown in Inequality [START_REF] Blazewicz | Approximation algorithms for scheduling independent malleable tasks[END_REF]. When p min < P 2 , we can derive:

T List (f , p, s) ≤ A(f , p) P -p min + (P -2p min ) • t max (f , p) P -p min ≤ α • A(f , p * ) P -p min + β(P -2p min ) • t max (f , p * ) P -p min ≤ (α + β)P -2βp min P -p min • T Opt (f , p * , s * ) = α + β + (α -β) p min P -p min • T Opt (f , p * , s * ).
We have 1 P -1 ≤ p min P -p min < 1, since 1 ≤ p min < P 2 . Therefore, if α ≥ β, we get:

T List (f , p, s) ≤ 2α • T Opt (f , p * , s * ),
and if α < β, we get:

T List (f , p, s) ≤ P P -1 α + P -2 P -1 β • T Opt (f , p * , s * ).
Note that, in this case, P P -1 α + P -2 P -1 β > 2α.

Local Processor Allocation (Lpa)

We now discuss the Lpa strategy for the first phase of the algorithm. Given the result of Lemma 2, Lpa allocates processors locally for each job. Algorithm 2 shows its pseudocode. For each job J j , the strategy first computes its minimum possible execution time and area. Then, it chooses a processor allocation that leads to the smallest ratio r(α, β) defined in Equation ( 7) based on the job's local bounds (α and β) on the area and execution time, which will also hold globally. The algorithm is very simple to implement with complexity O(nP ). Once the processor allocation of a job has been decided, the same allocation will be used in the List schedule throughout the job's execution until it completes successfully without failures.

Performance of Lpa-List for Some Speedup Models

We now analyze the worst-case performance of the Lpa-List algorithm for moldable jobs that exhibit three prominent speedup models as well as the general monotonic model.

Roofline Model

In the roofline model, the execution time of a job J j when allocated p processors satisfies t j (p) = w j min(p,p j ) for a bounded degree of parallelism 1 ≤ pj ≤ P .

Proposition 1. The Lpa-List scheduling algorithm is a 2-approximation for jobs with the roofline speedup model.

Proof. The minimum execution time of a job J j is t min = w j /p j and the minimum area is a min = w j . These two quantities can be achieved by allocating p j = pj processors to the job. This leads to the bound of α = β = 1 for each job as well as globally under any failure scenario. Hence, based on Lemma 2, we get an approximation ratio of 2α = 2.

Communication Model

In the communication model [START_REF] Dutton | Online scheduling of malleable parallel jobs[END_REF][START_REF] Havill | Competitive online scheduling of perfectly malleable jobs with setup times[END_REF], the execution time of a job J j when allocated p processors is given by t j (p) = w j /p + (p -1)c j .

Proposition 2. The Lpa-List scheduling algorithm is a 3-approximation for jobs with the communication model. Proof sketch. The minimum execution time of a job J j depends on w j and c j , and the minimum area is a min = w j (by allocating 1 processor). To prove the proposition, we consider a processor allocation of p j ≈ 1 2 w j c j for the job, and discuss several cases. The complete proof is omitted due to space constraint and can be found in the full version [START_REF] Benoit | Scheduling moldable jobs on failure-prone platforms[END_REF].

We point out that the result of Proposition 2 improves upon the 4approximation result for the Set algorithm obtained in [START_REF] Havill | Competitive online scheduling of perfectly malleable jobs with setup times[END_REF], which is the best ratio known so far for this model. Furthermore, our result extends the one in [START_REF] Havill | Competitive online scheduling of perfectly malleable jobs with setup times[END_REF] in two ways: [START_REF] Amdahl | Validity of the single processor approach to achieving large scale computing capabilities[END_REF] The model in [START_REF] Havill | Competitive online scheduling of perfectly malleable jobs with setup times[END_REF] assumes the same communication overhead c for all the jobs, whereas we consider an individual communication overhead c j for each job J j ; (2) The algorithm in [START_REF] Havill | Competitive online scheduling of perfectly malleable jobs with setup times[END_REF] applies to failure-free job executions, whereas our algorithm is able to handle job failures.

Amdahl's Model

In the Amdahl's model [START_REF] Amdahl | Validity of the single processor approach to achieving large scale computing capabilities[END_REF], the execution time of a job J j when allocated p processors is t j (p) = w j 1-γ j p + γ j . It is a particular case of the monotonic model (see Section 3.1). In the analysis below, we consider an equivalent form of the model: t j (p) = w j p +d j , where w j denotes the parallelizable work of the job and d j denotes the inherently sequential work.

Proposition 3. The Lpa-List scheduling algorithm is a 4-approximation for jobs with the Amdahl's speedup model. Proof. The minimum execution time of a job J j is t min = w j P + d j (by allocating P processors), and the minimum area is a min = w j + d j (by allocating 1 processor).

We consider a processor allocation of p j = min( w j d j , P ). For the area, we have a j (p j ) = w j +p j d j ≤ w j +

w j d j d j ≤ w j +( w j d j +1)d j = 2w j +d j ≤ 2a min .
Thus, we get α = 2. For the execution time, we consider two cases: (1) If w j d j ≤ P , then p j = w j d j , and we have t j (p j ) = w j p j + d j ≤ w j w j /d j + d j = 2d j ≤ 2t min . In this case, we get β = 2; (2) If w j d j > P , then p j = P , and we have t j (p j ) = w j P + d j = t min . In this case, we get β = 1. Hence, based on Lemma 2, we get an approximation ratio of 2α = 4.

While the results above show O(1)-approximation of Lpa-List for three common speedup models, we can show that it is Θ( √ P )-approximation for the general monotonic model, and the result holds for any algorithm that makes local processor allocation decisions based on the individual job characteristics (the proof can be found in [START_REF] Benoit | Scheduling moldable jobs on failure-prone platforms[END_REF]). In the next section, we will propose another algorithm that overcomes this limitation by using coordinated processor allocations for the jobs.

Batch-List Scheduling Algorithm

We now present the second algorithm, called Batch-List. Unlike Lpa-List that allocates processors locally for each job, Batch-List coordinates the processor allocation decisions for different jobs. While not knowing the failure scenario in advance, the algorithm organizes the execution attempts of the jobs in multiple batches, where each batch executes the pending jobs (i.e., the jobs that have not been successfully completed so far) up to a certain number of attempts that doubles after each batch. The idea is inspired by a doubling strategy for an online scheduling problem [START_REF] Ye | Online scheduling of moldable parallel tasks[END_REF]. The following describes the Batch-List algorithm in detail.

Let B k denote the k-th batch created by the algorithm, where k ≥ 1. Let n k denote the number of pending jobs before B k starts, and let J k = {J k,1 , J k,2 , . . . , J k,n k } denote this set of pending jobs. For convenience, we define g k = 2 k-1 . In batch B k , we allow each pending job J k,j to have at most f k,j = g k -1 failures, i.e., each job is allowed to make g k execution attempts; if the job is still not successfully completed after that, it will be handled by the next batch B k+1 . Let f k = (f k,1 , f k,2 , . . . , f k,n k ) denote this worst-case failure scenario for the jobs in batch B k . Given f k , each job J k,j can be represented by a chain J

(1) k,j → J (2) k,j → • • • → J (g k )
k,j of g k sub-jobs with linear dependency, where each sub-job represents an execution attempt of J k,j in the batch. Thus, all sub-jobs in batch B k form a set of n k linear chains.

To allocate processors for all sub-jobs (or different execution attempts of all pending jobs) in batch B k , we adopt a pseudo-polynomial time algorithm, called Mt-Allotment, for series-parallel precedence graphs [START_REF] Lepère | Approximation algorithms for scheduling malleable tasks under precedence constraints[END_REF] (of which a set of independent linear chains is a special case). The algorithm determines an allocation p (m) k,j for each sub-job J (m) k,j (or the m-th execution attempt of job J k,j ). Let p k,j = (p

(1) k,j , p (2)
k,j , . . . , p

(f k,j +1) k,j
) be the vector of processor allocations for job J k,j , and let p k = ( p k,1 , p k,2 , . . . , p k,n k ) be the processor allocations for all jobs in batch B k . The following lemma shows the property of the allocation p k returned by Mt-Allotment for jobs with arbitrary speedup models. Lemma 3. The processor allocation p k returned by Mt-Allotment for all jobs in batch B k provides an arbitrarily close approximation to the minimum makespan lower bound as defined in Equation ( 6), i.e.,

L(J k , f k , p k ) ≤ (1 + ) • min p L(J k , f k , p) . (8)
The algorithm has a time complexity polynomial in 1/ .

We refer to [START_REF] Lepère | Approximation algorithms for scheduling malleable tasks under precedence constraints[END_REF] for a detailed description of the Mt-Allotment algorithm and its analysis3 .

Finally, after deciding the processor allocations, the Batch-List algorithm schedules all pending jobs in a batch B k using the List strategy as shown in Algorithm 1, while restricting each job to execute at most g k times.

After batch B k completes and if there are still pending jobs, the algorithm will create a new batch B k+1 to schedule the remaining pending jobs.

Performance of Batch-List for Arbitrary Speedup Model

We now analyze the performance of Batch-List for moldable jobs with any arbitrary speedup model.

First, we define the following concept: a job set J with failure scenario f is said to be dominated by a job set J with failure scenario f , denoted by (J , f ) ⊆ (J , f ), if for every job J j ∈ J , we have J j ∈ J and f j ≤ f j . The following lemma gives two trivial properties without proof for a dominated pair of job set and failure scenario.

Lemma 4. If (J , f ) ⊆ (J , f ), then we have: (a) L(J , f , p) ≤ L(J , f , p). (b) T Opt (J , f , p * , s * ) ≤ T Opt (J , f , p * , s * ).
Lemma 5. Suppose a job set J with failure scenario f is executed by the Batch-List algorithm. Then, any job J j ∈ J will successfully complete in b j = log 2 (f j + 2) batches, and in any batch B k , where 1 ≤ k ≤ b j , we have f k,j ≤ f j .

Proof. Since the algorithm allows the number of execution attempts of a job to double in each new batch, the maximum number of execution attempts of the job in a total of b batches is b k=1 2 k-1 = 2 b -1. Thus, if a job J j fails f j times (i.e., executes f j + 1 times), then the number of batches it takes to complete the job is b j = log 2 (f j + 2) = 1 + log 2 (f j + 1) . In any batch

B k until job J j completes, where 1 ≤ k ≤ b j , we have f k,j = 2 k-1 -1 ≤ 2 log 2 (f j +1) -1 ≤ f j .
The following proposition shows the approximation ratio of Batch-List for jobs with any arbitrary speedup model. Proposition 4. The Batch-List scheduling algorithm is an O((1+ ) log 2 (f max ))approximation for jobs with arbitrary speedup model, where f max = max j f j denotes the maximum number of failures of any job in a failure scenario.

Proof. From Lemma 5, the total number of batches for a job set J with failure scenario f is b max = log 2 (f max + 2) . We further have

(J k , f k ) ⊆ (J , f ) for any batch B k , where 1 ≤ k ≤ b max . Let f k = (f k,1 , f k,2 , . . . , f k,n k )
denote the actual failure scenario for the jobs in batch B k . Clearly, we have f k,j ≤ f k,j for any J j ∈ J k , and thus, (

J k , f k ) ⊆ (J k , f k ).
Since Batch-List uses the Mt-Allotment algorithm to allocate processors and the List strategy to schedule all jobs in each batch, according to Lemmas 1, 3 and 4, we can bound the execution time of any batch B k as follows:

T List (J k , f k , p k , s k ) ≤ 2 • L(J k , f k , p k ) ≤ 2 • L(J k , f k , p k ) ≤ 2(1 + ) • L(J k , f k , p * k ) ≤ 2(1 + ) • T Opt (J k , f k , p * k , s * k ) ≤ 2(1 + ) • T Opt (J , f , p * , s * ) .
The makespan of the Batch-List algorithm then satisfies:

T Batch-List (J , f , p, s) = bmax k=1 T List (J k , f k , p k , s k ) ≤ 2(1 + ) log 2 (f max + 2) • T Opt (J , f , p * , s * ) .

Performance Evaluation

In this section, we evaluate and compare the performance of different scheduling algorithms using simulations on synthetic moldable jobs that follow various speedup models.

Simulation Setup

Evaluated Algorithms

We evaluate our two algorithms, namely, Lpa-List (or Lpa in short) and Batch-List (or Batch in short). For Batch, we set = 0.3 for its processor allocation procedure (Lemma 3). Their performance is also compared to that of the following two baseline heuristics:

• MinTime: it allocates processors to minimize the execution time of each job and schedules all jobs using the List strategy. This is also known as the shortest execution time (Set) algorithm in [START_REF] Havill | Competitive online scheduling of perfectly malleable jobs with setup times[END_REF];

• MinArea: it allocates processors to minimize the area of each job and schedules all jobs using the List strategy.

Priority Rules

We consider three priority rules that have been shown in [START_REF] Benoit | Design and comparison of resilient scheduling heuristics for parallel jobs[END_REF] to give good performance when (rigid) jobs are scheduled with the List strategy (Algorithm 1), which is used in all four evaluated algorithms (recall that Batch uses List in each batch). The three priority rules are:

• LPT (Longest Processing Time);

• HPA (Highest Processor Allocation);

• LA (Largest Area).

Speedup Models

We generate synthetic moldable jobs that follow three speedup models: roofline, communication and Amdahl. Each job J j is defined by two parameters: the total work w j (or sequential execution time), which is drawn uniformly in [5000, 4000000], and another parameter that depends on the speedup model and is generated as follows:

• For the roofline model, the maximum degree of parallelism pj is an integer drawn uniformly in [100, 4000]; • For the communication model, the communication overhead is set as c j = α • 2 r , where r is an integer uniformly chosen in [0, 3] and α is drawn uniformly in [START_REF] Amdahl | Validity of the single processor approach to achieving large scale computing capabilities[END_REF][START_REF] Belkhale | An approximate algorithm for the partitionable independent task scheduling problem[END_REF]. • For the Amdahl's model, the sequential fraction of the job is set as γ j = α 10 r , where r is an integer uniformly chosen in [START_REF] Belkhale | An approximate algorithm for the partitionable independent task scheduling problem[END_REF][START_REF] Chen | An improved approximation for scheduling malleable tasks with precedence constraints via iterative method[END_REF] and α is drawn uniformly in [0, 10].

Failure Distribution

We assume that silent errors follow the exponential distribution [START_REF] Herault | Fault-Tolerance Techniques for High-Performance Computing, Computer Communications and Networks[END_REF]. Let λ denote the error rate per unit of work, so a job will be struck by a silent error for every 1/λ unit of work executed on average. Following our failure model (Section 3.4), for a job J j with total work w j , its failure probability is given by q j = 1-e -λw j . In the simulations, we set λ = 10 -7 by default. Given the chosen values of w j , this corresponds to a failure probability between 0.0005 and 0.33 for a job. We also set the default number of processors and default number of jobs to be P = 7500 and n = 500, respectively, but we will vary all of these parameters to evaluate their impact on the performance. MinTime algorithm performs well for the roofline model, but as more overhead is introduced in the communication and Amdahl's models, it continues to allocate a large number of processors to the jobs in order to minimize the execution time. This leads to a significant increase in the total area and hence degrades the performance. On the other hand, the Lpa and Batch algorithms maintain a good balance between the execution time and area of a job, so they perform well for all speedup models, in terms of both expected performance (bars) and worst-case performance (top endpoints of lines). Similar results have also been observed for different combinations of P and n (see [START_REF] Benoit | Scheduling moldable jobs on failure-prone platforms[END_REF] for these additional results).

Comparing the three priority rules, no significant difference is observed. In general, LPT and LA perform similarly and slightly better than HPA, which is consistent with the results observed in [START_REF] Benoit | Design and comparison of resilient scheduling heuristics for parallel jobs[END_REF] for scheduling rigid jobs. Given these results, we will omit the MinArea algorithm altogether (and MinTime for the Amdahl's model) in the subsequent evaluation, while focusing on comparing the expected performance of the remaining algorithms with the LPT priority rule.

Impact of Different Parameters

We now study the impact of different parameters (i.e., P , n, and λ) on the performance of the algorithms.

Figure 2 shows the performance when the number of processors P is varied between 1000 and 15000. For the roofline model (left), all three algorithms return the same processor allocation, i.e., the maximum degree of parallelism, for each job. Further, both Lpa and MinTime use the List strategy for scheduling, so the two algorithms have exactly the same performance. In contrast, Batch does not perform as well, because it schedules the jobs in batches, thus needs to wait for every job in a batch to finish before starting the next one, which causes delays. This performance gap also increases with the number of processors. For the communication model (middle), parallelizing a job becomes less efficient due to the extra communication overhead, so Batch starts to perform better than MinTime thanks to its better processor allocation strategy. In this model, both Batch and Lpa have similar processor allocations, so the performance difference between the two algorithms is still induced by the idle times at the end of the batches, which again increases with the number of processors. For the Amdahl's model (right), the results look very different, as Batch now outperforms Lpa despite the idle time at the end of each batch. This is due to Batch's ability to better balance the job execution times globally, which becomes more important for this model. The trend does not seem to be affected by the number of processors. Figure 3 shows the performance when the number of jobs n is varied between 100 and 1000. We again see the same pattern: Batch performs the worst in the roofline model, gets better than MinTime in the communication model, and has the best performance in the Amdahl's model. While the varying number of jobs has a small impact on the performance of Lpa and MinTime, the performance of Batch improves as the number of jobs increases in the roofline and communication models. Indeed, with a constant number of processors, having more jobs decreases the number of processors per job, thus reduces the performance gap between the algorithms. This is consistent with the results we have observed in Figure 2.

Finally, Figure 4 shows the impact of error rate λ when it is varied between λ = 10 -8 (corresponding to 0.03 error per job on average) and λ = 10 -6 (corresponding to 12 errors per job on average). Once again, the relative performance of the three algorithms remains the same as before under the three speedup models. While the performance of Lpa and MinTime is barely affected, the performance of Batch gets worse as the error rate λ (and hence the number of failures) increases, which corroborates our theoretical analysis (Proposition 4). In particular, with increased error rate, more failures will occur and thus more batches will be introduced, causing scheduling inefficiencies from both idle times between the batches and possible imprecision in the processor allocations (especially in a large batch, as the actual number of failures may deviate significantly from the anticipated values).

Summary of Results

Table 1 summarizes the makespan ratios over the entire set of experiments, in terms of both average-case performance (expected ratio) and worst-case performance (maximum ratio). Overall, the results confirm the efficacy of our scheduling algorithms (Lpa and Batch), which outperform the baseline heuristics in all settings. For the simplest roofline model, Lpa is equivalent to MinTime, both achieving a makespan very close to the lower bound (with a ratio around 1.05 on average). For the other two models, the difference between our best algorithm and the baseline is striking! Thanks to its effective processor allocation strategy, Lpa achieves very good performance (with a ratio less than 1.4 on average) for the communication model, while MinTime has a ratio around 2. Results are even more impressive for the Amdahl's model. In this case, Batch has excellent results thanks to its coordinated processor allocation and failure handling, and achieves a ratio around 1.47 on average, against a ratio of more than 14 for MinTime. All of these results are robust with different priority rules and parameter settings.

Conclusion and Future Work

In this paper, we have studied the problem of scheduling moldable parallel jobs on failure-prone platforms. We have presented a formal model of the problem and designed two resilient scheduling algorithms (Lpa and Batch).

While not knowing the failure scenarios of the jobs in advance, Lpa utilizes a delicate local processor allocation strategy and Batch extends the notion of batches to coordinate the processor allocations. Both algorithms also use an extended List strategy with failure-handling ability to schedule the jobs. On the theoretical side, we have derived new approximation ratios for both algorithms under several job speedup models. Extensive simulation results have also demonstrated their good practical performance against some baseline heuristics and under different parameter settings. Future work will be devoted to the analysis of average-case performance of the algorithms in addition to their worst-case performance (as was done in this paper). Another direction is to investigate alternative failure models, such as fail-stop errors (as opposed to silent errors as considered in this paper) or schedule-dependent failure probabilities (e.g., the probability that a job fails may depend on the number of processors allocated to it, and hence on its area). One may also consider checkpointing and rollback recovery for long-running jobs to avoid re-executing a failed job from scratch. On the practical side, we seek to validate the performance of our algorithms by evaluating them using datasets extracted from job execution logs with realistic speedup profiles and failure traces.

Algorithm 1 :

 1 List (Scheduling Strategy)

Algorithm

Figure 1 :

 1 Figure 1: Performance of all four algorithms for roofline model (left), communication model (middle) and Amdahl's model (right) using different priority rules with P = 7500, n = 500 and λ = 10 -7 . The bars represent expected performance and the endpoints of the lines represent best-and worst-case performance.

Figure 2 :

 2 Figure 2: Performance for roofline model (left), communication model (middle) and Amdahl's model (right) with n = 500, λ = 10 -7 and P ∈ [1000, 15000].

Figure 3 :

 3 Figure 3: Performance for roofline model (left), communication model (middle) and Amdahl's model (right) with P = 7500, λ = 10 -7 and n ∈ [100, 1000].

Figure 4 :

 4 Figure 4: Performance for roofline model (left), communication model (middle) and Amdahl's model (right) with P = 7500, n = 500 and λ ∈ -8 , 10 -6 ].

Table 1 :

 1 Summary of the performance for three algorithms.

	Speedup Model	Roofline Communication Amdahl
	Lpa	Expected Maximum	1.055 1.148	1.310 1.379	1.960 2.059
	Batch	Expected Maximum	1.154 1.280	1.430 1.897	1.465 1.799
	MinTime	Expected Maximum	1.055 1.148	2.040 2.184	14.412 24.813

We use processor as a generic term for physical resources (cores, nodes, etc).

An algorithm for rigid jobs is said to be ρ-bounded if its makespan is at most ρ times the lower bound L = max j t j p j P , maxj tj .

In a nutshell, the algorithm uses dynamic programming to decide whether there exists an allocation p such that L(J k , f k , p) ≤ (1 + ) • X for a positive integer bound X, and performs a binary search on X.

Evaluation Methodology

We generate 30 different sets of jobs, and for each set, we generate 100 failure scenarios randomly drawn from the failure distribution described above. We then average the simulated makespans of an algorithm over the 100 failure scenarios to estimate its expected makespan for each job set. The expected makespan is then normalized by an expected lower bound (also averaged over the 100 failure scenarios) to estimate the expected ratio. Lastly, this ratio is averaged over the 30 job sets to compute the final expected performance of the algorithm. We also estimate the worst-case performance of the algorithm by using its largest normalized makespan over all job sets and failure scenarios.

For a given job set J and a failure scenario f , the makespan lower bound given in Equation ( 6) depends on the processor allocation and hence the scheduling algorithm. To ensure that the performance of all algorithms is normalized by the same quantity, we use the following rather loose lower bound, which is, however, independent of the scheduling decision:

where t max (J , f ) = max j min p (f j + 1)t j (p) is the minimum possible maximum execution time of all jobs and A (J , f ) = j min p (f j + 1)a j (p) is the minimum possible total area. Since this lower bound gives a pessimistic estimation on the quality of the optimal schedule, the practical performance of all algorithms is likely to be better than reported.

The simulation code for all experiments is publicly available at http: //www.github.com/vlefevre/job-scheduling.

Comparison of Algorithms and Priority Rules

We first compare the performance of different algorithms and study the impact of priority rules on their performance.

Figure 1 shows the normalized makespans for the 11 combinations of algorithms and priority rules under the three speedup models with P = 7500, n = 500, and λ = 10 -7 . Note that, for the MinArea algorithm, priority rules LA and LPT are equivalent, as the algorithm always allocates one processor to all jobs, so only the results of LPT are reported. As we can see, MinArea fares poorly in all cases, because it allocates one processor to each job in order to minimize the area. This results in very long job execution (and re-execution) times, leading to extremely large makespan. The


Fatiha Challali
email: fatiha.challali@univ-paris13.fr

Djelloul Mendil

Tahar Touam

Thierry Chauveau

Valérie Bockelée

Alexis Garcia Sanchez

Azeddine Chelouche

Marie-Paule Besland

Effect of RF sputtering power and vacuum annealing on the properties of AZO thin films prepared from ceramic target in confocal configuration

Keywords: Zinc oxide, AZO thin films, RF sputtering power, vacuum annealing, optoelectronics properties

à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d'enseignement et de recherche français ou étrangers, des laboratoires publics ou privés.

Effect of RF sputtering power and vacuum annealing on the properties of AZO thin films prepared from ceramic target in confocal configuration

from Grazing Incidence X-Ray Diffraction (GIXRD) analysis, that the sputtering power has a great influence on the crystalline quality of AZO films. A preferential orientation along the c-axis is obtained at lower sputtering power of 50 W. XPS analysis confirms the existence of only Zn and Al in the oxidized state in accordance with the XRD results. SEM and AFM observations of AZO films reveal dense and homogenous distribution of small grains on the surface. Analysis by UV-Vis-NIR spectroscopy at RT reveals that the average optical transmittance in the visible range (400-800 nm) of the AZO thin films is higher than 75%. Hall-effect measurements put into evidence that the electrical resistivity of the films increases with the increase of the sputtering power. A low resistivity of 1.65×10 -3 Ω.cm is obtained for the lowest sputtering power (50W).

Moreover, AZO thin film deposited at 50 W and annealed for 1h at 400°C under vacuum shows a lower resistivity of 5.75×10 -4 Ω.cm, an average optical transmission above 86% and a high figure of merit (Ф TC ) value of 3.4×10 -3 Ω -1 sq which suggests that

Introduction

In recent years, Zinc oxide (ZnO) has emerged as a potential transparent conductive oxide (TCO) candidate due to its unique and remarkable properties, including a good transparency over visible and near infrared light range, wide band gap of more than 3.3 eV and a good conductivity as n-type semiconductor thanks to a high carrier density. Furthermore, non-toxicity, high chemical stability as well as abundant availability of zinc has enabled its choice as a lower cost alternative for TCO's applications [START_REF] Minami | Transparent conducting oxide semiconductors for transparent electrodes[END_REF][START_REF] Afre | Transparent conducting oxide films for various applications: A review[END_REF][START_REF] Ellmer | Past achievements and future challenges in the development of optically transparent electrodes[END_REF]. In addition, ZnO thin films doped with Al, Ga or In demonstrate high optical transmittance and low electrical resistivity for optoelectronic device applications. Particularly, Aluminum-doped Zinc oxide (AZO) thin films have shown the lowest resistivity among doped ZnO thin films [START_REF] Asemi | Preparation of highly conducting Aldoped ZnO target by vacuum heat treatment for thin film solar cell applications[END_REF][START_REF] Ellmer | Transparent Conductive Zinc Oxide Basics and Applications in Thin Film Solar Cells[END_REF].

Various deposition methods have been used for the growth of AZO thin films including electrochemical deposition [START_REF] Kumar | Effect of potential voltages on key functional properties of transparent AZO thin films prepared by electrochemical deposition method for optoelectronic applications[END_REF], Chemical vapor deposition (CVD) [START_REF] Johnson | Atmospheric pressure plasma enhanced chemical vapor deposition of zinc oxide and aluminum zinc oxide[END_REF], pulsed laser ablation [START_REF] Gu | Optical and electrical properties of ZnO:Al thin films synthesized by low-pressure pulsed laser deposition[END_REF], sol-gel method [START_REF] Arun Kuma | Effect of solvents on sol-gel spin-coated nanostructured Al-doped ZnO thin films: a film for key optoelectronic applications[END_REF], spray pyrolysis [START_REF] Nasiri | Muscovite mica as a flexible substrate for transparent conductive AZO thin films deposited by spray pyrolysis[END_REF] and magnetron sputtering [START_REF] Hernandez-Como | Al-doped ZnO thin films deposited by confocal sputtering as electrodes in ZnObased thin-film transistors[END_REF]. On the one hand, CVD technics allow a large scale production with two major drawbacks:

high process temperature and high costs. On the other hand, Sol-gel and spray pyrolysis are simple techniques with the advantages of low cost and low process temperature.

Nevertheless, the obtained films exhibit lower quality with resistivity 5 times higher than those elaborated by other methods. Pulsed laser deposition (PLD) and magnetron sputtering are involved under vacuum and need high equipment investment. However, PLD produces excellent stoichiometric films with few structural defects, but deposition rates are low and scale up to industrial production has not been reached yet. On the contrary, Magnetron Sputtering (MS) is one of the most extensively used techniques for TCO and AZO films deposition in particular. Indeed, this deposition technique has several advantages, such as low processing temperature, good film's adhesion, good thickness uniformity, high density of the films and well established up scaling to large areas. In addition, the process parameters such as working pressure, substrate temperature, sputtering power, are easy to control.

The sputtering power is one of the first order process parameters. Published works shown that, electrical and optical properties of the AZO films are dependent on their structural and morphological characteristics. Films properties are largely depend on the growth process during magnetron sputtering and easily controlled by the sputtering power. Moreover, the annealing in inert atmosphere is considered as an efficient parameter to improve crystalline quality and cure intrinsic defects, leading thus to improvement of both electrical and optical properties of the AZO thin films without modification of chemical composition. However, the annealing temperature of AZO films might be limited regarding the applications. Generally, annealing temperature should be lower than 500°C and appropriate to the substrate nature, i.e. semiconductor or glass substrates.

In this study, AZO thin films were successfully deposited on large area glass substrate at room temperature using RF magnetron sputtering in confocal configuration. We focus on the effect of sputtering power and annealing temperature on the structural, optical, morphological and electrical properties and, finally, we highlight the best experimental conditions to reach deposited films with electrical and optical properties both optimized. to achieve acceptable film uniformity. Confocal sputtering involves positioning of the target at 67° with respect to the substrate vertical axis as shown in Fig. 1. The target-tosubstrate distance was held as 120 mm. To improve the uniformity of the deposited films, the substrate holder was rotated axially at 10 rpm. The glass substrates were ultrasonically cleaned using acetone, methanol, and deionized water, and then dried in blowing nitrogen. The chamber was initially evacuated to a base pressure under 2×10 -5 Pa. During deposition, working pressure was fixed at 0.5 Pa using a VAT valve controller and pure argon (Ar) as working gas with a fixed flow rate of 20 sccm (standard cubic centimeters per minute). The sputtering power applied to the target was varied in the range of 50-300W. The films thickness in the range of 115 to 180 nm was obtained by adjusting deposition time. Prior to the film deposition, pre-sputtering step was performed for 5 min at 300 W in a 40 sccm Ar gas flow to remove any contamination from the target surface and ensure a reproducible target surface state before each deposition. Besides, to consider the effect of the annealing temperature on AZO thin films properties, the films deposited using the optimized power were subsequently annealed under vacuum for 1 hour at 200 and 400°C. The base pressure of the chamber during vacuum annealing was kept at 10 Pa with Ar flow rate of 40 sccm.

Experimental details

Sample characterization

The crystalline structure of AZO films was investigated by GIXRD, using a Thermo Fisher Inel Equinox 1000 diffractometer with Cu-Kα 1 radiation (λ=1.54056Å) in ꞷ mode. The incidence angle was set to 2° and kept constant during acquisition (curved sensitive position detection with 2 in the range of 0°-115°). The surface morphology and cross-section of the films were observed using a high-resolution ZEISS Supra 40VP FEG Scanning Electron Microscope (SEM). The film thickness was determined using cross-sectional SEM micrographs. The topography and surface roughness of the films were evaluated by Atomic Force Microscopy (AFM). The experiment was performed in contact mode by a Nanosurf Flex-AFM system equipped with a 10×10 µm highresolution scanner. Image processing and root mean square roughness (R rms ) estimations were achieved by the Gwyddion software [START_REF] Nečas | Gwyddion: open-source software for SPM data analysis[END_REF]. The chemical bonding states of zinc, aluminum and oxygen in AZO films were investigated using X-ray Photoelectron Spectroscopy (XPS). The analyses were performed over an area of 700×400 µm 2 on a Kratos Nova photoelectron spectrometer using a monochromatic Al-Kα X-Ray source (1486.6 eV) operating at 150 W. The pressure in the analysis chamber was kept below 10 -8 Pa. All high-resolution Core level spectra have been analyzed and fitted using Casa XPS software [13]. Energy Dispersive X-ray Spectroscopy (EDS) analysis was also involved to detect the elemental composition of the AZO thin films deposited on silicon substrate with 5800-LV SEM at 10kV. The resistivity, Hall mobility and carrier concentration of the samples were measured by Hall-effect measurements under Vander Pauw geometry using Ecopia HMS-5000 system at an applied magnetic field of 0.55 T. Optical transmission spectra were recorded using a safas UVmc 2 UV-Vis-NIR spectrophotometer in the wavelength range of 200-1100 nm. The optical bandgap energy was then extracted from the transmittance data. All these measurements were performed at RT. 002), ( 101), ( 102), ( 110), ( 103) and (112) crystallographic planes exhibit variables intensities with the sputtering power. To get further insights on the sputtering power effect, patterns have been refined using MAUD [START_REF] Lutterotti | MAUD: a friendly Java program for material analysis using diffraction[END_REF] software with Rietveld method to extract microstructural parameters as intensity ratio, crystallite size and lattice parameters.

Results and discussions

Structural properties

Rietveld refinements of GIXRD spectra are carried out using starting parameters from the zincite structural model (ICDD PDF# 04-016-6648). The obtained results are gathered in Table 1 (reference values in last line). The intensity ratio I 002 /I 103 decreases gradually from 4.42 to 1.10 for the films deposited with power varying from 50 W to 300 W respectively. For the lowest sputtering power of 50 W, the pattern shows a very intense peak at 33.91° corresponding to (002) plane diffraction whereas all other detected peaks exhibit low intensities. The I 002 /I 103 ratio of 4.42 is three times greater than the reference ratio of 1.52, indicating that the film is preferentially oriented along the c-axis; this preferential growth plane is due to its low surface free energy. When the sputtering power increases from 100 to 300 W, the (002) Bragg peak decreases gradually, while the intensity of the neighboring peaks corresponding to (101) and (103) diffraction planes are significantly enhanced. For the highest power of 300 W, the ratio I 002 /I 103 of 1.1 is lower than the reference's one (1.52) indicating that the (103) peak becomes the most intense. This result provides evidence for a change in preferential orientation with the sputtering power. Furthermore, with increasing sputtering power, all diffraction peaks are shifted towards a lower diffraction angle. As an example, only the 2 of the (002) diffraction peak is presented in Table 1. The peak shifts towards a smaller angle from 33.91° to 33.74° for the films deposited at 50 W to 300 W respectively, compared to the standard value of the diffraction peak of the ZnO (34.41°). The diffraction peak shift might be related to compressive stresses within the bulk of deposited films. As displayed in Table 1, an increase of lattice d-spacing from the 0.2629 to 0.2639 nm occurs when the sputtering power increase from 50 to 300 W as compared to the d-spacing of 0.2604 nm from the ZnO reference. The origin of the compressive stress can be attributed to lattice distortions in the AZO films due to the bombardment of sputtered species which increase with increasing sputtering power. The presence of compressive stresses has been previously reported for intrinsic and doped ZnO films deposited by RF magnetron sputtering by K.H. Ri et al [START_REF] Ri | The structural properties of Al doped ZnO films depending on the thickness and their effect on the electrical properties[END_REF]. The calculated average crystallite size is found to be 29.28, 15.65, 10.1 and 15.89 nm for the AZO samples grown at 50, 100, 200 and 300 W, respectively. Variations of the GIXRD patterns with the sputtering power reveals that power leads to crystallographic structure degradation and multi-preferred orientations growth, which may be attributed to the stress induced in the deposited films by the increasing sputtering power and the changes of energies required for AZO growth along the (002) versus other orientations. Thus, when the sputtering power is increased, the energy of the sputtered species is enhanced, promoting thus AZO growth along the (103) orientation which requires a larger surface energy. It can be concluded that AZO film deposited at lower sputtering power (50 W) has the best crystalline structure quality considering the extracted microstructure parameters. Malinovska et al. [START_REF] Dimova-Malinovska | Optical and electrical properties of R.F. magnetron sputtered ZnO:Al thin films[END_REF] have demonstrated that when the power is too high in RF sputtering process, the plasma species bombard the film surface with relatively high energy. This leads to the generation of surface defects and deterioration of film crystallinity. Our results are therefor in good agreement with their work.

Surface morphology

Top-view SEM micrographs and the corresponding cross-section (inset) of AZO thin films deposited at various RF power are shown in Fig. 3(a-d). It can be observed that the AZO films exhibit dense and homogenous distribution of small grains on the surface.

The surface morphology appears to be dependent on the RF power. The surface of the films deposited at 50, 100 and 200 W shows regular and rounded grains, whereas the film prepared with a high power of 300 W exhibits relatively elongated surface grains.

The difference in the grains shape can be related to the mixed (002) and (103) crystalline preferential orientations as shown by GIXRD patterns. The corresponding SEM cross-section images (Insets of Fig. 3(a-d)) illustrate the evolution in crystallinity of the bulk AZO films as a function of sputtering power. It can be clearly seen that the growth mode of AZO films changes gradually from columnar to granular structure as the sputtering power is increasing, indicating that the growth mode and microstructure of AZO films are influenced by the RF power. The AZO film deposited at 50 W presents a columnar morphology along the vertical c-axis with circular-like crests. It is observed that the majority of the grains grew nearly perpendicular to the substrate, which is again in accordance with the XRD results. In contrast, from 100 to 200 W, the growth changes gradually towards a mixture of fine columns and small grains. At 300 W, the growth of the film changes and the cross-section view exhibits granular structures with different sizes.

Fig. 4(a-d) displays the two-dimensional (2D) AFM topography images of the AZO thin films deposited at different powers recorded over a 2.0 μm × 2.0 μm scanning area. As can be observed from the AFM images, the AZO films exhibited smooth surface and regular grain morphology in agreement with SEM observations. The R rms is estimated about 1.57, 2, 2.69 and 3.5 nm for the film deposited at 50, 100, 200 and 300 W respectively. This trend in R rms could be attributed to the increase in the bombardment of the surface by the sputtered species at high power.

XPS analysis

Surface chemical composition and chemical state changes in the AZO thin films were analyzed by XPS. Survey scan spectra (not shown here) were collected in the -5 to 1200 eV range (binding energy).

Optical properties

To investigate the influence of RF power on the optical properties of AZO thin films, the optical transmittance of the films deposited at various sputtering power was measured with respect to air by UV-Vis-NIR spectrophotometer in the 200 to 1100 nm wavelength range. The results are plotted in Fig. 6(a). All AZO films show an average transmittance of 75-81% in the visible range (400-800 nm). This means that the sputtering power has a moderate effect on the transparency of the as-deposited thin films over the whole visible range. However, the short wavelength cut-off in transmittance spectra of AZO thin films has a clear shift towards higher wavelength values indicating a reduction of the optical band gap.

The direct optical band gap (E g ) of the AZO thin films was determined by using the technique based on the first derivative of transmittance (T), dT/dE, as a function of energy (E) [START_REF] Touam | Effects of dip-coating speed and annealing temperature on structural, morphological and optical properties of sol-gel nano-structured TiO 2 thin films[END_REF]. Based on the transmittance spectra, Fig. 7(a) shows dT/dE as a function of E for the deposited AZO thin films versus RF power. Band gap values of 3.16, 3.25, 3.12 and 3.02 eV are obtained for the samples deposited at sputtering power of 50, 100, 200 and 300 W, respectively. It can be seen that the band gap decreases with increasing sputtering power. Similar trends of the optical band gap variation versus RF power have also been reported in literature for sputtered AZO thin films. Sun et al. [START_REF] Sun | Structural and optoelectronic properties of AZO thin films prepared by RF magnetron sputtering at room temperature[END_REF] have found that the optical band gap of AZO thin films deposited at RF power of 200, 300, 400 and 500 W were equal to 3.68, 3.62, 3.57 and 3.48 eV, respectively. They attributed such band gap value decrease to a carrier concentration decrease with increasing sputtering power. Patel and Rawal [START_REF] Patel | Influence of power and temperature on properties of sputtered AZO films[END_REF] reported a similar decrease from 3.29 eV to 3.22 eV of the optical band gap value for sputtered AZO thin films versus RF power variation from 60 W to 180 W respectively. However, It should be noted that the band gap of the AZO film prepared at 100 W is slightly blue-shifted due to the fact that its thickness is lower (115 nm) as compared to the average thickness of the other samples (167 nm) [START_REF] Necib | Investigation of the effects of thickness on physical properties of AZO sol-gel films for photonic device applications[END_REF].

Electrical properties

Electrical properties of our sputtered AZO films have been obtained through Hall-effect measurements. Numerical data are given in Table 2. The variations of electrical resistivity, carrier concentration and Hall mobility versus RF sputtering power are plotted in Fig. 8(a). It is clear that electrical properties of sputtered AZO thin films are dependent on deposition power in a very large extend. As the RF power increases from 50 to 300 W, the carrier density decreases from 21.1×10 20 to 2.3×10 20 cm -3 , Hall mobility of free electrons decreases from 2.63 to 0.35 cm 2 /V s and the electrical resistivity increases from 1.65×10 -3 to 75.8×10 -3 Ω.cm, i.e. more than a factor 45.

Generally, in AZO thin films deposited at room temperature, the conduction is mainly influenced by the mobility. The decrease in carrier density and Hall mobility can be attributed to deterioration of thin film crystallinity, as evidenced previously by XRD analysis. The variations in grain size and film defects might be promoted by the increasing energy of the species occurring at high power. The best electrical properties for AZO films deposited at room temperature are obtained for those deposited at a low sputtering power of 50 W, with an electrical resistivity of 1.65×10 -3 Ω.cm. In this case, the Hall mobility and carrier density are, respectively, 2.63 cm 2 /V.s and 21.1×10 20 cm -3 :

those values are the best compromise in electrical properties. This result can be attributed to the best structural properties of deposited AZO film: a large preferential orientation along the c-axis, highest crystallite size (average size close to 30 nm), leading to a decrease of carrier diffusion at grain boundaries and interfaces and going along with an increase in the carrier lifetime.

To evaluate the quality and performance of the deposited AZO films, the figure of merit (Ф TC ) has been calculated for the deposited AZO thin films as defined by Haacke [START_REF] Haacke | New figure of merit for transparent conductors[END_REF],

using the following equation: Ф TC = T 10 /R s , where T is the transmittance (in this work

we have used the average optical transmittance of the AZO films from 400 to 800 nm to evaluate the film's performances in the visible range) and R s is the sheet resistance. Fig. 9 shows the plot of the Ф TC for AZO thin films deposited with sputtering power in the range of 50-300W. We observe a decrease of the figure of merit when the sputtering power is increased from 50 to 300 W. As discussed above, the AZO thin films prepared using 50 W sputtering power exhibit better performances with simultaneously a low sheet resistance of 175 Ω/sq and an average transmittance of 75 % in the visible region.

However, such values are not satisfying for films to be used as TCO. In order to improve the properties of the AZO film deposited at 50 W, two thin films deposited at the same time at room temperature have been subsequently annealed in vacuum for one hour at 200 and 400 °C, respectively. The results are presented and discussed in the following section.

Annealing effect on AZO films properties

From the XRD patterns shown in Fig. 2(b), the AZO thin films deposited at 50 W and annealed at 200 and 400 °C exhibit a (002) preferential orientation. The I 002 /I 103 diffraction peaks intensity ratio increases from 4.42 to 6.78 from the as-deposited sample and the annealed sample at 400°C, respectively. The average crystallite size increased after annealing from 29.28 nm for the as-deposited sample, to 38.12 nm for the sample annealed at 400°C. Furthermore, the (002) plane diffraction peak shifts towards a higher angle from 33.91° to 34.06° for the as-deposited film and annealed film at 400°C respectively (Table 1). Thus, the initial compressive stress decreases after the annealing treatment. Also, the cell parameters decrease upon annealing and the final values are close to the reference's one. Such variation is significant for an improvement of crystalline quality of annealed films with annealing temperature. The SEM and AFM images (Fig. 3(b) and 4(b)) display films with denser surface and regular grain morphology when annealing temperature increased up to 400°C. The roughness of the annealed films increases from 1.75 to 3.03 nm (Table 2) which may be associated to the increased average crystallite size, as estimated from XRD data analysis. The increase in both carrier concentration and Hall mobility leads, as expected to decrease resistivity, i.e. an increase in conductivity. The improvement in the electrical properties may be attributed to the reduction of grain boundaries of the AZO film with increasing the annealing temperature, resulting in an increase in the mobility of the carriers. The factor of merit (Ф TC ) value of 3.4×10 -3 Ω -1 sq after annealing at 400°C is 10 times higher than those calculated to the as-deposited films. It can be concluded that the film deposited at sputtering power of 50 W and annealed in vacuum for one hour at 400°C exhibits the best optical, electrical and structural properties. This result is a major issue for further applications of sputtered AZO films of this study as transparent conductive films.

Conclusions

AZO thin films have been successfully prepared on glass substrate by RF magnetron sputtering. The effects of sputtering power and annealing temperature on the electrical and optical properties have been discussed in this paper. XRD results have shown that AZO film deposited at a low power of 50 W has a larger average crystallite size in comparison with the films deposited at higher sputtering power. The obtained AZO film is preferentially oriented along the c-axis according to the intensity ratio of the diffraction peaks, which is attributed to a low surface free energy of the (002) plan. The data show that the crystallites in AZO films become smaller and the preferential orientation change gradually, as the sputtering power increases from 100 to 300 W. The variation of the XRD patterns with the sputtering power reveals that high sputtering power leads to structural degradation and multi-orientation growth. XPS analysis highlighted that, Zn and Al atoms existed only in their oxidized state in accordance with the XRD results, where no metallic phase was detected. SEM observations of AZO films have revealed dense and homogenous distribution of small grains on the surface.

AFM results have demonstrated that the sputtering power does not significantly influence the surface roughness and grain size. The R rms is found to increases from 1.57 to 3.5 nm when RF power is increased from 50 to 300 W. These trends could be attributed to the increase of the bombardment of the surface by the sputtered species at high power. All deposited AZO films exhibited average transmittance of 75-81% in the visible range (400-800 nm). According to Hall Effect measurements, electrical properties of the AZO films are found to be largely modified by the RF deposition power. Hence, the carrier density and Hall mobility decrease, and therefore the electrical resistivity increases from 1.65×10 -3 to 68.26×10 -3 Ω.cm, with increasing sputtering power from 50 to 300 W, respectively. Optimized AZO films, with 5.75×10 -4 Ω.cm electrical resistivity, average visible transmission of 86% and high figure of merit (Ф TC ) value of 3.4×10 -3 Ω -1 sq, have been obtained at 50 W deposition power and after annealing at 400°C for 1h under vacuum. The present study shows that AZO thin films are potential and good candidates for optoelectronic devices in the UV region.

Fatiha

  Challali, Djelloul Mendil, Tahar Touam, Thierry Chauveau, Valérie Bockelée, Alexis Garcia Sanchez, Azeddine Chelouche, Marie-Paule Besland To cite this version: Fatiha Challali, Djelloul Mendil, Tahar Touam, Thierry Chauveau, Valérie Bockelée, et al.. Effect of RF sputtering power and vacuum annealing on the properties of AZO thin films prepared from ceramic target in confocal configuration. Materials Science in Semiconductor Processing, 2020, 118, pp.105217. 10.1016/j.mssp.2020.105217. hal-03011753

Fig. 2 (

 2 Fig. 2(a) shows the GIXRD patterns of AZO thin films grown on glass substrates at different RF sputtering powers (50 W, 100 W, 200 W and 300 W). As displayed, all AZO films are crystallized. All recorded diffraction peaks can be indexed in the P63mc

Fig. 5 displays

 5 XPS core level spectra and the elemental components for (a) Zn 2p, (b) Al 2p and (c) O 1s for the AZO thin films grown at the four sputtering power values. They are calibrated in energy by setting carbon C 1s at 284.7 eV and fitted using a Shirley type base-line for the background and a pseudo-Voigt function for each component. The core level line of Zn 2p and Al 2p (Fig. 5 (a) and (b)) reveal high symmetry for all the AZO films. The Zn 2p 3/2 , Zn2p

Fig. 6 (

 6 b) shows transmittance spectra of the sputtered AZO thin films at 50 W associated with the conditions of as-deposited and annealed at 200 and 400°C, respectively. An average transmission of 75% in the visible range is obtained for the as-deposited film. After one hour annealing, the average transmittance is improved to 78% and 86% for the AZO films annealed at 200 and 400°C respectively. The optical transmittance is thus significantly improved by the annealing step. The variation of optical bandgap as a function of annealing temperature is extracted from the dT/dE plots gathered in Fig.7(b). The band gap increases from 3.16 eV for as-deposited film to 3.27 eV and 3.33 eV for the films annealed at 200°C and 400°C, respectively. Such increase is attributed to the carrier density increase upon annealing resulting in the bandgap widening according to the Burstein-Moss model[START_REF] Moss | The interpretation of the properties of indium antimonide[END_REF]. Fig.8(b)shows the effect of an annealing step and the annealing temperature on the electrical properties of the AZO films deposited at 50W.

Figures captionsFig. 1 .

 1 Figures captionsFig. 1. Schematic representation of the experimental setup.

Fig. 2 .

 2 Fig. 2. Grazing incidence XRD patterns of AZO thin films (a) deposited at different RF sputtering powers and (b) deposited at 50 W and annealed at 200 and 400°C for 1 h under vacuum conditions.

Fig. 3 .

 3 Fig. 3. Top-view SEM images of AZO thin films (a-d) deposited at various RF powers with the corresponding cross-section (inset) and (e-f) deposited at 50 W and annealed at 200 and 400°C.

Fig. 4 .

 4 Fig. 4. 2D AFM images of AZO thin films (a-d) deposited at different RF sputtering powers and (e-f) deposited at 50 W and annealed at 200 and 400°C.

Fig. 5 .

 5 Fig. 5. XPS core level spectra recorded for AZO thin films versus RF sputtering power (50, 100, 200, 300 W): (a) Zn 2p, (b) Al 2p, (c) O 1s and (d) O 1s core level for the as deposited AZO-50 W film and after 60 s soft etching.

Fig. 6 .

 6 Fig. 6. Optical transmittance spectra of AZO thin films (a) deposited at different RF sputtering powers and (b) deposited at 50 W and annealed at 200 and 400°C.

Fig. 7 .

 7 Fig. 7. dT/dE curves based on transmittance spectra of AZO thin films (a) deposited at different RF sputtering powers and (b) deposited at RF power of 50 W and annealed at 200 and 400°C.

Fig. 8 .

 8 Fig. 8. Variation of resistivity, carrier concentration and mobility of AZO thin films (a) with RF sputtering power and (b) as a function of annealing temperature of the films deposited at RF power of 50 W.

Fig. 9 .

 9 Fig. 9. Figure of merit of AZO thin films versus RF power in the 50-300 W range. The inset shows the effect of annealing temperature on the figure of merit of AZO thin films deposited at 50 W.

Fig. 1

 1 Fig. 1

Fig. 2

 2 Fig. 2

Fig. 3

 3 Fig. 3

Fig. 4 Fig. 5 .Fig. 6

 456 Fig. 4

Fig. 7

 7 Fig. 7

Fig. 8

 8 Fig. 8

Fig. 9

 9 Fig. 9

Table captions Table 1 :

 captions1 Structural parameters extracted from XRD analysis of AZO films deposited at various sputtering powers and for films deposited at 50 W after annealing at 200 and 400°C for 1 h under vacuum conditions. The last line "ref. data" gives reference values from the zincite structural model (ICDD PDF# 04-016-6648).

Table 2 :

 2 Roughness, resistivity, Hall mobility, carrier concentration, average transmittance, optical band gap and factor of merit (Ф TC ) for the as-deposited AZO thin films versus the sputtering power and for films deposited at 50 W after annealing at 200 and 400°C for 1 h under vacuum conditions.

Table 2

 2

	Sputtering power (W)	Vacuum annealing (°C)	R rms (nm)	Resistivity (10 -3 Ω.cm)	Hall mobility (cm 2 /V s)	Carrier concentration (10 20 cm -3 )	Average transmittance (%)	Optical gap (eV)	Ф TC (10 -4 Ω -1 sq)
	50	-	1.57	1.65	2.63	21.10	75	3.16	3.04
	50	200	2.30	0.81	2.65	29.45	78	3.27	9.27
	50	400	3.03	0.57	2.79	38.85	86	3.33	33.98
	100	-	2	4.51	1.34	10.4	79	3.25	1.26
	200	-	2.69	49.42	1.18	2.61	81	3.12	0.17
	300	-	3.5	75.80	0.35	2.33	79	3.02	0.14

Acknowledgments

XPS and EDS analysis have been performed at Institut des Matériaux Jean Rouxel, Université de Nantes, France. The authors gratefully acknowledge Nicolas STEPHANT and Jonathan HAMON for EDS and XPS analysis respectively.

Declaration of interests

☒ The authors declare that they have no known competing financial interests or personal relationships that could have appeared to influence the work reported in this paper.

☐The authors declare the following financial interests/personal relationships which may be considered as potential competing interests: