Bogdan Nicolae
email: bogdan.nicolae@ie.ibm.com

Pierre Riteau
email: priteau@uchicago.edu

Kate Keahey
email: keahey@mcs.anl.gov

Keywords: cloud computing, storage elasticity, adaptive I/O, virtual disk, block-level caching

Storage elasticity on IaaS clouds is a crucial feature in the age of data-intensive computing. However, the traditional provisioning model of leveraging virtual disks of fixed capacity and performance characteristics has limited ability to match the increasingly dynamic nature of I/O application requirements. This mismatch is particularly problematic in the context of scientific applications that interleave periods of I/O inactivity with I/O intensive bursts. In this context, overprovisioning for best performance during peaks leads to significant extra costs because of unnecessarily tied-up resources, while any other trade-off leads to performance loss. This paper provides a transparent solution that automatically boosts I/O bandwidth during peaks for underlying virtual disks, effectively avoiding overprovisioning without performance loss. Our proposal relies on the idea of leveraging short-lived virtual disks of better performance characteristics (and thus more expensive) to act during peaks as a caching layer for the persistent virtual disks where the application data is stored. We show how this idea can be achieved efficiently at the block-device level, using a caching mechanism that leverages iterative behavior and learns from past experience. We demonstrate the benefits of our proposal both for microbenchmarks and for two real-life applications using largescale experiments.

Transparent Throughput Elasticity for IaaS Cloud Storage Using Guest-Side Block-Level Caching I. INTRODUCTION Elasticity (i.e., the ability to acquire and release resources on-demand as a response to changes of application requirements during runtime) is a key feature that drives the popularity of infrastructure clouds (Infrastructure-as-a-Service, or IaaS, clouds). To date, much effort has been dedicated to studying the elasticity of computational resources, which in the context of IaaS clouds is strongly related to the management of virtual machine (VM) instances [START_REF] Mao | Auto-scaling to minimize cost and meet application deadlines in cloud workflows[END_REF], [START_REF] Marshall | Elastic site: Using clouds to elastically extend site resources[END_REF], [START_REF] Niu | Cost-effective cloud hpc resource provisioning by building semi-elastic virtual clusters[END_REF]: when to add and terminate instances, how many and what type to choose, and so forth. Elasticity of storage has gained comparatively little attention, however, despite the fact that applications are becoming increasingly data-intensive and thus need costeffective means to store and access data.

An important aspect of storage elasticity is the management of I/O access throughput. Traditional IaaS platforms offer little support to address this aspect: users have to manually provision raw virtual disks of predetermined capacity and performance characteristics (i.e., latency and throughput) that can be freely attached to and detached from VM instances (e.g. , Amazon Elastic Block Storage (EBS) [START_REF]Amazon Elastic Block Storage (EBS)[END_REF]). Naturally, provisioning a slower virtual disk incurs lower costs when compared with using a faster disk; however, this comes at the expense of potentially degraded application performance because of slower I/O operations.

This trade-off has important consequences in the context of large-scale, distributed scientific applications that exhibit an iterative behavior. Such applications often interleave computationally intensive phases with I/O intensive phases. For example, a majority of high-performance computing (HPC) numerical simulations model the evolution of physical phenomena in time by using a bulk-synchronous approach. This involves a synchronization point at the end of each iteration in order to write intermediate output data about the simulation, as well as periodic checkpoints that are needed for a variety of tasks [START_REF] Nicolae | BlobCR: Virtual disk based checkpointrestart for HPC applications on IaaS clouds[END_REF] such as migration, debugging, and minimizing the amount of lost computation in case of failures. Since many processes share the same storage (e.g., all processes on the same node share the same local disks), this behavior translates to periods of little I/O activity that are interleaved with periods of highly intensive I/O peaks.

Since time to solution is an important concern, users often overprovision faster virtual disks to achieve the best performance during I/O peaks and underuse this expensive throughput outside the I/O peaks. Since scientific applications tend to run in configurations that include a large number of VMs and virtual disks, this waste can quickly get multiplied by scale, prompting the need for an elastic solution.

This paper introduces an elastic disk throughput solution that can deliver high performance during I/O peaks while minimizing costs related to storage. Our proposal relies on the idea of using small, short-lived, and fast virtual disks to temporarily boost the maximum achievable throughput during I/O peaks by acting as a caching layer for larger but slower virtual disks that are used as primary storage. We show how this approach can be efficiently achieved in a completely transparent fashion by exposing a specialized block device inside the guest operating system that hides all details of virtual disk management at the lowest level. Our approach effectively enables any higher-level storage abstraction to take advantage of throughput elasticity, including those systems not originally designed to operate on IaaS clouds. In effect, we cast throughput elasticity as a block-device caching problem where performance is complemented by cost considerations.

Our contributions can be summarized as follows:

• We introduce the concept of throughput elasticity as well as a series of requirements, cost model and design considerations that guide our approach to providing it transparently at the block-device level. In particular, we describe a caching strategy that adapts to iterative behavior and learns from past experience in order to maximize the I/O boost during peaks, while minimizing the usage of fast virtual disks. (Section III-A)

• We show how to apply these design considerations in practice through a series of building blocks (and their corresponding implementation as a prototype) that run inside the VM instances of the users and interact with a typical IaaS cloud architecture. (Sections III-C and III-D)

• We evaluate our approach in a series of experiments conducted on dozens of nodes of the Shamrock experimental testbed, using both synthetic benchmarks and reallife applications. In this context, we demonstrate real-life reductions of up to 65% of storage costs at the expense of minimal performance overhead (3.3%) compared with overprovisioning. (Section IV)

II. RELATED WORK

Hybrid file systems [START_REF] Wang | The conquest file system: Better performance through a disk/persistent-ram hybrid design[END_REF], [START_REF] Qiu | Nvmfs: A hybrid file system for improving random write in nand-flash ssd[END_REF] and associated caching strategies [START_REF] Forney | Storage-aware caching: Revisiting caching for heterogeneous storage systems[END_REF], [START_REF] Wu | An adaptive write buffer management scheme for flash-based ssds[END_REF] have long been used to combine multiple devices of different types (e.g., SSDs, HDDs, nonvolatile memories). Generally, however, they are designed to use fixed storage resources available as physical hardware in order to improve access performance. Unlike our approach, such strategies are not concerned with being economical and minimizing resource usage. Furthermore, if the application needs a storage abstraction that is not file-based, then a file system introduces unnecessary overhead.

In the area of caching, Wang et. al. studied the problem of dynamically selecting the caching policy under varying workloads [START_REF] Wang | Sopa: Selecting the optimal caching policy adaptively[END_REF]. The caching framework selects a caching policy and reconfigures the storage system on the fly based on access traces gathered and analyzed during application runtime. An aspect of adaptation to access pattern is also explored by our previous work [START_REF] Nicolae | Leveraging Collaborative Content Exchange for On-Demand VM Multi-Deployments in IaaS Clouds[END_REF], however, the focus is on scalable virtual disk on-demand image content delivery at large scale. Also with respect to caching strategies, an increasingly popular target is the newer generation of flash-based devices. For example, in [START_REF] Chang | A driver-layer caching policy for removable storage devices[END_REF], special hybrid trees are proposed to organize and manipulate intervals of cached writes. Although orthogonal to our own work, such efforts provide valuable insight in terms of how caching is handled on the host that exposes virtual disks to the VMs, which may influence how to best leverage guest-level caching if additional information is available.

Moving upward in the storage stack at the virtualization level, several approaches aim to accelerate the throughput of virtual disks at hypervisor level or below. Jo et al. [START_REF] Jo | Ssd-hddhybrid virtual disk in consolidated environments[END_REF] proposed a hybrid virtual disk based on a combination of an SSD and an HDD. Contrarily to our solution, the SSD in their approach is read-only and used only to improve read performance to the template VM image. All write operations are sent to the HDD to avoid degrading the performance of flash storage. Using a fast device to cache both reads and writes from a read-only virtual disk snapshot is possible using copy-on-write and/or mirroring [START_REF]The QCOW2 Image Format[END_REF], [START_REF] Meyer | Parallax: Virtual disks for virtual machines[END_REF], [START_REF] Nicolae | Going back and forth: Efficient multi-deployment and multi-snapshotting on clouds[END_REF]. However, one of the disadvantages in this context is fragmentation, for which specialized strategies might be necessary [START_REF] Nicolae | BlobCR: Virtual disk based checkpointrestart for HPC applications on IaaS clouds[END_REF].

How to virtualize bandwidth in a cloud environment was explored at various levels. S-CAVE developers [START_REF] Luo | S-cave: Effective ssd caching to improve virtual machine storage performance[END_REF] propose to leverage the unique position of the hypervisor in order to efficiently share SSD caches between multiple VMs. Similarly, vPFS [START_REF] Xu | vPFS: Bandwidth virtualization of parallel storage systems[END_REF] introduces a bandwidth virtualization layer for parallel file systems that schedules parallel I/Os from different applications based on configurable policies. Unlike our approach, the focus in this context is bandwidth isolation between multiple clients, as opposed to elasticity.

Storage elasticity on IaaS clouds was explored at coarse granularity by Lim et al. [START_REF] Lim | Automated control for elastic storage[END_REF] for multitier application services, with a focus on how to add and remove entire storage nodes and how to rebalance data accordingly. Higher level service processing acceleration was described in [START_REF] Chiu | Elastic cloud caches for accelerating service-oriented computations[END_REF]. This work introduces an elasticity aspect in the form of a series of algorithms to scale the cache system up during peak query times and back down to save costs. LogBase [START_REF] Vo | Logbase: A scalable log-structured database system in the cloud[END_REF] is another elastic storage effort that employs a log-structured database system targeted at write-intensive workloads. Unlike our approach, the goal is to to improve write performance and simplifies recovery. Chen et al. introduced Walnut [START_REF] Chen | Walnut: A unified cloud object store[END_REF], an object store that provides elasticity and high availability across Yahoo!'s data clouds and is specifically optimized for the dataintensive workloads observed in these clouds: Hadoop [START_REF] White | Hadoop: The Definitive Guide[END_REF], MObStor (unstructured storage similar to [START_REF]Amazon Elastic Block Storage (S3)[END_REF]), PNUTS [START_REF] Cooper | Pnuts: Yahoo!'s hosted data serving platform[END_REF], and so forth. The main goal is sharing of hardware resources across hitherto siloed clouds of different types, offering greater potential for intelligent load balancing and efficient elastic operation, while simplifying the operational tasks related to data storage. Our own previous work [START_REF] Nicolae | Bursting the cloud data bubble: Towards transparent storage elasticity in iaas clouds[END_REF] focused on storage elasticity from the perspective of space utilization, aiming to adapt transparently to growing/shrinking data sizes by means of a POSIX-compatible file system that automatically adds and removes virtual disks accordingly.

The work we present here focuses on a specific aspect of elasticity: minimizing the waste caused by overprovisioning of throughput transparently without performance degradation. To our best knowledge, we are the first to explore the benefits of elasticity under such circumstances.

III. SYSTEM DESIGN

In a nutshell, our proposal relies on a simple core idea: the use of small and short-lived virtual disks of high-throughput capability (with higher price per gigabyte) to transparently boost the I/O performance during peak utilization of slower (and cheaper per gigabyte) virtual disks that are continuously used by the application to accumulate persistent data. We use the former as a ephemeral caching device and the latter as a backing device. When the caching device is in operation, it acts as a read/write caching layer at the block level that uses an adaptive mechanism to asynchronously flush dirty blocks back to the backing device. Besides the technical challenges related to achieving transparency efficiently at the block level, the main challenge in this context is the focus on cost reduction, which brings a novel perspective to the otherwise well-studied caching domain. Several critical questions arise: How large should the virtual disk acting as a cache be? When and for how long do we need it? What caching strategy should we use?

To answer these questions, we introduce a series of design considerations formulated in response to the problem we study. We give a general description of these design considerations (Section III-A), show how to adopt them in a typical IaaS cloud (Section III-C), and briefly describe a prototype that implements our approach (Section III-D).

A. Design considerations

Our proposal relies on three key design principles: 1) Transparent block level caching: Storage is typically provisioned on IaaS clouds in the form of virtual disks that are created by using a predefined size and performance characteristics (i.e., throughput). Although the virtual disks can be freely attached to and detached from running VM instances, this degree of elasticity is hard to leverage directly at the application level in order to deal with fluctuating I/O throughput requirements: data would have to be constantly migrated to/from a slower/faster device, thereby generating high performance and cost overheads that are unacceptable if a large amount of data accumulates during runtime or the fluctuations happen over short periods of time. Even if such an approach were feasible, applications often do not leverage virtual disks directly but rely on storage abstractions (e.g., a file system) that were not designed to add/remove disks on the fly. Thus, it is desirable to handle throughput elasticity in a transparent fashion at the lowest level.

In response to this need, we propose a solution that works at the block level. Specifically, we expose a block device in the guest operating system that replaces the virtual disk normally leveraged by users directly, using it as a backing device that all I/O is redirected to. When I/O throughput utilization rises above the utilization threshold (UT ), a second, faster virtual disk (referred to as the caching device) is provisioned to act as a caching layer for the backing device, temporarily boosting I/O throughput until the threshold falls below UT . At this point, the data from the caching device is flushed to the backing device, and the caching device is removed, with I/O passing directly to the backing device again. Such an approach enables transparency not only from the user's perspective but also from the cloud provider's perspective: it works at the guest level and does not require changes to the virtualization infrastructure or provisioning model.

2) Adaptive flushing of dirty blocks: A solution that alternates between a fast and a slow virtual disk to achieve elasticity suffers from poor I/O performance and is unsustainable, because an increasingly larger set of accumulated data needs to be migrated between the two devices. On the other hand, a solution based on caching dramatically reduces the amount of data movements, because only the most recently used blocks are involved (we call these blocks "hot"). Even when considering only the "hot" blocks, however, the constant movement between the backing device and the caching device naturally steals bandwidth from both devices, effectively limiting the potential to boost the I/O throughput at full capacity.

To address this issue, we propose to make the caching device act like a regular block-level read/write cache but with a custom dirty block commit strategy. More specifically, during a read operation, any requested blocks that are not already available on the caching device are first fetched from the backing device and written to the caching device by using an LRU (least recently used) eviction strategy. Then, the read operation is fully redirected to the caching device. In the case of a write operation, all dirty blocks are initially written to the cache only and are later committed to the backing device.

The strategy to commit dirty blocks works in two phases. In the first phase, we use a mechanism that closely resembles writeback and prioritizes application I/O: it flushes dirty blocks asynchronously to the backing device only when spare bandwidth is available or when the caching device is full and needs to evict. Once the required I/O throughput drops to a level that the backing device is able to sustain on its own, a transition to the second phase is initiated, in which the priority is reversed: the flushing process proceeds at full speed at the expense of application I/O. At the same time, only reads are allowed from the caching device starting from this moment onwards, with writes bypassing the caching device and being redirected to the backing device. We refer to this two-phase strategy as "dynamic writeback."

Note that finding the right moment to reverse the priority is important: if it happens too soon, the application will suffer a performance penalty because of background flushes. If it happens too late, the caching device stays up longer than necessary and thus incurs extra costs. In order to deal with this issue, the decision of when to reverse the priority is based on a configurable amount of time ID (inactivity delay), which represents how much the application's I/O throughput needs to stay below UT before we initiate the reverse of priority. Since the flush process is prioritized after the reverse and writes bypass the caching device, eventually all dirty blocks will be committed to backing device. At this point, one can safely detach the caching device and remove its corresponding virtual disk.

3) Access-pattern-aware cache sizing: Using a caching device can be expensive, particularly since while it is active the user is charged for both the caching device and the backing device. Thus, the caching device cannot be arbitrarily large for two reasons.

First, the flushing of dirty data does not happen instantly after the decision was made to proceed to the second phase of the commit strategy, thus delaying the moment when the caching device can be safely removed. Second, since dirty data tends to accumulate proportionally to the cache size, a large caching device is likely to cause a long flush delay. On the other hand, if the cache size is too small, flushing may be forced prematurely, limiting the potential to boost application I/O at full capacity. Thus, it is important to automatically optimize the cache size specifically for the access pattern of the application observed during the I/O-intensive phase.

To optimize the size of the caching device, we propose to leverage the predominantly repetitive I/O behavior of largescale scientific applications in order to learn from the experience of the previous I/O-intensive phases for which a caching device was in use. More specifically, we start with a large cache size for the first time when an I/O boost is needed and then monitor the cache utilization. If the caching device was used only partially, then we decrease its size for the next I/O-intensive phase down to the size that was actually used. Similarly, if too much flushing was forced prematurely during the first phase of the commit strategy (in which application I/O is prioritized), we increase the cache size for the next I/O-intensive phase by the amount that had to be evicted.

B. Cost model

We assume a cost model that charges users for utilization at fine grain that can be as little as the order of seconds. This approach is already adopted in the cost model: for instance, Google Compute Engine charges persistent disks at a granularity of seconds [START_REF] Google | Google Compute Engine Pricing[END_REF]. Since we are dealing with different types of virtual disks, we approximate a realistic cost by defining utilization as a function of both the size of the virtual disk and its throughput characteristics (i.e., reserved bandwidth).

Note that the utilization is based on reserved bandwidth, which relates to the high-end spectrum of cloud offerings such as the Object Storage offered by IBM SoftLayer [START_REF]SoftLayer[END_REF] or provisioned Elastic Block Store (EBS) volumes offered by Amazon [START_REF]Amazon Elastic Block Storage (EBS)[END_REF]. This is different from the more popular "classic EBS" model where users are not offered any bandwidth guarantees and are charged per IOPS instead. We justify the need to rely on reserved bandwidth because our primary target is tightly coupled HPC applications that run at large scale and are known for their susceptibility to system noise amplification [START_REF] Hoefler | Characterizing the influence of system noise on large-scale applications by simulation[END_REF] (i.e., the bulk-synchronous nature makes processes sensitive to delays that affect all other processes, which in our context means that a slow virtual disk attached to a VM instance causes slowdown of all other VM instances where the application processes are running). Thus, reasoning in terms of average throughput (as is the case of classic EBS volumes) is not feasible in our context.

To quantify the utilization in accordance with the requirements mentioned above, we introduce a metric called adjusted storage accumulation, which reflects the total cost that accumulates over a period of time t for a VM instance as a result of storage use. We assume that for every time unit of utilization, a virtual disk of size N and reserved bandwidth B incurs a cost of N •B. Thus, if a single virtual disk is attached to a VM instance for the whole duration t, the total cost is C(t) = B • N •t. When using both a backing device and a caching device to implement our approach, the backing device will continuously contribute to the total cost, as in the case of a single virtual disk, whereas the caching device will contribute only while it is used and proportionally to its dynamically adjusted size. More formally, this approach can be expressed as follows.

C(t) = B b • N • t + B c • t 0 M(x) • dx
N and B b are the size and bandwidth of the backing device, respectively; B c is the bandwidth of the caching device; and M(x) is the size of the caching device at a given moment x (0 if the caching device is not used at that moment). We express the bandwidth in MB/s, the size in GB, and the time in seconds, which results in a combined metric unit that we call adjusted GB seconds (denoted AGBs). For the rest of this paper, we use this unit to express the cost.

C. Architecture

The simplified architecture of our approach is depicted in Figure 1. We assume that the VMs are deployed on an IaaS cloud that enables users to provision raw storage as virtual disks. Furthermore, we assume that the cloud hypervisor can dynamically attach and detach virtual disks to the VM instances (a standard feature in most production-ready hypervisors).

Once booted, the VM instance initializes an adaptive block device that uses a nonexpensive virtual disk of limited throughput as the backing device. The adaptive block device is exposed inside the guest OS as a standard block device and can be leveraged as such (e.g., it can be formatted by using a file system). Once the adaptive block device is running, a controller daemon collects I/O statistics about it at fine granularity (e.g., sustained throughput); and, based on these statistics, it implements the design principles described in Section III-A. Specifically, during an I/O-intensive phase, it interacts with a standardized IaaS API in order to attach a virtual disk of optimized size (based on the experience from the previous I/O intensive phases) that will act as the caching device. Once the VM instance has recognized the caching device, it incorporates the corresponding guest-level block device into the adaptive block device. All interactions between the caching device and the backing device are handled transparently by our adaptive block device based on the principles mentioned in Section III-A. Once the I/O-intensive phase completes, the controller signals the adaptive block device to start flushing. After the flushing has completed, it detaches the corresponding virtual disk from the VM instance using the IaaS API and destroys the disk, thus stopping the accumulation of storage costs due to caching.

How to provision a virtual disk is open to a wide range of choices: various types of devices (e.g., HDDs, SSDs, RAMdisks) can be directly leveraged by the hypervisor and exposed as virtual disks inside the VM instance. If devices need to be shared, another option is to use virtual disk images of various formats (e.g., raw, QCOW2 [START_REF]The QCOW2 Image Format[END_REF]), hosted either locally or remotely on different types of devices. Virtual disks also may Fig. 1. Integration of our approach into an IaaS cloud architecture; components that are part of our design are highlighted with a darker background. be provided by specialized services, such as Amazon EBS [START_REF]Amazon Elastic Block Storage (EBS)[END_REF] or our own previous work [START_REF] Nicolae | Going back and forth: Efficient multi-deployment and multi-snapshotting on clouds[END_REF]. Our approach is agnostic to any of these choices as long as they are handled through a standardized IaaS API.

D. Implementation details

In this section, we briefly introduce a prototype that implements the components presented in Section III-C.

We rely on Bcache [START_REF]BCache[END_REF] to implement the adaptive block device. Our choice was motivated by several factors. First, it offers out-of-the-box support to cache hot blocks of designated devices on other devices, while offering support to activate/deactivate caching in an online fashion. Second, it is highly configurable and offers detailed statistics about I/O utilization. In particular, the ability to control the caching strategy and the interaction between the backing device and caching device was crucial in enabling the implementation of the design principles presented in Section III-A. Third, it is implemented at the kernel level and is specifically designed to minimize performance overhead. Since we need to handle another level of indirection on top of the virtualized nature of the backing and caching device, this aspect is important in our context. Furthermore, it is part of the official Linux kernel and thus enjoys widespread exposure and adoption.

The controller was implemented as a Python daemon. We rely on psutil to get per-disk I/O statistics. The interaction with Bcache is implemented directly through the sysfs interface. We note also certain nontrivial aspects related to the management of virtual disks, in particular how to detect inside the guest when the disk is recognized by the kernel. To this end, we rely on pyudev, which implements an accessible interface to libudev, including asynchronous monitoring of devices in a dedicated background thread.

IV. EXPERIMENTAL EVALUATION

This section presents the experimental evaluation of our approach. We introduce the experimental setup and methodology (Section IV-A), and discuss results for microbenchmarks (Section IV-B) and two real-life HPC applications (Section IV-C and Section IV-D).

A. Experimental setup

Our experiments were performed on the Shamrock testbed of the Exascale Systems group of IBM Research in Dublin. For this work, we used a reservation of 32 nodes interconnected with Gigabit Ethernet, each of which features an Intel Xeon X5670 CPU (12 cores), HDD local storage of 1 TB, and 128 GB of RAM.

We simulate a cloud environment using QEMU/KVM 1.6 as the hypervisor. The VM instances run a recent Debian Sid (3.12 Linux kernel) as the guest operating system. The network interface of each VM uses the virtio driver and is bridged on the host with the physical interface in order to enable pointto-point communication between any pair of VMs.

We compare three approaches throughout our evaluation: Static preallocation using a slow virtual disk: In this setting, a large, fixed-size virtual disk is created on the local HDD of each host as a RAW file and attached to each VM instance after booting. The maximum I/O bandwidth of the virtio driver is fixed by using the hypervisor monitor, and the host-side caching is disabled to avoid interference. After booting the VM instances, all virtual disks are formatted by using the ext4 file system, and the corresponding mount points are used for all I/O generated during the experiments. We refer to this setting as static-slow.

Static preallocation using a fast virtual disk: This setting is similar to the one described above, except that the fixedsized virtual disk is hosted as a RAW file in a RAMdisk. Again, the maximum bandwidth available to the guest operating system is fixed. However, it is several times higher than in the previous case and is intended to simulate a faster device, such as an SSD. We refer to this setting as static-fast. a) Transparent throughput elasticity using our approach: In this setting, we use a virtual disk with properties identical to those in the static-slow case as a backing device. Whenever more bandwidth is needed, a new virtual disk with properties identical to those in the static-fast case is used as a caching device to temporarily boost I/O throughput. The size of the caching device, as well as the moment when to attach and detach it, is automatically determined by our approach during runtime (as explained in Section III-A). Furthermore, the utilization threshold UT is set to 30%, and the inactivity delay ID is set to 30 s. We refer to this setting as adaptive.

These approaches are compared based on the following metrics:

• Performance overhead is the difference in performance observed between static-fast, which is used as a baseline for the best possible performance, and the other two approaches that leverage slower virtual disks. In the case of microbenchmarks, performance refers to the sustained I/O throughput as perceived by the application. In the case of real-life applications, performance refers to the completion time, which measures the overall end-impact of each approach on the application runtime.

• Total adjusted storage accumulation is the sum of the adjusted storage accumulation for all VM instances involved in the experiment. It is used to quantify storage-related costs for the entire application deployment according to the cost model introduced in Section III-B.

• Evolution of I/O activity represents the total I/O bandwidth utilization (due to reads and writes to virtual disks) for all VM instances. In the static-fast and static-slow cases, it overlaps with the sustained I/O throughput as perceived by the application. In the adaptive case, it measures all background I/O activity to the backing device and caching device (which can be higher than staticfast when both devices are active simultaneously). This metric is important for studying how the compute phases interleave with the I/O phases and how the backing device interacts with the caching device during this interleaving.

B. Microbenchmarks

Our first series of experiments focuses on the I/O performance of all three approaches in synthetic settings. For this purpose, we use Bonnie++, a standard I/O benchmarking tool that measures read, write, and rewrite throughput when using 32 KB blocks (default value used in the experiments). We focus on these values because they are the most representative of real-life large-scale scientific applications (as opposed to byte-by-byte read/write throughput or other file-system related statistics that are reported).

We run the following experiment: a single VM instance is booted and Bonnie++ is launched three times in a row, with a 120 second pause between each run. We repeat the experiment for each approach three times and record the average of the relevant Bonnie++ statistics. The memory allocated to the VM is fixed at 2 GB. The virtual disk settings are as follows: the size of the backing device is fixed at 10 GB, with a reserved bandwidth of 60 MB/s for both static-slow and adaptive and a reserved bandwidth of 128 MB/s for static-fast. For adaptive, the reserved bandwidth of the caching device is fixed at 128 MB/s.

The Bonnie++ statistics are depicted in Figure 2(a). Since our approach automatically adjusts the size of the caching device after the first iteration, we depict the results for the first run and the remaining two runs separately. The initial cache size is set to 10 GB, which is lowered by our approach to 6 GB for the consecutive iterations. We denote the first iteration adaptive-first, and the average of the second and third iteration adaptive-rest.

As can be observed, in the case of static-slow, the backing HDD limits the write throughput to 33 MB/s (out of 60 MB/s), which is not the case for static-fast, where the maximum write throughput of 128 MB/s can be achieved). At approximately 100 MB/s, both adaptive approaches have an overhead of 30% of write throughput compared with static-fast. With respect to overwrite throughput, all approaches suffer performance degradation compared with a simple write, which is due to the read, seek back, and write cycle employed by Bonnie++ for each block. The large gap between static-slow and the rest is still present; however, this time the overhead between the two adaptive approaches and static-fast is almost negligible. With respect to read throughput, a considerable increase is present for all approaches as a result of caching. Also, for the first time, a visible difference is noticeable between the two adaptive approaches: adaptive-first is comparable to static-fast whereas adaptive-rest has an overhead 25%. This overhead is due to the smaller size of the caching device, which forces writeback to the backing device earlier (and thus causes reads from the caching device).

To understand the interaction between the backing device and the caching device better, we depict the evolution of I/O activity (as measured at five-second granularity) in Figure 2(b). As expected, both static approaches have a highly deterministic behavior, with a flatter and elongated pattern observable for static-slow. In the case of adaptive, an initial burst is observable for the first run, which is followed by a smaller secondary burst. This secondary burst corresponds to cache flushing after ID elapsed that triggers the detach request. Thanks to the automatic adjustment of the size of the caching device to a smaller value, we observe earlier writeback. This causes a shorter flush burst that is fused into the primary burst, effectively enabling the caching device to be detached sooner (which reduces utilization cost).

C. Case study: CM1

Our next series of experiments evaluates the behavior of our system for CM1, a real-life HPC application that is a three-dimensional, nonhydrostatic, nonlinear, time-dependent numerical model suitable for idealized studies of atmospheric phenomena. This MPI application is used to study smallscale processes that occur in the atmosphere of the Earth (such as hurricanes) and is representative of a large class of HPC bulk-synchronous stencil applications that exhibit an iterative behavior of alternating between a compute phase and an I/O-intensive phase to write intermediate output results and checkpoints (used to restart from in case of failures).

For this work, we have chosen as input data a 3D hurricane that is a version of the Bryan and Rotunno simulations [START_REF] Bryan | The maximum intensity of tropical cyclones in axisymmetric numerical model simulations[END_REF]. We run the simulation of this 3D hurricane on 32 VMs, with each VM hosted on a separate physical node and equipped with 11 virtual cores (out of which 10 are reserved for CM1 and 1 reserved for guest OS overhead). Furthermore, 1 core is reserved for the hypervisor. Each VM is allocated 18 GB of RAM, enough to fill the need of the MPI processes. Thus, the overall setup totals 320 MPI processes that generate a heavy load on the underlying nodes. The output/checkpointing frequency is set at 50 simulation time steps, out of a total of 160 time steps. This setup leads to the following access pattern: right after initialization, the application dumps the initial state, which causes a first I/O-intensive phase. After that there follow three more I/O-intensive phases of higher magnitude that are interleaved with computational phases.

The settings are as follows: the size of the backing device is fixed at 50 GB, while the reserved bandwidth is fixed at 33 MB/s for static-slow and adaptive (according the maximum write throughput observed in microbenchmarks in order to avoid overprovisioning). The bandwidth in the case of staticfast is fixed at 128 MB/s. The caching device has a bandwidth of 128 MB/s and an initial size of 10 GB. Each experiment is repeated five times for all three approaches, and the results are averaged.

Performance results are summarized in Table I. As can be observed, speeding the I/O phase can lead to a significant boost in overall completion time: compared with static-fast, which is used as a baseline, adaptive has a small overhead of 3.3%, which contrasts with the large overhead of 23% observed for static-slow. These results are significant both directly (the users want a minimal time to solution) and indirectly (longer runtimes mean the VMs need to stay up longer and thus generate more costs). Even if the overhead of adaptive is small, it is justifiable only if the storage space and bandwidth utilization can be significantly lowered according to the cost model introduced in Section III-B. To quantify these costs, we compute the adjusted storage accumulation for all three approaches. More specifically, for each VM instance i, in the case of staticslow we have C i (t) = 33 • 50 • t, while for static-fast we have C i (t) = 128 × 50 • t. For adaptive, we have

C i (t) = 33 • 50 • t + 128 • t 0 M i (x) • dx. M i (x)
is the size of the caching device for VM instance i at moment x and is automatically determined by our approach (0 if the caching device is not in use). To facilitate the calculation of C i (t) in practice, we assume a discretization of time at fivesecond granularity (i.e., we probe for the value M i (x) every five seconds and assume it stays constant during this interval). Since we have a total of 32 VM instances, the total cost in each of the three cases is

TC(t) = 32 ∑ i=1 C i (t).
TC is expressed in AGBs (introduced in Section III-B) and is depicted in Figure 3(a). One can see a large gap between static-slow and static-fast, which steadily grows as the application progresses in time. However, not only is adaptive very close to static-slow, but overall it even manages to reduce the total adjusted storage accumulation by almost 7% because the application finishes faster. Compared with static-fast, this amounts to a reduction of 65% in cost, which is a large gain for the price of 3.3% performance overhead.

The evolution of total I/O activity in depicted in Figure 3(b). To calculate it, we divide the time (x axis) in five-second intervals and sum the I/O throughput (expressed in MB/s) observed during each interval for all VM instances (y axis). Since the application is bulk-synchronous, the I/O-intensive phases and the compute intensive phases overlap for all VM instances at the same time, leading to a clear delimitation in terms of I/O activity for all three approaches.

In the case of static-fast and static-slow, the I/O phases are short but of high amplitude and, respectively, longer but of lower amplitude. These results directly correspond to the ability of the underlying backing device to handle a fixed amount of I/O activity using a high and, respectively, low reserved bandwidth. With our approach, the behavior is more complex: the first I/O phase of the application generates a high I/O burst, followed by a clearly visible flush period. Since the first I/O phase is less intensive than the rest (for all three approaches), our approach picks a 4 GB cache device for the second phase, which then is increased to 6 GB for the last two phases. All I/O phases except the first exhibit an I/O burst that is fused to the flush period, with only a small difference noticeable between the second phase and the third, which itself is almost identical to the fourth. Intuitively, this hints at the ability of our approach to optimally adjust the cache size based on the previous I/O-intensive phases.

D. Case study: LAMMPS

A second real-life HPC application we use to demonstrate the benefits of our approach is LAMMPS [START_REF] Plimpton | Fast parallel algorithms for short-range molecular dynamics[END_REF], a large-scale atomic/molecular massively parallel simulator. LAMMPS can be used to model atoms or, more generically, particles at the atomic, meso, or continuum scale. Such modeling is useful in understanding and designing solid-state materials (metals, semiconductors), soft matter (biomolecules, polymers), and coarse-grained or mesoscopic systems. Similar to CM1, it exhibits an iterative behavior of alternating between a compute phase and an I/O-intensive phase to write intermediate output results and checkpoints, which are used for restart in case of failures.

For this work, we have chosen as input data a 3D Lennard-Jones melting scenario. Melting, the phenomenon of phase transition from a crystalline solid state to a liquid state, is one of the most important phase transformations in the processing and applications of materials, playing an important role in materials science and engineering [START_REF] Das | Melting transition of confined lennard-jones solids in slit pores[END_REF]. As in the case of CM1, we run the simulation on 32 VMs, with each VM hosted on a separate physical node and equipped with 11 virtual cores, each of which corresponds to a physical core, with the remaining physical core reserved for the hypervisor. Inside each VM, 10 of the virtual cores are reserved for MPI processes, while the remaining core is reserved for operating system overhead. Each MPI process is responsible for a 20x160x160 subdomain. Thus, the total deployment amounts to 320 MPI processes that are evenly spread over 32 VMs and process a 6400x160x160 grid. The output/checkpointing frequency is set at 30 simulation time steps, out of a total of 100 time steps. This results in an initial I/O-intensive phase to dump the initial state, followed by three I/O-intensive phases interleaved with computational phases.

The settings are identical to the setup used in Section IV-C for CM1: the size of the backing device is fixed at 50 GB, with a reserved bandwidth of 33 MB/s for static-slow and adaptive. The bandwidth of the backing device is fixed at 128 MB/s for static-fast. The caching device has a bandwidth of 128 MB/s and an initial size of 10 GB. Each experiment is repeated five times for all three approaches, and the results are averaged.

Performance results are depicted in Table II, where staticfast is used as a baseline for the fastest possible completion time. As can be observed, using a slow backing device in the case of static-slow leads to a significant increase (15.5%) in overall completion time when compared with static-fast because of the longer I/O phases. On the other hand, adaptive successfully reduces the overhead of the I/O phases to such extent that the overall increase in completion time becomes For this negligible increase in completion time, our approach achieves massive reductions in cost when compared with static-fast and even a moderate reduction in cost when compared to static-slow. These results are depicted in Figure 4(a) as the total adjusted storage accumulation for all instances (TC(t)). For all three approaches, TC(t) is calculated in the same way as is described in Section IV-C (since we use the same configuration as in the case of CM1).

More specifically, adaptive reduces the storage accumulation by more than 70% when compared with static-fast and marginally by 1% compared with static-slow (thanks to the fact that it finishes faster), effectively making it a double winner over static-slow in terms of both performance and cost.

To understand how the interaction between backing devices and caching devices contributes to the results, we again analyze the total I/O activity. In Figure 4(b) a pattern similar to the case of CM1 is observable: static-fast and static-slow exhibit a short but intense I/O burst vs. a longer but milder I/O burst, with our approach successfully attaching the caching device at the right time and adapting its size based on the past experience (demonstrated by the shorter and more regular flush periods after the initial burst for the last three I/O-intensive phases when compared with the initial I/O-intensive phase where the optimal cache size is unknown).

V. CONCLUSIONS

The ability to transparently adapt to the fluctuations of I/O throughput requirements in order to reduce the costs associated with overprovisioning faster (and more expensive) virtual disks is crucial in the context of large-scale scientific applications for two reasons: (1) such applications tend to have an iterative behavior that interleaves computational phases with I/O-intensive phases, which leads to extreme fluctuations in I/O requirements that make overprovisioning particularly wasteful; and (2) such applications run in configurations that include a large number of VMs and associated virtual disks, which amplifies the waste due to scale.

In this paper we have described a solution that relies on a specialized block device exposed inside the guest operating system in order to intercept all I/O to a potentially slow virtual disk and enhance its throughput during I/O peaks by leveraging an additional faster, short-lived virtual disk that acts as a caching layer. Our approach offers low-level transparency that enables any higher-level storage abstraction to benefit from throughput elasticity, including those not originally designed to run on IaaS clouds. Furthermore, it relies solely on standard virtual disks to operate, which offers a high degree of compatibility with a wide range of cloud providers.

We demonstrated the benefits of this approach through experiments that involve dozens of nodes, using both microbenchmarks and two representative real-life HPC applications: CM1 and LAMMPS. Compared with static approaches that overprovision fast virtual disks to accommodate the I/O peaks, our approach demonstrates a reduction of storage cost in real life (using a cost model that charges users proportionally to disk size and reserved bandwidth) of 66%-70%, all of which is possible with a negligible performance overhead (1%-3.3%) when compared with the fastest and more expensive solution. Furthermore, our findings show that using slow virtual disks to minimize storage costs is not the optimal solution: because of higher performance degradation (15%-23%), applications end up using the cheap virtual disks for longer, thereby resulting in an overall increase in cost compared with our approach (1%-7%).

Encouraged by these initial results, we plan to develop this work in several directions. One straightforward extension is to explore how to leverage multiple virtual disks, potentially in striping configuration, in order to boost I/O throughput during peaks. Another interesting idea could be to explore putting the backing device itself in stand-by during computeintensive phases and to use a smaller caching device of equal bandwidth capability to serve most I/O requests, under the assumption that it makes sense to pay for the penalty of reattaching the backing device in order to deal with cache misses and evictions. Such an approach has the potential to further reduce the costs. In a more broader sense, an interesting topic to explore is how to achieve the minimum cost and what relationship it has to the performance. Especially interesting in this context is the problem of minimizing the cost for a given time to solution: this may involve a different elasticity strategy that accepts higher performance degradation as long as it manages to run the application in less than the given time to solution.

  Fig. 2. Bonnie++: I/O performance under different access patterns and its corresponding I/O activity

  Fig.3. CM1 (numerical model designed for idealized studies of atmospheric phenomena): a real-life HPC application that runs on 32 VMs (each on a different node) using 10 MPI processes/node

  Fig. 4. LAMMPS (Large-scale Atomic/Molecular Massively Parallel Simulator): a real-life HPC application that runs on 32 VMs (each on a different node) using 10 MPI processes/node

ACKNOWLEDGMENTS

The experiments presented in this paper were carried out using the Shamrock cluster of IBM Research, Ireland. This material is based in part on work supported in part by the U.S. Department of Energy, Office of Science, under contract DE-AC02-06CH11357.


Joachim Escher
email: escher@ifam.uni-hannover.de

David Henry
email: d.henry@ucc.ie

AND Boris Kolev
email: boris.kolev@math.cnrs.fr

Tony Lyons
email: tony.lyons@mydit.ie

Two-component equations modelling water waves with constant vorticity

Keywords: 2010 Mathematics Subject Classification. 35Q35, 76B15, 35Q53, 58D05 Water waves, vorticity, model equations, Euler equation, diffeomorphism group

published or not. The documents may come

Introduction

The focus of this paper is the following nonlinear two-component system of equations which model two-dimensional shallow water waves with constant vorticity:

(1.1)

m t = αu x -au x m -um x -κρρ x , ρ t = -uρ x -(a -1)u x ρ,
where m = u -u xx . Here a = 1 is a real parameter, α is a constant which represents the vorticity of the underlying flow, and κ > 0 is an arbitrary real parameter. In Sections 2 and 3 we present a derivation of system (1.1) in the hydrodynamical setting using formal asymptotic expansions and perturbation theory [START_REF] Johnson | Singular perturbation theory[END_REF] applied to the full governing equations for two-dimensional water waves with constant vorticity. The above system generalises and incorporates a number of celebrated nonlinear partial differential equations which have recently been derived as approximate models in hydrodynamics. When α = 0 (which in our considerations corresponds to irrotational fluid flow) and ρ ≡ 0 we obtain a one-component family of equations which are parameterised by a = 1. This family of so-called b-equations possess a number of structural phenomena which are shared by solutions of the family of equations [START_REF] Escher | Well-posedness, blow-up phenomena, and global solutions for the b-equation[END_REF][START_REF] Henry | Compactly supported solutions of a family of nonlinear partial differential equations[END_REF][START_REF] Henry | Persistence properties for a family of nonlinear partial differential equations[END_REF]. However, there are just two members of this family which are integrable [START_REF] Ivanov | Water waves and integrability[END_REF]: the Camassa-Holm (CH) [START_REF] Camassa | A new integrable shallow water equation[END_REF][START_REF] Camassa | An integrable shallow water equation with peaked solitons[END_REF] equation, when a = 2, and the Degasperis-Procesi (DP) [START_REF] Degasperis | Asymptotic integrability[END_REF] equation, when a = 3. The CH equation is a remarkable equation which is both integrable and which possesses both global solutions and solutions which exhibit wave-breaking in finite time [START_REF] Constantin | Existence of permanent and breaking waves for a shallow water equation: a geometric approach[END_REF][START_REF] Constantin | Wave breaking for nonlinear nonlocal shallow water equations[END_REF][START_REF] Constantin | Global weak solutions for a shallow water equation[END_REF], a feature which is also shared by the DP equation [START_REF] Escher | Shock waves and blow-up phenomena for the periodic Degasperis-Procesi equation[END_REF][START_REF] Escher | Global weak solutions and blow-up structure for the Degasperis-Procesi equation[END_REF]. Both the CH and DP equations can be derived in the hydrodynamic setting of shallow water waves [START_REF] Constantin | Nonlinear water waves with applications to wave-current interactions and tsunamis[END_REF][START_REF] Constantin | The hydrodynamical relevance of the Camassa-Holm and Degasperis-Procesi equations[END_REF][START_REF] Johnson | Camassa-Holm, Korteweg-de Vries and related models for water waves[END_REF], and hence they represent the first examples of integrable equations which possess wave-breaking solutions [START_REF] Constantin | Nonlinear water waves with applications to wave-current interactions and tsunamis[END_REF].

In [START_REF] Olver | Tri-Hamiltonian duality between solitons and solitarywave solutions having compact support[END_REF] the authors presented a number of integrable multi-component generalisations of the CH equation, the most popular of which corresponds to α = 0, a = 2, κ = ±1 in (1.1) [START_REF] Constantin | On an integrable two-component Camassa-Holm shallow water system[END_REF][START_REF] Chen | A two-component generalization of the Camassa-Holm equation and its solutions[END_REF][START_REF] Escher | Well-posedness and blow-up phenomena for the 2-component Camassa-Holm equation[END_REF][START_REF] Ivanov | Extended Camassa-Holm hierarchy and conserved quantities[END_REF][START_REF] Henry | Infinite propagation speed for a two component Camassa-Holm equation[END_REF]. It was shown in [START_REF] Constantin | On an integrable two-component Camassa-Holm shallow water system[END_REF] that this two-component generalisation of CH can be derived from a hydrodynamical setting, in which case κ = 1. The question as to whether these hydrodynamical model equations could be adapted so as to incorporate an underlying vorticity in the flow is a natural one. Physically, vorticity is vital for incorporating the ubiquitous effects of currents and wave-current interactions in fluid motion [START_REF] Thomas | Wave-current interactions in the nearshore region[END_REF], and furthermore the past decade has seen a burgeoning in the mathematical analysis of the full-governing equations for water waves with vorticity-cf. [START_REF] Constantin | Nonlinear water waves with applications to wave-current interactions and tsunamis[END_REF] for an overview of much of this work. From a model equation viewpoint, following [START_REF] Johnson | The Camassa-Holm equation for water waves moving over a shear flow[END_REF], Ivanov [START_REF] Ivanov | Two-component integrable systems modelling shallow water waves: the constant vorticity case[END_REF] derived a number of two-component equations for shallow water waves with underlying constant vorticity, including an integrable generalisation of the two-component CH equation. In Sections 2 and 3 of this paper we extend this work to derive (1.1), a family of two-component systems parameterised by a, where a = 2 generalises the CH equation, and a = 3 generalises the DP equation.

In Section 4 we present a geometrical interpretation of (1.1), which is shown to correspond (when a = 2) to the Arnold-Euler equation of a rightinvariant metric on the infinite dimensional Lie group

(Diff ∞ (S 1 ) C ∞ (S 1 )) × R.
This geometrical approach goes back to the pioneering work of V. Arnold [START_REF] Arnold | Sur la géométrie différentielle des groupes de Lie de dimension infinie et ses applications à l'hydrodynamique des fluides parfaits[END_REF], published in 1966, who recast the equation of motion of a perfect fluid (with fixed boundary) as the geodesic flow on the volume-preserving diffeomorphisms group of the domain. For the little history, Arnold's paper was written (in French) for the bi-century of the 1765's paper of Euler [START_REF] Euler | Du mouvement de rotation des corps solides autour d'un axe variable[END_REF] (also written in French) who recast the equation of motion of a free rigid body as the geodesic flow on the rotation group. As acknowledged by Arnold himself, his paper concentrated on the geometrical ideas and not on the difficult analytical technicalities that are inherent when one works with an infinite dimensional diffeomorphisms group rather than a finite dimensional Lie group. In 1970, Ebin & Marsden [START_REF] Ebin | Groups of diffeomorphisms and the motion of an incompressible fluid[END_REF] reconsidered this geometric approach from the analytical point of view. They proposed to consider the group of smooth diffeomorphisms as an inverse limit of Hilbert manifolds. The remarkable observation is that, in this framework, the Euler equation (a PDE) can be recast as an ODE (the geodesic equation) on these Hilbert manifolds. Furthermore, following their approach, if we can prove local existence and uniqueness of the geodesics (ODE), then the PDE is well-posed. This technique has been used in [START_REF] Misio | Classical solutions of the periodic Camassa-Holm equation[END_REF][START_REF] Constantin | Geodesic flow on the diffeomorphism group of the circle[END_REF] for the periodic Camassa-Holm equation. It was extended to (non metric) geodesic flows such as the Degasperis-Procesi equation in [START_REF] Escher | The Degasperis-Procesi equation as a non-metric Euler equation[END_REF] and to right-invariant metrics induced by fractional Sobolev norm (non-local inertia operators) in [START_REF] Escher | Right-invariant Sobolev metrics of fractional order on the diffeomorphism group of the circle[END_REF]. It is used in Section 5 to establish the well-posedness of the system (1.1). Finally, in Section 6, we derive some a priori estimates on (1.1) which lead to a criteria for global existence of solutions.

Derivation of the model equation

In this section we apply formal asymptotic methods to the full-governing equations for two-dimensional water waves with an underlying constant vorticity α to derive the two-component system (1.1). We choose Cartesiancoordinates with the z-axis pointing vertically upwards and the x-axis perpendicular to the crest-lines of the waves, the flow being in the positive x-direction. We let z = 0 denote the location of the flat bed and assume that the mean-depth, or the depth of the undisturbed water domain, is given by h 0 . The velocity field of the two dimensional water flow is given by (u(t, x, z), w(t, x, z)) with the water's free surface z = h 0 + η(t, x) -we denote by Ω η the fluid domain with free boundary. For water waves which are large in scale it is reasonable to make the simplifying assumptions of homogeneity (constant density) and non-viscosity (no internal friction forces). We decompose the pressure

P (x, z, t) = P 0 + ρg(h 0 -z) + p(x, z, t)
into the hydrostatic pressure term (where ρ is the fluid density and P 0 is the constant atmospheric pressure) and the deviation from hydrostatic pressure p. The equations governing the motion of the fluid comprise Euler's equation

u t + uu x + wu z = - 1 ρ p x in Ω η , (2.1a) w t + uw x + ww z = - 1 ρ p z in Ω η , (2.1b)
together with the continuity equation

(2.1c) u x + w z = 0 in Ω η ,
and the dynamic and kinematic boundary conditions

w = η t + uη x , p = ηρg on z = h 0 + η, (2.1d) w = 0 on z = 0. (2.1e)
2.1. Nondimensionalisation and scaling. The process of nondimensionalisation enables us to reexpress the governing equations (2.1) in terms of dimensionless variables and functions, and so the resulting equations are purely mathematical. The benefit of this nondimensionalisation procedure is that it naturally introduces dimensionless parameters into the mathematical problem, which measure the relative size and significance of the physical terms characteristic to the water wave problem we consider. These parameters enable the formal asymptotic expansion procedures which we engage in when we derive (1.1) below. If a is the typical amplitude of the waves we consider, and λ represents a characteristic horizontal length scale (e.g. the wavelength) for the waves, we define the dimensionless parameters ǫ = a/h 0 , δ = h 0 /λ. Then, performing the change of variables

x → λx, z → zh 0 , t → λ √ gh 0 t, η → aη, (2.2)
u → ǫ gh 0 u, w → ǫδ gh 0 w, p → ǫρgh 0 p, the new scaled variables are nondimensionalised. In terms of the new variables the system (2.1) assumes the form

u t + ǫ(uu x + wu z ) = -p x , δ 2 (w t + ǫ(uw x + ww z )) = -p z , u x + w z = 0, w = η t + ǫuη x , p = ηρg on z = 1 + ǫη, w = 0 on z = 0.
We note that (u, w, p, η) ≡ (U (z), 0, 0, 0) gives a solution of the above system, which represents laminar flows with a flat free surface and with an arbitrary shear. To incorporate undulating waves in the presence of a shear flow, we make the transformation u = (U (z)+ ǫu). If ǫ = 0 (flat surface), then we are simply left with a shear flow as above. The system which describes waves in the presence of a shear flow is given by

u t + U u x + wU ′ + ǫ(uu x + wu z ) = -p x in Ω ǫ , (2.3a) δ 2 (w t + U w x + ǫ(uw x + ww z )) = -p z in Ω ǫ , (2.3b) u x + w z = 0 in Ω ǫ , (2.3c) w = η t + (U + ǫu)η x , p = ηρg on z = 1 + ǫη, (2.3d) w = 0 on z = 0. (2.3e)
For the simplest nontrivial case of a laminar shear flow, we let U (z) = αz, α constant and 0 ≤ z ≤ 1. We choose α > 0 whereby the underlying current is in the positive x-direction. The Burns condition [START_REF] Burns | Long waves on running water[END_REF][START_REF] Freeman | Shallow water waves on shear flows[END_REF] for the non-dimensionalised scaled variables becomes

1 0 dz (U (z) -c) 2 = 1,
and so

(2.4) c 2 -αc -1 = 0,
giving us the nondimensionalised speed

c = 1 2 (α ± α 2 + 4)
of the travelling waves in linear approximation. We mention here that the Burns condition arises as a local bifurcation condition for shallow water waves with constant vorticity, cf. [START_REF] Constantin | Nonlinear water waves with applications to wave-current interactions and tsunamis[END_REF]. In physical coordinates the vorticity is given by ω = (U -u) z -w x . Scaling the vorticity by ω = h 0 /gω we get

ω = α + ǫ(u z -δ 2 w x ).
As we seek a solution with constant vorticity we must have

(2.5) u z -δ 2 w x = 0.
From (2.5), (2.3c) and (2.3e) we get

u = u 0 -δ 2 z 2 2 u 0,xx + O(ǫ 2 , δ 4 , ǫδ 2 ), (2.6a) w = -zu 0,x + δ 2 z 3 6 u 0,xxx + O(ǫ 2 , δ 4 , ǫδ 2 ). (2.6b)
Here u 0 (x, t) is the leading order approximation for u in an asymptotic expansion, and we see from (2.5) that u z = 0 when δ → 0 and hence u 0 is independent of z. From (2.3d), together with (2.6) we get (2.7a)

η t + αη x + (1 + ǫη)u 0 + ǫ α 2 η 2 x -δ 2 1 6 u 0,xxx = 0,
ignoring terms of O(ǫ 2 , δ 4 , ǫδ 2 ). From (2.3b), (2.3d), (2.6) we have, to the same order

p = η -δ 2 1 -z 2 2 u 0,xt + 1 -z 3 3 αu 0,xx .
Then from (2.3a) we have

(2.7b) u 0 -δ 2 1 2 u 0,xx t + ǫu 0 u 0,x + η x -δ 2 α 3 u 0,xxx = 0.
Letting δ, ǫ → 0 in (2.7) we get

η t + αη x + u 0,x = 0, (2.8a) u 0,t + η x = 0, (2.8b) giving us (2.9) η tt + αη tx -η xx = 0.
Travelling wave solutions η(x -ct) of (2.9) have a speed c which satisfies (2.4). There are two possible speeds c, corresponding to a left and right running wave respectively. In particular, from (2.8a) we get (2.10)

η = cu 0 + O(ǫ, δ 2 ),
when we choose a specific value of the wavespeed c. We note here that while ǫ and δ are generally not related, it is known [START_REF] Constantin | The hydrodynamical relevance of the Camassa-Holm and Degasperis-Procesi equations[END_REF] that the small-amplitude long-wave scaling in the absence of vorticity is ǫ = O(δ 2 ), while ǫ = O(δ) is the long-wave scaling for waves of moderate amplitude.

The two component system

We introduce the auxiliary variable θ, defined in terms of η and u 0 as follows

(3.1) θ = 1 + ǫk 1 η + ǫ 2 k 2 η 2 + ǫδ 2 k 3 u 0,xx ,
which upon squaring and retaining terms to order O(ǫ 2 , ǫδ 2 ) gives

(3.2) θ 2 = 1 + ǫ(2k 1 )η + ǫ 2 (k 2 1 + 2k 2 )η 2 + ǫδ 2 (2k 3 )u 0,xx + O(ǫ 3 , ǫ 2 δ 2
). The coefficients k 1 , k 2 and k 3 are as yet undetermined, but as we proceed it will be seen that specific values must be assigned to all three if the resulting system is to be integrable. At a later stage, θ will be rewritten in terms of the physical variable ρ, which satisfies one member of the two component system (1.1) we intend to analyse in the following sections.

3.1. The ρ-component. Rewriting η in terms of θ using (3.1) we get

η t = 1 k 1 ǫ θ ξ -ǫ k 2 k 1 ηη t + δ 2 k 3 k 1 u 0,xxt , η x = 1 k 1 ǫ θ x -ǫ k 2 k 1 (η 2 ) x + δ 2 k 3 k 1 u 0,xxx , (3.3)
and using (2.8a), (2.8b) and (2.10), we write to leading order

u 0,xxt = -η xxx = -cu 0,xxx + O(ǫ, δ 2 ), η t = -αη x -u 0,x + O(ǫ, δ 2 ). (3.4)
Substituting the expressions (3.4) into equation (3.3) and keeping terms to order O(ǫ, δ 2 ) we find

η t = 1 k 1 ǫ θ t + ǫ 2k 2 (1 + αc) k 1 ηu 0,x + δ 2 k 3 c k 1 u 0,xxx + O(ǫ 2 , ǫδ 2 ), η x = 1 k 1 ǫ θ x -ǫ 2k 2 c k 1 ηu 0,x -δ 2 k 3 k 1 u 0,xxx + O(ǫ 2 , ǫδ 2 ). (3.5)
Then forming the linear combination η t + αη x using the expressions in (3.5) we obtain

(3.6) η t + αη x = 1 ǫk 1 (θ t + αθ x )+ ǫ 2k 2 k 1 ηu 0,x + δ 2 k 3 (c -α) k 1 u 0,xxx + O(ǫ 2 , ǫδ 2 ).
Replacing the η t + αη x term in equation (2.7a) with corresponding the expression given by relation (3.6) yields

(3.7) 1 ǫk 1 (θ t + αθ x ) + (1 + ǫη)u 0 + ǫ α 2 η 2 + ǫ k 2 k 1 ηu 0 x = -δ 2 k 3 (c -α) k 1 - 1 6 u 0,xxx + O(ǫ 2 , ǫδ 2 ) = 0.
We impose the constraint

(3.8) k 3 k 1 = 1 6(c -α) ,
thereby eliminating terms of order δ 2 which would otherwise introduce dispersion to this particular member of the two component system. Using the approximation (2.10) and neglecting terms of order O(ǫ 2 , ǫδ 2 ), we may rewrite equation (3.7) as

(3.9) 1 ǫk 1 (θ t + αθ x ) + (1 + ǫ 1 + αc 2 + k 2 k 1 η)u 0 x + O(ǫ 2 , ǫδ 2 ) = 0.
Having imposed only one constraint on the coefficients k 1 and k 3 so far, we may also choose k 1 and k 2 such that (3.10)

k 1 = 1 + αc 2 + k 2 k 1 ,
in which case (3.9) becomes

(3.11) 1 ǫk 1 (θ t + αθ x ) + ((1 + ǫk 1 η)u 0 ) x + O(ǫ 2 , ǫδ 2 ) = 0.
Keeping terms of order O(ǫ, δ 2 ) we approximate the factor 1 + ǫk 1 η in (3.11) by θ, resulting in

(3.12) 1 ǫk 1 (θ t + αθ x ) + (θu 0 ) x = 0.
Under the Galilean transformation x → x -αt, t → t, equation (3.12) becomes

(3.13) 1 ǫk 1 θ t + (θu 0 ) x = 0.
We now redefine the auxiliary function θ in terms of the physical variable ρ as follows

(3.14) ρ 1 a-1 = θ, a = 1.
We substitute (3.14) into (3.13), and upon multiplying the resulting expression by a -1 we find

(3.15) 1 ǫk 1 ρ t + u 0 ρ x = (1 -a)ρu 0,x ,
which up to a rescaling is the first member (3.36a) of our two component system (3.36).

3.2.

The m-component. Using (3.2), we express η x in terms of the auxiliary function θ to find

(3.16) η x = 1 2k 1 ǫ (θ 2 ) x -ǫ 2k 2 + k 2 1 2k 1 (η 2 ) x -δ 2 k 3 k 1 u 0,xxx + O(ǫ 2 , ǫδ 2 ),
which when substituted into (2.7b) gives

u 0 -δ 2 β 2 0 u 0xx t + O(ǫ 2 , ǫδ 2 ) = -ǫ u 2 0 2 - k 2 1 + 2k 2 2k 1 (η 2 ) x -δ 2 k 3 k 1 + α 3 u 0,x -k 0 u 0,t xx - 1 2ǫk 1 (θ 2 ) x .
Here β 2 0 = 1/2+k 0 and k 0 is a constant yet to be determined. Using relations (2.10) and (3.4) above, and neglecting terms of order O(ǫ, δ 2 ), yields

(3.17) u 0 -δ 2 1 2 + k 0 u 0xx t + O(ǫ 2 , ǫδ 2 ) = -ǫ 1 -c 2 2k 2 + k 2 1 k 1 u 2 0 2 x -δ 2 k 3 k 1 + α 3 + k 0 c u 0,xxx - 1 2ǫk 1 (θ 2 ) x .
At this point we reexpress the θ 2 term in (3.17) in terms of ρ 2 using

(3.18) θ = 1 + ǫθ 0 ,
where θ 0 is of order O(1, ǫ, δ 2 ). Retaining terms to order O(ǫ 2 , ǫδ 2 ), we may use a Taylor expansion to write

(3.19) θ 2(a-1) = 1 + 2(a -1)ǫθ 0 + (a -1)(2a -3)ǫ 2 θ 2 0 + O(ǫ 3 , ǫ 2 δ 2 ) = ρ 2 and as such (3.20) ǫ2θ 0 = 1 a -1 ρ 2 -ǫ 2 (2a -3)θ 2 0 - 1 a -1 + O(ǫ 3 , ǫ 2 δ 2 ).
In addition it follows from (3.2) that

(3.21) ǫ2θ 0 = θ 2 -1 -ǫ 2 θ 2 0 . Comparing (3.
θ 2 = 1 a -1 ρ 2 -ǫ 2 2(a -2)θ 2 0 + a -2 a -1 + O(ǫ 3 , ǫ 2 δ 2 ).
Moreover comparing (3.1) and (3.18), we find

(3.23) θ 0 = k 1 η + ǫk 2 η 2 + δ 2 k 3 u 0,xx ,
which we may replace in (3.22) to obtain

(3.24) θ 2 = 1 a -1 ρ 2 -ǫ 2 2c 2 k 2 1 (a -2)u 2 0 + a -2 a -1 + O(ǫ 3 , ǫ 2 δ 2 ),
where we have used (2.10) to write η 2 = c 2 u 2 0 + O(ǫ, δ 2 ) in the term of order O(ǫ 2 ) above. Equation (3.24) allows us to replace the auxiliary function θ 2 appearing in (3.17) with the physical variable ρ 2 , in which case we find

(3.25) m t + 1 2ǫk 1 (a -1) (ρ 2 ) x + O(ǫ 2 , ǫδ 2 ) = -ǫ 1 -c 2 k 2 1 + 2k 2 k 1 + 2(a -2)k 1 u 2 0 2 x -δ 2 k 3 k 1 + α 3 + k 0 c u 0,xxx ,
where we define,

(3.26) m = u 0 -δ 2 1 2 + k 0 u 0,xx .
Adding the term αm 0,x to both sides of (3.25) we find

(3.27) m t + αm 0,x + 1 2ǫk 1 (a -1) (ρ 2 ) x + O(ǫ 2 , ǫδ 2 ) = αu 0,x + ǫ 1 -c 2 k 2 1 + 2k 2 k 1 + (a -2)k 1 u 2 0 2 x + δ 2 k 3 k 1 - α 6 + k 0 (c -α) u 0,xxx ,
where on the right hand side we use m 0,x as it appears in (3.26). It was previously stated that k 0 is an undetermined coefficient, and so we may choose its value such that

(3.28) k 3 k 1 - α 6 + k 0 (c -α) = 0.
Combined with the Burns condition imposed on c, as determined by (2.4), along with the first constraint on k 1 and k 3 in (3.8), equation (3.28) gives

β 2 0 = k 0 + 1 2 = αc -α 2 -1 6(c -α) 2 + 1 2 = 1 3c 2 (c -α) 2 ,
thus fixing k 0 uniquely in terms of α and c. With k 0 fixed, (3.27) becomes (3.29)

m t + αm x + 1 2ǫk 1 (a -1) (ρ 2 ) x + O(ǫ 2 , ǫδ 2 ) = αu 0,x + ǫ 1 -c 2 k 2 1 + 2k 2 k 1 + (a -2)k 1 u 2 0 2 x .
So far we have only imposed two constraints on the coefficients k 1 , k 2 and k 3 and so we may choose k 1 and k 2 such that,

(3.30) k 1 (1 + a) = 1 -c 2 k 2 1 + 2k 2 k 1 + 2(a -2)k 1 ,
which upon substitution into (3.29) gives,

(3.31) m t + αm x -αu 0,x + ǫk 1 (1 + a) u 2 0 2 x + 1 2ǫk 1 (a -1) (ρ 2 ) x + O(ǫ 2 , ǫδ 2 ) = 0.
Furthermore applying the Galilean transformation introduced in Section 3.1 to (3.31) gives

(3.32) m t -αu 0,x + ǫk 1 (1 + a) u 2 0 2 x + 1 2ǫk 1 (a -1) (ρ 2 ) x + O(ǫ 2 , ǫδ 2 ) = 0.
We also note that to leading order we have u 0 = m + O(δ 2 ), and so we may write

(3.33) u 2 0 2 x = 1 1 + a (au 0,x m + u 0 m x ) + O(δ 2 ),
and accordingly (3.31) may be written as

(3.34) m t -αu 0,x + ǫau 0,x m + ǫu 0 m x + 1 2ǫk 1 (a -1) (ρ 2 ) x + O(ǫ 2 , ǫδ 2 ) = 0.
This is the second member (3.36b) of our two component system (3.36), up to the following rescaling:

(3.35) x → β 0 x, t → β 0 t, u → 1 2ǫk 1 u, ρ → κ 2 (a -1)ρ,
where κ > 0 is an arbitrary parameter. With regard to this rescaling, we note that it is important here that u, m be of order O(ǫ), otherwise following the rescaling u, m would be O(1/ǫ) and all subsequent considerations would fail. Under this rescaling (3.15) and (3.34) become,

ρ t + uρ x + (a -1)u x ρ = 0, (3.36a) m t -αu 0,x + au 0,x m + u 0 m x + κρρ x = 0, (3.36b)
where terms of order O(ǫ, δ 2 )and higher have been neglected. The coefficients k 1 , k 2 and k 3 are completely determined by the constraints (3.8), (3.10) and (3.30) in terms of a, c, and α as follows:

k 1 = 1 (1 + c 2 )(a + 1) + c 2 a + 1 , k 2 = 1 (a + 1)(1 + c 2 ) + c 2 (1 -a) 2(a + 1) - 1 2 k 1 , k 3 = k 1 6(c -α) .
Following minor relabelling, equations (3.36) are transformed to (1.1), which constitutes the two component system that will be investigated in the remainder of this article.

Remark 1. In the particular case a = 2 we reduce to the integrable twocomponent equation which was derived in [START_REF] Ivanov | Two-component integrable systems modelling shallow water waves: the constant vorticity case[END_REF].

Remark 2. When a = c 4 +1 (c 2 +1) 2 we have k 2 = 0, and as a result of this a number of transformations become linear, in particular (3.1). Accordingly, in this setting it is convenient to express the physical variable η in terms of the auxiliary variables θ or ρ, which should be useful in practical applications.

Geometric reformulation as a geodesic flow

In this section, we recast the system (1.1) as a geodesic flow on the tangent bundle of a suitable infinite-dimensional Lie group. For simplicity, we will focus on the periodic case (i.e on the circle S 1 ), but there is no obstacle to working on the non-periodic case (i.e on the real line), provided we correctly impose some conditions at infinity. When α = 0, a = 2 and κ = 1, the system (3.36) reduces to the two component Camassa-Holm equation (2CH) (4.1)

m t + um x = -2u x m -ρρ x , ρ t + uρ x = -u x ρ,
where m = u -u xx and which was first derived in [START_REF] Olver | Tri-Hamiltonian duality between solitons and solitarywave solutions having compact support[END_REF]. In [START_REF] Escher | The geometry of the two-component Camassa-Holm and Degasperis-Procesi equations[END_REF], the system (4.1) was recast as the geodesic equations for a right-invariant Riemannian metric on a semi-direct product Diff ∞ (S 1 ) C ∞ (S 1 ), where Diff ∞ (S 1 ) is the group of orientation-preserving, smooth diffeomorphisms of the circle and C ∞ (S 1 ) is the space of real, smooth functions on S 1 . The full system (1.1) (with α = 0) has been studied in the short-wave limit m = -u xx in [START_REF] Escher | Non-metric two-component Euler equations on the circle[END_REF]. It is shown there that geometrically the two-component system (1.1) corresponds to a geodesic flow with respect to a linear, right-invariant, symmetric connection on a suitable semi-direct product. In addition, if a = 2 the connection is compatible with a the metric induced by the norm

u xx L 2 (S 1 ) + ρ L 2 (S 1 ) ,
where u ∈ C ∞ (S 1 )/R and ρ ∈ C ∞ (S 1 ). We find here for (1.1) a similar situation: if a = 2 the geodesic flow is metric (cf. Theorem 4.1) and if a = 2, the system (1.1) cannot be realized as a metric geodesic flow, at least for a large class of inertia operators. The above described geometric picture was in fact developed in [START_REF] Escher | The Degasperis-Procesi equation as a non-metric Euler equation[END_REF], where it had been shown that every quadratic evolution equation defined on the Lie algebra g of a Lie group G can be interpreted as the geodesic equations for a right-invariant linear connection on G, although in this case the connection does not derive necessarily from an invariant metric. To be able to use this framework, we rewrite the system (3.36) as (4.2)

     m t = αu x -au x m -um x -κρρ x , ρ t = -uρ x -(a -1)u x ρ, α t = 0,
which is a quadratic evolution equation in the variables

(u, ρ, α) ∈ C ∞ (S 1 ) × C ∞ (S 1 ) × R.
We will consider the Fréchet Lie group

C ∞ G := (Diff ∞ (S 1 ) C ∞ (S 1 )) × R,
where the group product is given by

(ϕ 1 , f 1 , s 1 ) * (ϕ 2 , f 2 , s 2 ) := (ϕ 1 • ϕ 2 , f 2 + f 1 • ϕ 2 , s 1 + s 2 ) for (ϕ 1 , f 1 , s 1 ), (ϕ 1 , f 2 , s 2 ) ∈ Diff ∞ (S 1 ) × C ∞ (S 1
) × R, and where • denotes composition of mappings. The neutral element is (id, 0, 0) and the inverse of an element (ϕ, f, s) is given by

(ϕ, f, s) -1 = (ϕ -1 , -f • ϕ -1 , -s).
The Lie algebra of C ∞ G is the vector space C ∞ g := C ∞ (S 1 )⊕C ∞ (S 1 )⊕R endowed with the Lie bracket

[(u 1 , ρ 1 , α 1 ), (u 2 , ρ 2 , α 2 )] := (u 1,x u 2 -u 2,x u 1 , ρ 1,x u 2 -ρ 2,x u 1 , 0), for (u 1 , ρ 1 , α 1 ), (u 2 , ρ 2 , α 2 ) ∈ C ∞ g.
Let R g denote the right translation on C ∞ G by the element g = (ϕ 2 , f 2 , s 2 ), and T h R g be its tangent map at h = (ϕ 1 , f 1 , s 1 ). Then, we have

(4.3) T h R g .V = (v 1 • ϕ 2 , σ 1 • ϕ 2 , α 1 ),
where V = (v 1 , σ 1 , α 1 ). Note that its expression does not depend on h. In particular, we will have a similar expression for the second order tangent map. More precisely, if X = (δϕ 1 , δf 1 , δs 1 , δv, δσ, δα), we get

(4.4) T V (T R g ).X = (δϕ 1 • ϕ 2 , δf 1 • ϕ 2 , δs 1 , δv 1 • ϕ 2 , δσ 1 • ϕ 2 , δα 1 ).
Given a smooth path g(t) := (ϕ(t), f (t), s(t)) ∈ C ∞ G, we define its Eulerian velocity, which lies in the Lie algebra C ∞ g, by

U (t) = T R g -1 (t) .g t (t).
Let (u, ρ, α) be the three components of U . Then, using (4.3), we get

u = ϕ t • ϕ -1 , ρ = f t • ϕ -1 , α = s t .
Introducing the Lagrangian velocity V := (v, σ, α), where

v := ϕ t = u • ϕ, σ := f t = ρ • ϕ, α := s t , we have v t = (u t + uu x ) • ϕ, σ t = (ρ t + uρ x )
• ϕ, and we may rewrite equation (4.2) as

       v t = A -1 ([A, u]u x + αu x -au x Au -κρρ x ) • ϕ, σ t = (1 -a)u x ρ • ϕ, α t = 0,
where A = 1-D 2 and [A, u]v := A(uv)-uA(v). Therefore, the system (4.2) is equivalent to

(4.5) ∂ t (ϕ, f, s) = (v, σ, α), ∂ t (v, σ, α) = S (ϕ,f,s) (v, σ, α), where (4.6) S (ϕ,f,s) := T T R (ϕ,f,s) • S • T R (ϕ,f,s) -1 ,
and (4.7) S(u, ρ, α) := S (id,0,0) (u, ρ, α)

A -1 ([A, u]u x + αu x -au x Au -κρρ x ), (1 -a)u x ρ, 0 .
The second order vector field

(4.8) F (g, V ) = (g, V, V, S g (V )) defined on T C ∞ G ≃ (Diff ∞ (S 1 ) × C ∞ (S 1 ) × R) × (C ∞ (S 1 ) ⊕ C ∞ (S 1 ) ⊕ R)
is quadratic on V and is called a spray. It corresponds to the geodesic flow of a symmetric linear connection on C ∞ G (see [START_REF] Lang | Fundamentals of Differential Geometry[END_REF]Section IV.3]).

Remark 3. Note that the relation (4.6) is just the fourth component of the equation F (T R g .U ) = T T R g .F (U ), where g = (ϕ, f, s), U = (u, ρ, α) and which traduces the right-invariance of the spray

F : T C ∞ G → T T C ∞ G.
When the parameter a = 2, the spray F derives from a right-invariant metric on C ∞ G and the system of equations (4.2) corresponds to the Arnold-Euler equations of this metric. Let us briefly recall this formalism. Given a Lie group G and its Lie algebra g, any inner product on g induces a rightinvariant Riemannian metric on G by extending it by right-translation. If this inner product on g is represented by an invertible operator A : g → g * , for historical reasons, going back to the work of Euler on the motion of the rigid body, this operator A is called the inertia operator of the system. Then a path g(t) on G is a geodesic for this right-invariant Riemannian metric, if and only if, its Eulerian velocity u(t) := T R g(t) -1 . ġ(t) is solution of the so-called Arnold-Euler equation

u t = -B(u, u), where B(u 1 , u 2 ) := 1 2 ad ⊤ u 1 u 2 + ad ⊤ u 2 u 1 , where u 1 , u 2 ∈ g and ad ⊤
u is the adjoint of the operator ad u , with respect to A (see [START_REF] Arnold | Sur la géométrie différentielle des groupes de Lie de dimension infinie et ses applications à l'hydrodynamique des fluides parfaits[END_REF] for instance).

Theorem 4.1. Given κ > 0, the system (4.2) is, for a = 2, the Arnold-Euler equation on the Lie algebra C ∞ g of the Fréchet Lie group C ∞ G associated to the inner product

(4.9) (u 1 , ρ 1 , α 1 ), (u 2 , ρ 2 , α 2 ) = S 1 u 1 u 2 dx + S 1 u 1,x u 2,x dx + κ S 1 ρ 1 ρ 2 dx - 1 2 S 1 (u 1 α 2 + u 2 α 1 ) dx + 1 2 α 1 α 2 ,
where u i , ρ i ∈ C ∞ (S 1 ) and α i ∈ R, for i = 1, 2.

Remark 4. Note that the norm induced by (4.9) on C ∞ g

(u, ρ, α) 2 = S 1 u 2 x dx + S 1 u - α 2 2 dx + α 2 2 + S 1 κρ 2 dx is equivalent to the Hilbert-norm (u, ρ, α) 2 = u 2 H 1 + ρ 2 L 2 + |α| 2 .
Proof. The inner product (4.9) can be rewritten as

(u 1 , ρ 1 , α 1 ), (u 2 , ρ 2 , α 2 ) = S 1 (u 1 , ρ 1 , α 1 ) • A(u 2 , ρ 2 , α 2 ) dx
where the inertia operator A is defined by

A(u, ρ, α) = Au - α 2 , κρ, 1 2 α - S 1 u , (u, α, ρ) ∈ C ∞ g,
Au := u -u xx , and • stands for the usual inner product in R 3 . Set U i = (u i , ρ i , α i ), for i = 1, 2, 3. We have

ad U 1 U 2 = (u 1,x u 2 -u 2,x u 1 , ρ 1,x u 2 -ρ 2,x u 1 , 0),
and therefore, after some integrations by parts, we get

ad U 1 U 2 , U 3 = S 1 (u 2 , ρ 2 , α 2 ) • (f, g, 0) dx,
where

f = 2u 1,x Au 3 + u 1 Au 3,x -α 3 u 1,x + κρ 1,x ρ 3 , g = κ(u 1 ρ 3 ) x .
Note now that the equation

A(ũ, ρ, α) = (f, g, 0)
has a unique solution which is given by

ũ = A -1 f + S 1 f dx, ρ = 1 κ g, α = 2 S 1 f dx.
Thus we have ad ⊤ U 1 U 3 = (ũ, ρ, α), where

ũ = A -1 2u 1,x Au 3 + u 1 Au 3,x -α 3 u 1,x + κρ 1,x ρ 3 + S 1 (u 1,x Au 3 + κρ 1,x ρ 3 ) dx,
and ρ = (u 1 ρ 3 ) x , α = 2 S 1 (u 1,x Au 3 + κρ 1,x ρ 3 ) dx.
We conclude therefore that

B(U, U ) = A -1 (2u x Au + uAu x -αu x + κρ x ρ), (uρ) x , 0 ,
where U = (u, ρ, α) and that the equation

U t = -B(U, U )
is equivalent to (4.2), when a = 2.

Well-posedness of the equation

Our strategy will be to study the Cauchy problem for the geodesic equations (4.5). Following Ebin & Marsden's approach [START_REF] Ebin | Groups of diffeomorphisms and the motion of an incompressible fluid[END_REF], if we can prove local existence and uniqueness of geodesics of the ODE (4.5) on T G, then the PDE (4.2) is well-posed. To do so, we need to introduce an approximation of the Fréchet-Lie group Diff ∞ (S 1 ) by Hilbert manifolds. Let H q (S 1 ) be the completion of C ∞ (S 1 ) for the norm

u H q := k∈Z (1 + k 2 ) q |û k | 2 1/2
, where q ∈ R, q ≥ 0. We recall that H q (S 1 ) is a multiplicative algebra for q > 1/2 (cf. [START_REF] Triebel | Theory of Function Spaces[END_REF]Theorem 2.8.3]). This means that uv H q (S 1 ) u H q (S 1 ) v H q (S 1 ) , u, v ∈ H q (S 1 ).

A C 1 diffeomorphism ϕ of S 1 is of class H q if for any of its lifts to R, φ, we have φ -id ∈ H q (S 1 ). For q > 3/2, the set D q (S 1 ) of C 1 -diffeomorphisms of the circle which are of class H q has the structure of a Hilbert manifold, modelled on H q (S 1 ) (see [START_REF] Ebin | Groups of diffeomorphisms and the motion of an incompressible fluid[END_REF] or [START_REF] Inci | On the Regularity of the Composition of Diffeomorphisms[END_REF]). Contrary to Diff ∞ (S 1 ), the manifold D q (S 1 ) is only a topological group and not a Lie group (composition and inversion in D q (S 1 ) are continuous but not differentiable). More precisely, the following regularity properties for q > 3/2 are well-known (see [START_REF] Inci | On the Regularity of the Composition of Diffeomorphisms[END_REF] for instance).

(1) The mapping

u → R ϕ (u) := u • ϕ, H q (S 1 ) → H q (S 1 )
is smooth, for any ϕ ∈ D q (S 1 ). (2) The mapping

(u, ϕ) → u • ϕ, H q+k (S 1 ) × D q (S 1 ) → H q (S 1 ) is of class C k . (3) The mapping ϕ → ϕ -1 , D q+k (S 1 ) → D q (S 1 )
is of class C k . Moreover the following slightly sharpen result was established in [START_REF] Escher | Right-invariant Sobolev metrics of fractional order on the diffeomorphism group of the circle[END_REF]Corollary B.6].

Lemma 5.1. Let q > 3/2. Then, the mappings

(ϕ, v) → v • ϕ, D q (S 1 ) × H q (S 1 ) → H q-1 (S 1 ) and (ϕ, v) → v • ϕ -1 , D q (S 1 ) × H q (S 1 ) → H q-1 (S 1 ) are C 1 .
Remark 5. The tangent bundle of the Hilbert manifold D q (S 1 ) is trivial because if t : T S 1 → S 1 × R is a smooth trivialisation of the tangent bundle of the circle, then Ψ : T D q (S 1 ) → D q (S 1 ) × H q (S 1 ), ξ → t • ξ defines a smooth vector bundle isomorphism (see [14, Page 107]).

As suggested in [START_REF] Escher | The geometry of the two-component Camassa-Holm and Degasperis-Procesi equations[END_REF], we shall use the following choice for the Hilbert approximation of C ∞ G:

H q G := D q (S 1 ) × H q-1 (S 1 ) × R,
which is defined for q > 3/2. Theorem 5.2. The spray F defined on T Diff ∞ (S 1 ) by (4.8) extends smoothly to a spray

F q : T H q G → T T H q G, for each q > 3/2.
Proof. We first observe that the quadratic operator S defined in (4.7) can be rewritten as

S(u, ρ, α) = 1 2 A -1 D 2αu -κρ 2 + (a -3)u 2 x -au 2 , (1 -a)ρu x , 0 ,
where D stands for d/dx. Therefore, the two non-vanishing components S 1 , S 2 of S (ϕ,f,s) (v, σ, α) are

S 1 = 1 2 (A -1 D) ϕ 2αv -κσ 2 + (a -3) 1 ϕ 2 x v 2 x -av 2 and S 2 = (1 -a) 1 ϕ x σv x , where (A -1 D) ϕ := R ϕ A -1 D R ϕ -1 .
Let q > 3/2, ϕ ∈ D q (S 1 ), v ∈ H q (S 1 ) and σ ∈ H q-1 (S 1 ). Then, the expression S 2 belongs to H q-1 (S 1 ) because H q-1 (S 1 ) is a multiplicative algebra and the expression S 1 belongs to H q (S 1 ) because, furthermore,

R ϕ -1 ∈ L(H q-1 (S 1 ), H q-1 (S 1 )), R ϕ ∈ L(H q (S 1 ), H q (S 1 ))
by [START_REF] Escher | Right-invariant Sobolev metrics of fractional order on the diffeomorphism group of the circle[END_REF]Lemma B.2], and

A -1 D = DA -1 ∈ L(H q-1 (S 1
), H q (S 1 )).

It remains to be shown that S 1 and S 2 depend smoothly on ϕ, v, σ, which will achieve the proof. First, it is clear that the mapping

(ϕ, v, σ) → (1 -a) 1 ϕ x σv x , D q (S 1 ) × H q (S 1 ) × H q-1 (S 1 ) → H q-1 (S 1 )
is smooth because H q-1 (S 1 ) is a multiplicative algebra. For the same reason, it is clear that

(ϕ, v, σ) → 2αv -κσ 2 + (a -3) 1 ϕ 2 x v 2 x -av 2 , from D q (S 1 ) × H q (S 1 ) × H q-1 (S 1 ) to H q-1 (S 1 ) is smooth. Therefore, if we can prove that (ϕ, w) → (A -1 D) ϕ w, D q (S 1 ) × H q-1 (S 1 ) → H q (S 1 )
is smooth, we are done, using the chain rule. Now, observe that (1 -D) and (1 + D) belong to Isom(H q (S 1 ), H q-1 (S 1 )), for q ≥ 1, and that

A -1 D = 1 2 (1 -D) -1 -(1 + D) -1 , because A = (1 -D)(1 + D). Therefore (A -1 D) ϕ = 1 2 (1 -D) -1 ϕ -(1 + D) -1 ϕ . But D ϕ = 1 ϕ x D
and hence ϕ → (1 ± D) ϕ from D q (S 1 ) to Isom(H q (S 1 ), H q-1 (S 1 )) is smooth. Moreover, since the set Isom(H q (S 1 ), H q-1 (S 1 )) is open in L(H q (S 1 ), H q-1 (S 1 )) and the mapping P → P -1 , Isom(H q (S 1 ), H q-1 (S 1 )) → Isom(H q-1 (S 1 ), H q (S 1 ))

is smooth, we conclude that (1 -D) -1 ϕ w and (1 + D) -1 ϕ w both depend smoothly on (ϕ, w).

Applying the Cauchy-Lipschitz (or Picard-Lindelöf) theorem in the Hilbert manifold T H q G, we obtain the following local-existence result for the geodesics.

Corollary 5.3. Let q > 3/2. For each initial data (g 0 , V 0 ) ∈ T H q G, there exists a unique non-extendable solution (g, V ) ∈ C ∞ (J q , T H q G), of the Cauchy problem (4.5) for the geodesic equations, with g(0) = g 0 and V (0) = V 0 , defined on some maximal interval of existence J q = J q (g 0 , V 0 ), which is open and contains 0. Moreover, the solution depends smoothly on the initial data.

Finally, taking account of lemma 5.1, we obtain the following.

Corollary 5.4. Let q > 5/2 and α ∈ R. For each initial data (u 0 , ρ 0 ) ∈ H q (S 1 ) ⊕ H q-1 (S 1 ), there exists a unique non-extendable solution (u, ρ) ∈ C 0 (J q , H q (S 1 ) ⊕ H q-1 (S 1 )) ∩ C 1 (J q , H q-1 (S 1 ) ⊕ H q-2 (S 1 )), of the evolution equation (4.2), with (u(0), ρ(0)) = (u 0 , ρ 0 ), defined on some maximal interval of existence J q = J q (u 0 , ρ 0 ), which is open and contains 0. Moreover, the solution depends continuously on the initial data.

Furthermore, using the right-invariance of the spray, an argument due to Ebin & Marsden [START_REF] Ebin | Groups of diffeomorphisms and the motion of an incompressible fluid[END_REF] implies that the interval of existence J q in theorem 5.3 is independent of the Sobolev index q and that for any smooth initial condition the solution exists in the smooth category. A proof of the following result follows along the lines of the proof of [START_REF] Escher | Right-invariant Sobolev metrics of fractional order on the diffeomorphism group of the circle[END_REF]Theorem 1.1]. We will only sketch it. Let Φ q be the flow of the spray F q and R τ be the (right) action of the rotation group S 1 on H q G, defined by

R τ • (ϕ, f, s) (x) := (ϕ(x + τ ), f (x + τ ), s), where (ϕ, f, s) ∈ H q G. Note that if V = (ϕ, f, s, v, σ, α) ∈ T D q+1 (S 1 ), then s → T R s • V, S 1 → T H q G is a C 1 map, and that d ds R τ • V = (ϕ x , f x , 0, v x , σ x , 0).
Moreover, since the spray F q and its flow Φ q are invariant under this action, we get

T V 0 Φ q (t).(ϕ 0,x , f 0,x , 0, v 0,x , σ 0,x , 0) = (ϕ x (t), f x (t), 0, v x (t), σ x (t), 0),
from which we deduce that if V 0 ∈ T H q+1 G then so is V (t), and conversely (by reversing time). We therefore also have a well-posedness result for (4.2) in the smooth category.

Corollary 5.5. Let α ∈ R and (u 0 , ρ 0 ) ∈ C ∞ (S 1 ) × C ∞ (S 1 ) be given. Then, there exists an open interval J with 0 ∈ J and a unique non-extendable solution

(u, ρ) ∈ C ∞ J, C ∞ (S 1 ) × C ∞ (S 1 )
of (4.2) with initial datum (u 0 , ρ 0 ).

Global solutions

Given the fact that the Camassa-Holm equation is embedded in the system (1.1), classical results, cf. [START_REF] Constantin | Existence of permanent and breaking waves for a shallow water equation: a geometric approach[END_REF][START_REF] Constantin | Wave breaking for nonlinear nonlocal shallow water equations[END_REF][START_REF] Constantin | Global weak solutions for a shallow water equation[END_REF] make clear that not all solutions to (1.1) can exist globally. Global in time solutions to (1.1) in the case a = 2, α = 0, κ = 1 have been constructed in [START_REF] Constantin | On an integrable two-component Camassa-Holm shallow water system[END_REF]. In this section, we will not construct global solutions, but we provide a criterion for a strong solution to the full system (1.1) to be defined for all time. Most of the proofs are similar to the ones given in [START_REF] Escher | Geodesic Completeness for Sobolev H s -metrics on the Diffeomorphism Group of the Circle[END_REF] and will only be sketched. Throughout this section, we work in the smooth category, and we let

(g, V ) ∈ C ∞ (J, T C ∞ G)
be the unique solution of the Cauchy problem (4.5), emanating from

(g 0 , V 0 ) ∈ T C ∞ G,
and defined on the maximal time interval J. The corresponding solution (u, ρ) of the Arnold-Euler equation (4.2) is a path

(u, ρ) ∈ C ∞ (J, C ∞ (S 1 ) ⊕ C ∞ (S 1 )), with (u(0), ρ(0)) = (u 0 , ρ 0 ). The momentum m(t) := Au(t) is defined as a path m ∈ C ∞ (J, C ∞ (S 1
)). We will now establish several a priori estimates that will lead to a global existence result. Lemma 6.1. We have

(ρ • ϕ)(t) • ϕ a-1 x (t) = (ρ • ϕ)(0) • ϕ a-1
x (0), for all t ∈ J.

Proof. Let ϕ be the flow of the time dependent vector field u. We have

d dt ρ • ϕ • ϕ a-1 x = (ρ t + ρ x u + (a -1)ρu x ) • ϕ • ϕ a-1
x , which vanishes because (u, ρ) solves (4.2). Corollary 6.2. Suppose that ρ 0 > 0. Then ρ(t) > 0 for all t ∈ J.

Proof. Due to lemma 6.1, we have

(ρ • ϕ)(t) = (ρ • ϕ)(0) ϕ a-1 x (0) ϕ a-1 x (t) > 0,
which achieves the proof because ϕ is an orientation-preserving diffeomorphism.

Corollary 6.3. Suppose that u x (t) ∞ is bounded on any bounded subinterval of J. Then ρ(t) ∞ is bounded on any bounded subinterval of J.

Proof. Let ϕ be the flow of the time dependent vector field u and set

α(t) = max x∈S 1 1/ϕ x (t).
Note that α is a continuous function. Let I denote any bounded subinterval of J, and set

K = sup t∈I u x (t) ∞ .
From equation ϕ t = u • ϕ, we deduce that

(1/ϕ x ) t = -(u x • ϕ)/ϕ x ,
and therefore, we have

α(t) ≤ α(0) + K t 0 α(s) ds.
Thus 1/ϕ x (t) ∞ is bounded on I due to Gronwall's lemma and the conclusion follows from lemma 6.1.

Lemma 6.4. Suppose that u x (t) ∞ is bounded on any bounded subinterval of J. Then

m(t) 2 H k + ρ(t) 2 H k+1
is bounded on any bounded subinterval of J, for all non-negative integer k.

Proof. We have

d dt m 2 L 2 + ρ 2 H 1 = α u x m -a u x m 2 -umm x -κ ρρ x m -uρρ x -(a -1) u x ρ 2 -u x ρ 2 x -uρ x ρ xx -(a -1) u xx ρρ x -(a -1) u x ρ 2 x .
After integrating by parts the terms

-umm x = 1 2 u x m 2 , and -uρ x ρ xx = 1 2 u x ρ 2 x ,
using the Cauchy-Schwarz inequality, and the fact that u

H 2 m L 2 , we obtain d dt m 2 L 2 + ρ 2 H 1 (1 + u x ∞ + ρ ∞ ) m 2 L 2 + ρ 2 H 1
and the conclusion holds from corollary 6.3 and by Gronwall's lemma. Suppose now that k ≥ 1. We will show by induction on k that (6.1)

d dt m 2 H k + ρ 2 H k+1 (1 + m H k-1 + ρ H k ) m 2 H k + ρ 2
H k+1 , which will achieve the proof, using Gronwall's lemma. For k = 1, we only need to estimate the term

m x m tx + ρ xx ρ txx , because u x ∞ + ρ ∞ m L 2 + ρ H 1 . We have first m x m tx = α u xx m x -a u xx mm x -a u x m 2 x -u x m 2 x -um xx m x -κ ρ 2 x m x -κ ρρ xx m x .
Integrating by parts the term

-um xx m x = 1 2 u x m 2 x ,
using the Cauchy-Schwarz inequality and the fact that H 1 (S 1 ) is a multiplicative algebra, we get

m x m tx u H 2 m H 1 + u H 2 m 2 H 1 + u x ∞ m 2 H 1 + ρ 2 x L 2 m H 1 + ρ ∞ ρ H 2 m H 1 . Now, using the following estimates u H 2 m L 2 , u x ∞ m L 2 , ρ ∞ ρ H 1 , together with ρ 2 x L 2 ρ H 1 ρ H 2 ,
we obtain

m x m tx (1 + m L 2 + ρ H 1 ) m 2 H 1 + ρ 2 H 2 .
We have next

ρ xx ρ txx = -u xx ρ x ρ xx -2 u x ρ 2 xx -
ρ xx ρ txx u H 2 ρ 2 x H 1 + u x ∞ ρ 2 H 2 + u x ∞ ρ 2 H 2 + ρ ∞ u H 3 ρ H 2 + u H 2 ρ 2 x H 1 + u x ∞ ρ 2 H 2 .
Using the fact that H 1 (S 1 ) is a multiplicative algebra and the following estimates

u H 2 m L 2 , u x ∞ m L 2 , u H 3 m H 1 , ρ ∞ ρ H 1 ,
we thus obtain

ρ xx ρ txx ( m L 2 + ρ H 1 ) m 2 H 1 + ρ 2 H 2 ,
which achieves the proof for k = 1, using again Gronwall's lemma and the first a priori estimate obtained on m L 2 + ρ H 1 . Assuming now that (6.1) is true for k ≥ 1, we will show that the same is true for k + 1. We have k+2) .

d dt m 2 H k+1 + ρ 2 H k+2 = d dt m 2 H k + ρ 2 H k+1 + 2 m (k+1) t m (k+1) + 2 ρ (k+2) t ρ (
Thus, we need to estimate (6.2) α (u x ) (k+1) m (k+1) -a (u x m) (k+1) m (k+1) -(um x )m (k+1)

-κ (ρρ x ) (k+1) m (k+1) -(uρ x ) (k+2) ρ (k+2) -(a -1) (u x ρ) (k+2) ρ (k+2) .

Using the following estimate derived from the Leibnitz formula:

(f g) (n+1) h (n+1) f H n g H n+1 h H n+1 + f g (n+1) h (n+1) + f (n+1) gh (n+1) ,
where f, g, h ∈ C ∞ (S 1 ) and n ≥ 1, we deduce, using some integration by parts, that each term in (6.2) is bounded, up to a multiplicative constant by

(1 + m H k + ρ H k+1 ) m 2 H k+1 + ρ 2
H k+2 , which achieves the proof.

In [START_REF] Escher | Geodesic Completeness for Sobolev H s -metrics on the Diffeomorphism Group of the Circle[END_REF] the following distance on D q (S 1 ) was introduced,

d q (ϕ 1 , ϕ 2 ) := d C 0 (ϕ 1 , ϕ 2 ) + ϕ 1x -ϕ 2x H q-1 + 1/ϕ 1x -1/ϕ 2x ∞ ,
which makes (D q (S 1 ), d q ) a complete metric space. Following [19, Section 5], we can check that the spray F q defined in Theorem 5.2 is bounded on bounded sets of T H q G (since the proof is similar, we redirect to this reference for the details). As a consequence of the a priori estimates obtained in Corollary 6.3 and Lemma 6.4, we obtain therefore the following theorem. Theorem 6.5. Let (u 0 , ρ 0 ) ∈ C ∞ (S 1 ) × C ∞ (S 1 ) and (u, ρ) ∈ C ∞ (J, C ∞ (S 1 ) ⊕ C ∞ (S 1 )), be the solution of (4.2) with (u(0), ρ(0)) = (u 0 , ρ 0 ). Suppose that u x (t) ∞ is bounded on any bounded subinterval of J. Then, the solution (u(t), ρ(t)) is defined for t ∈ R. Remark 6. Note that theorem 6.5 is still true for a solution (u, ρ) ∈ C 0 (J q , H q (S 1 ) ⊕ H q-1 (S 1 )) ∩ C 1 (J q , H q-1 (S 1 ) ⊕ H q-2 (S 1 )), for q big enough but the proof requires the use of a Friedrich's mollifier and Kato-Ponce estimate (see [START_REF] Escher | Geodesic Completeness for Sobolev H s -metrics on the Diffeomorphism Group of the Circle[END_REF]Theorem 5.1]), to establish the a priori estimate given in lemma 6.4.

Remark 7. It is well-known that the Camassa-Holm equation (CH) has solutions which blow-up in finite time, cf. [START_REF] Constantin | Wave breaking for nonlinear nonlocal shallow water equations[END_REF]. One way to exhibit such solutions uses the fact that a solution which is spatially odd initially will remain spatially odd at each time. This is a consequence of the following symmetry of the equation u(x) → -u(-x). It could be interesting to note that equation (4.2) is invariant under the transformation u(x) → -u(-x), ρ(x) → -ρ(-x), α → -α, but unfortunately not by the transformation u(x) → -u(-x), ρ(x) → -ρ(-x), unless α = 0. In particular, there is no reason, contrary to (CH), that a solution (u, ρ) of (4.2), which is spatially odd for t = 0 will remain odd at time t. There are classes other than odd initial data which lead to a finite time blow-up for the Camassa-Holm equation. The specification of compatible initial conditions for system (1.1) with α = 0 remains open.

  [START_REF] Escher | Well-posedness and blow-up phenomena for the 2-component Camassa-Holm equation[END_REF]) and (3.21), we find(3.22)

  uρ xxx ρ xx -(a -1) u xxx ρρ xx -2(a -1) u xx ρ x ρ xx -(a -1) u x ρ 2 xx ,from which we deduce

Acknowledgements

D. Henry, B. Kolev and T. Lyons were supported by the Irish Research Council-Campus France PHC "Ulysses" programme. All the authors would like to thank Rossen Ivanov for his stimulating discussions, and Cathy and Michel for their kind hospitality at Les Grandes Molières during the preparation of this work. The authors would like to thank the anonymous referee for helpful suggestions and comments.