Stefan Ene
email: stefan.ene@cti.pub.ro

Bogdan Nicolae
email: bogdan.nicolae@acm.org

Alexandru Costan
email: alexandru.costan@inria.fr

Gabriel Antoniu
email: gabriel.antoniu@inria.fr

To Overlap or Not to Overlap: Optimizing Incremental MapReduce Computations for On-Demand Data Upload

Keywords: MapReduce, data management, incremental processing

Research on cloud-based Big Data analytics has focused so far on optimizing the performance and cost-effectiveness of the computations, while largely neglecting an important aspect: users need to upload massive datasets on clouds for their computations. This paper studies the problem of running MapReduce applications when considering the simultaneous optimization of performance and cost of both the data upload and its corresponding computation taken together. We analyze the feasibility of incremental MapReduce approaches to advance the computation as much as possible during the data upload by using already transferred data to calculate intermediate results. Our key finding shows that overlapping the transfer time with as many incremental computations as possible is not always efficient: a better solution is to wait for enough to fill the computational capacity of the MapReduce cluster. Results show significant performance and cost reduction compared with state-of-the-art solutions that leverage incremental computations in a naive fashion.

INTRODUCTION

In recent years, big data analytics has proven an indispensable tool in transforming science, engineering, medicine, healthcare, finance and ultimately business itself, thanks to the unprecedented ability to extract new knowledge and automatically find correlations in massive datasets that naturally accumulate in our digital age [START_REF] Hey | The Fourth Paradigm: Data-Intensive Scientific Discovery[END_REF]. In this context, the MapReduce [START_REF] Dean | MapReduce: simplified data processing on large clusters[END_REF] model and its open-source implementation, Hadoop [START_REF] White | Hadoop: The Definitive Guide[END_REF], were widely adopted by both industry and academia, thanks to a simple yet powerful programming model that accelerates the application development while inherently enabling a high throughput and scalability for processing large volumes of data.

However, an important limitation of the original MapReduce model is the constraint of having all data available before a job can be started. This limitation can become a serious problem especially when the input data is massive and needs to be uploaded from an external source, which involves large data transfers over network links of limited capacity: under such circumstances, even the best MapReduce implementation cannot stop the overall time-tosolution from growing to unacceptable levels. Still, due to its perceived simplicity, the most widely used approach encountered in practice does consist in uploading all necessary data to a MapReduce cluster before running the corresponding MapReduce job.

To cope with the challenges posed by the need to process massive input data, a possibly better solution would consist in overlapping data transfer with data processing. Although apparently straightforward, such a solution is not trivial, as it requires the ability to perform efficient incremental computations, i.e., leverage older results when new data is added to an existing dataset in order to save time in the calculation of the new overall result. In this case, all the time required to perform the data transfers can be leveraged to calculate intermediate results that simplify the computation once the data transfer is finished. In the context of MapReduce, one way to apply this idea is to modify the application to exhibit incremental behavior. This however is difficult and undesired, both because of added complexity and of performance issues (e.g., because intermediate results need to persist in the storage layer).

Luckily, a whole family of extensions to MapReduce and its implementations have recently emerged in order to facilitate efficient incremental computations (e.g. Hourglass [START_REF] Hayes | Hourglass: A library for incremental processing on Hadoop[END_REF]). However, such extensions are mostly designed for a scenario when the amount of data is unknown in advance, but intermediate results are desired at known moments in time (e.g., daily statistics). In our case, the exact opposite is true: the total amount of data is known in advance and the moment when intermediate results are generated is not important: they are only needed as long as they help reduce the complexity of the computation once the data transfer is finished.

This novel perspective on incremental MapReduce computations is further complicated by the rise of cloud computing [START_REF] Vaquero | A Break in the Clouds: Towards a Cloud Definition[END_REF]: since most users cannot afford buying and maintaining their own big data infrastructure, they often prefer the pay-as-you go utility model of cloud computing where the costs are proportional to the amount of computational resources used by the application. In this context, it is not enough to minimize the time-to-solution (which implies the need to minimize the compute time after the data trans-fers have finished); in addition, another important goal is to reduce the overall costs required to obtain the solution!

In this paper, we explore how to optimize incremental MapReduce computations specifically for the case when a large dataset needs to be transferred and processed on a remote cloud. In a nutshell, our approach advances the computation during the data transfers as much as possible, but with the minimal possible effort. This improves the timeto-solution while minimizing the cost necessary to do so. To this end, we show that it is not always efficient to attempt to overlap the transfer time with as many incremental computations as possible, but rather a trade-off is involved: sometimes it is better to wait for more data to accumulate before starting any incremental computation.

We summarize our contributions as follows:

• We introduce a series of design principles that facilitate efficient incremental MapReduce computations during ongoing data transfers. In particular, we establish a correlation between the capacity of the compute cluster and the amount of incremental data to be processed. It serves to decide when to initiate an incremental computation and when to wait for more data to accumulate (Section 3.1).

• We show how to materialize these design principles in practice through a series of algorithmic descriptions (Section 3.2) illustrated by a prototype architecture (Section 4) and implemented in practice using the Hourglass [START_REF] Hayes | Hourglass: A library for incremental processing on Hadoop[END_REF] framework (Section 5).

• We evaluate our approach in a series of extensive experiments conducted on the Grid'5000 [START_REF] Bolze | Grid'5000: A large scale and highly reconfigurable experimental grid testbed[END_REF] testbed, using a real-life MapReduce application. They demonstrate significant benefits for our approach in terms of cost and compute time after the data transfer has finished, both when compared to a simple incremental approach and to a serialized approach that waits until the data transfer has finished (Section 6).

RELATED WORK

The MapReduce model and its implementations have been recently extended to better fit a variety of application requirements. Examples of such extensions include interactive analytics, job pipelining, iterative processing and the support for incremental computations. We focus on this latter direction. Previously proposed frameworks try to cope with incremental workloads in two ways: 1) by reusing the results of prior computations transparently through iterative processing, at the cost of additional overhead brought by loop control mechanisms; 2) by introducing new programming models to store and use state across successive runs so that only the necessary sub-computations need be performed. In contrast, our approach maintains the clean programming model of MapReduce and does not add any component for centralized control.

A class of research efforts leverage iterative frameworks for incremental processing, attempting to reuse the results of previous computations and targeting applications that reuse a working set of data across multiple parallel operations. Spark [START_REF] Zaharia | Spark: cluster computing with working sets[END_REF] was developed to optimize iterative and interactive computations. It uses caching techniques to improve performance for repeated operations. Spark exposes a functional programming interface that can be used interactively as a general-purpose language to process large datasets on a cluster. Rather than proposing new high-level programming languages, our optimizations rely on the simple MapReduce model, enhanced to support the overlap of transfers and computations, so that they can be easily adopted by the existing applications without any modification.

Several systems introduced support for iterative MapReduce processing. As Hadoop does not support iterative processing by design, HaLoop [START_REF] Bu | Haloop: efficient iterative data processing on large clusters[END_REF] was built on top of it with this purpose. It relies on a loop-aware task scheduler and on loop-invariant data caching. Besides HaLoop, other solutions accelerate iterative algorithms by maintaining iteration state in memory. Twister [START_REF] Ekanayake | Twister: A Runtime for Iterative MapReduce[END_REF] employs a light-weight MapReduce runtime system and uses publish / subscribe messaging-based communication instead of a distributed file system. iMapReduce [START_REF] Zhang | iMapReduce: A Distributed Computing Framework for Iterative Computation[END_REF] and MapIterativeReduce [START_REF] Tudoran | MapIterativeReduce: A Framework for Reduction-intensive Data Processing on Azure Clouds[END_REF] extract common features of iterative algorithms and provide support for them. All of these frameworks target applications with iterations across MapReduce jobs and require additional components and programming efforts to automatically aggregate their input and output. We specifically addresses this issue by scheduling map jobs as soon as their input data is available; map and data transfer jobs can thus be interleaved and the usual barrier between these two phases be eliminated.

More recently, dedicated solutions were proposed for incremental processing. Using basic arithmetic, they can update the output from the previous computations by adding and subtracting input data, instead of re-executing the whole processing. Hourglass [START_REF] Hayes | Hourglass: A library for incremental processing on Hadoop[END_REF] is developed at LinkedIn and targets computations over sliding windows. For these types of computations, the input data is partitioned in some way, usually according to time, and the range of input data to process is adjusted as new data arrives. It runs on unmodified Hadoop and provides an accumulator-based interface for programmers to store and use state across successive runs. In the database world, Google's Percolator [START_REF] Peng | Large-scale Incremental Processing Using Distributed Transactions and Notifications[END_REF] allows transactional updates to a database through a trigger-based mechanism. Similarly to Hourglass, the system provides a metaphor to keep track of the state of the incremental computation, called observer: piece of code that is invoked by the system whenever a user-specified column changes. The main drawback of these systems is their focus on particular use cases, which makes them difficult to get adopted by a larger, scientific community: their were written for some precise goals (e.g. dashboard statistics, web index updating) and incorporate some of the application semantics into the programming model (e.g. in Hourglass, the input data needs to be portioned by days).

In the cloud data management ecosystem, a popular solution is upload data to generic cloud storage services (e.g., Amazon S3 [1], Azure Blobs [START_REF] Calder | Windows Azure Storage: a highly available cloud storage service with strong consistency[END_REF], etc.), after which the computations are started. Typically, they are not concerned by achieving high throughput, nor by potential optimizations, not to mention their inability to overlap transfers and computations. A number of alternative solutions aim to improve the cloud data transfers throughput by exploiting the network and the end-system parallelism or a hybrid approach between them. Multi-hop path splitting solutions [START_REF] Tudoran | Bridging Data in the Clouds: An Environment-Aware System for Geographically Distributed Data Transfers[END_REF] replace a direct TCP connection between the source and destination by a multi-hop chain through some intermediate nodes. Multi-pathing [START_REF] Raiciu | Data center networking with multipath TCP[END_REF] employs multiple independent routes to simultaneously transfer disjoint chunks of a file to its destination. These solutions come at some costs: under heavy load, per-packet latency may increase due to timeouts while more memory is needed for the receive buffers.

Due to a clear separation between the the data staging phase and the computation, the state-of-art approaches presented before focus on either one or another of the phases. Thus, to our best knowledge, this is the first approach that simultaneously focuses on both data upload and processing. By keeping resources idle in order to have "enough" data, our approach has the potential to drastically reduce costs in the context of the next generation Resource-as-a-Service clouds [START_REF] Ben-Yehuda | The Rise of RaaS: The Resource-as-a-service Cloud[END_REF]. With this emerging model, compute and I/O resources will be rented and charged for in fine-grain, dynamically changing amounts and not in fixed bundles, as on today's IaaS clouds. Our proposal aims to become a building block of this new paradigm.

SYSTEM DESIGN

This section describes the design principles and algorithms behind our approach (Sections 3.1 and 3.2), while the next ones show how to apply them in a cloud architecture (Section 4) and finally how to efficiently implement them in practice (Section 5).

Design Principles

Our proposal relies on the following key ideas:

Advance the computation during data transfers using asynchronous incremental jobs.

One of our main goals is to minimize the computation time after the data transfer has finished, which ultimately minimizes the time-to-solution for our problem. To achieve this, we propose to advance the computation as much as possible during the data transfer by computing intermediate results asynchronously in order to leverage them after the transfer has finished. This is an iterative process: when a certain amount of data was collected, a new incremental job is started to obtain the result for the data received so far. While the job is running, new data is accumulated in the background. When the job has finished and enough new data is accumulated, a new incremental job is started that computes the new result and combines it with the previous result to obtain the overall result. The process is repeated as long as the data transfer is not finished or there is still unconsumed data left. Using this approach, the complexity of the problem at the moment when the data transfer has finished is reduced to the complexity of the last incremental job that needs to process the remaining data.

Wait to accumulate enough data to fill the computational capacity ("wave size").

A naive implementation of the iterative process described above is to start a new incremental job as soon as the previous one has finished, regardless of the amount of accumulated data. Such a solution is optimal when the completion time for a jobs is equal to the sum of the completion times for an arbitrary decomposition into sub-jobs. However, in our context this is hardly the case, because MapReduce jobs are highly parallelizable. To illustrate this point, consider the completion time for a trivial job that involves a single map task and its corresponding reducer. If we were to double the size of the problem, we would need two mappers that generate two times more output. However, if we have enough resources to run these mappers in parallel and use two reducers to handle the aggregation in parallel as well, then the completion time should remain virtually unchanged (assuming there is an even distribution of the values among the reducers). Starting from this observation, an intuitive generalization is that the completion time for an incremental job remains roughly the same as long as the data involved fits into the computational capacity of the MapReduce cluster (henceforth called wave size). Based on this intuitive generalization, it is easy to notice that starting an incremental job before wave size was accumulated in the background is sub-optimal, because it increases the compute time unnecessarily. This has two negative consequences: (1) there is an obvious risk to increase the time-to-solution (which is not mandatory if the computation can be masked by the overlap with the data transfer); and (2) a longer compute time means more operational costs due to resource utilization. Thus, an obvious conclusion is to wait until enough wave size data was accumulated in the background, such as to leverage the entire computational capacity at its full potential. Note that overhead of reading and combining the previously accumulated result with the output of the latest incremental job is handled during the reduce phase of the latest incremental job. Thus, it is not necessary to explicitly dedicate computational resources for this task. However, in a typical MapReduce setup, it is necessary to reserve a number of extra resources for the purpose of running speculative tasks towards the end of the job (e.g., in order to deal with slow mappers). Thus, for practical purposes, wave size is slightly smaller than the total computational capacity.

Optimize the number and size of increments according to wave size.

Although it may happen that the total size of the data to be uploaded is a multiple of wave size, for the vast majority of cases this does not hold. Thus, if we were to wait in the beginning until the wave size is reached before starting the first incremental job, we would be left in the end with less than wave size for the last job. However, since the last job takes the same time to finish regardless of the remainder size, a much better strategy is to wait in the beginning only until the remainder is reached, such that a full wave size remains for the last incremental job. Using this strategy, the overall time-to-solution is reduced, because starting the first incremental job with less data means less wait time in the beginning, that cannot be overlapped with the computation. Furthermore, once the first incremental job was launched and the rest of the data is guaranteed to be a multiple of wave size, it is possible to receive more than twice the wave size before a concurrent job has finished. If that is the case, we propose to set the increment size for the next job as the largest multiple of wave size smaller than the size of the newly received data. Using this optimization, we minimize the number of "fully loaded" incremental jobs necessary to process the difference, which avoids the unnecessary overhead resulting from running multiple successive incremental jobs (as exhibited by a naive approach that simply fixes the increment size to the wave size).

Algorithms

In this section, we zoom on the design principles presented in Section 3.1 by providing an algorithmic description. We ignore the data transfer itself and assume that it is an external process initiated by the user that is completely decoupled from the computation and satisfies two properties:

(1) the total size of the data to be transferred to the cloud storage (denoted D) is known in advance; and (2) there is a mechanism to query how much data was transferred so far (primitive QueryProgress). Furthermore, we assume that the wave size (denoted W ) is proportional to the number of slots allocated for mappers and reducers (denoted N ), minus a small number of reserved slots K (configurable value) used for running speculative mappers. More specifically, W = C • (N -K), where C denotes the chunk size (typically 64 MB). Algorithm 1 illustrates how to materialize the design principles presented in Section 3.1. Given D, N, K and C as input, the first step is to calculate W . Then, the next step is to wait until at least D mod W data was transferred. If more than D mod W was transferred, then it makes sense to enlarge the increment beyond D mod W such that it packs together as many full waves as possible beyond the remainder. Once the optimal size for the first increment was established, the corresponding asynchronous incremental job is started. For simplicity, we assume that the transferred data is streamed and stored as single unstructured sequence of bytes in the storage layer of the MapReduce deployment (e.g., a file in HDFS [2] or GPFS [START_REF] Schmuck | GPFS: A Shared-Disk File System for Large Computing Clusters[END_REF]). By convention, we delimit the data corresponding to an increment as X..Y , where X is the offset of the first byte and Y is the offset of the last byte in the sequence. However, this is only a simplified conceptual structuring that is by no means a requirement: in practice, the data corresponding to X..Y may be stored in multiple files or even be part of a higher level abstraction (e.g. sharded and indexed in a custom fashion). The asynchronous incremental job is responsible both to process the data X..Y and to combine the result with the previous intermediate result (which initially is ∅). The new intermediate result is stored into Result. Note that Result needs not be stored into the storage layer: this detail is left to the implementation of the incremental MapReduce middleware, which may choose to use a different location optimized for non-persistent data (e.g. local storage devices where intermediate mapper output is written).

Once the first increment was processed, the remainder Head..D is processed in increments that span as many full Figure 1: A simplified cloud architecture that integrates our approach waves as it was possible to transfer while AsyncIncrementJob was running. Note that since Head..D is a multiple of W , the loop will always finish. Finally, a final wait is necessary for the last incremental job to finish, after which the algorithm completes.

ARCHITECTURE

We depict a simplified cloud architecture that integrates our approach in Figure 1. The cloud client holds a large dataset that needs to be processed using a MapReduce job. It has access to an analytics cloud that employs a MapReduce deployment capable of supporting incremental computations. There are no constraints on the incremental MapReduce deployment itself: it can either be a custom installation on top of virtual machines in an IaaS cloud or a providermanaged PaaS. The only requirement is that the MapReduce deployment exposes its storage layer (e.g. HDFS [2] or GPFS [START_REF] Schmuck | GPFS: A Shared-Disk File System for Large Computing Clusters[END_REF]) externally to the cloud client, so that there is a direct way to upload the dataset while running the incremental MapReduce jobs at the same time.

Typically, the storage layer will comprise a set of data nodes (denoted DN ), which are used at the same time as compute nodes for the MapReduce jobs. Thanks to this architectural feature of MapReduce deployments, the data nodes will mostly serve local I/O requests (e.g. issued by mappers scheduled close to the data), which minimizes the network bandwidth utilization and thus any potential interference with the data upload. Thus, exposing the storage layer to the user is not only efficient because it enables direct uploads, but also because it is well suited by design for our scenario.

The algorithm presented in Section 3.2 is implemented as a runtime control module that runs on the master node (denoted MN ) and is responsible to coordinate the data transfer and initiate the incremental MapReduce jobs. It can be deployed either by the user directly, or it can be exposed by the cloud provider as a service in itself. Thanks to the decoupling of the data transfer from the computation, there is no constraint with respect to when or in what order to start the two. If the computation starts before the data transfer, then it will wait until D mod W data was gathered.

If it starts after the data transfer, the initial optimization (that packs together as many full waves as possible beyond the reminder for the first incremental job) can efficiently handle even a scenario where a large part of the data transfer is already complete. Even at the extreme, when the data transfer is already finished before the computation is started, our algorithm gracefully reduces the computation to a single job, without splitting the computation unnecessary into multiple increments. Thus, users can take advantage of this flexibility to optimize when to start the data transfer and the computation, depending the dynamicity of cost model (e.g., delay until the price of the bandwidth utilization or the VM instances reaches a desired level).

IMPLEMENTATION

We have chosen to implement our approach on top of Hourglass [START_REF] Hayes | Hourglass: A library for incremental processing on Hadoop[END_REF], an incremental MapReduce framework specifically designed to make computations over sliding windows. These sliding windows typically correspond to temporal data partitioned on a per-day basis and are particularly useful in two scenarios: (1) the length of the window is set to some constant number of days and the entire window moves forward as new data becomes available (e.g., a daily report summarizing the the number of visitors to a site from the past 30 days); and (2) the beginning of the window stays constant, but the end slides forward as new input data becomes available (e.g., a daily report summarizing all visitors to a site since the site launched).

In our case, the second scenario applies: the window represents the data transferred so far, for which an updated result is needed. Since Hourglass requires the input data to be partitioned on a per-day basis, we decided to associate the notion of day to chunk size, such that the smallest possible increment that can be processed by an incremental job is a chunk. This level of granularity is also reported by the QueryProgress() primitive used in Algorithm 1 (i.e. the data transfer is reported to have made progress only when at least a full chunk was transferred to the storage layer).

The runtime control module (mentioned in Section 4) that schedules the incremental MapReduce jobs is implemented as a series of bash scripts. Besides the functionality corresponding to Algorithm 1, the implementation also reorganizes the data in such way that it fits the per-day partitioning layout expected by Hourglass. More specifically, Hourglass being implemented on top of Hadoop, it relies on HDFS as its storage layer and expects a fixed directory and file structure for the days. This reorganization of data happens on the client side, before it is uploaded remotely to the HDFS deployment.

EVALUATION

This section presents a preliminary experimental evaluation of our work using a real-life MapReduce application.

Experimental setup

The experiments were performed on the Grid5000 [START_REF] Bolze | Grid'5000: A large scale and highly reconfigurable experimental grid testbed[END_REF], an experimental testbed that federates nine sites in France. We used 11 nodes (interconnected with Gigabit Ethernet) of the Rennes site, each of which is equipped with two quad-core AMD Opteron 6164 HE 1.7 Ghz processors, 48 GB memory and local storage of 250 GB (SATA AHCI Controller).

Out of the 11 nodes, 10 nodes are used for the Hour-glass deployment and the remaining node corresponds to the client and is used as the source of data upload. We use Hourglass v0.1.3 (based on Hadoop v1.2.1) on the 10 nodes in the following configuration: all nodes serve the role of slaves, running a co-located TaskTracker and HDFS DataNode process using 12 slots for mappers and reducers. In addition, one node also serves the role of master, running a JobTracker and a HDFS NameNode (for a small deployment such as ours, the management overhead incurred by the master role is small enough to justify co-location with the slave role). The chunk size is fixed at 64 MB. Thus, the total capacity of the cluster is N = 120 slots, out of which K = 10 are reserved, resulting in a wave size W = 7040 MB. Furthermore, the runtime control module that implements our approach (described in Section 5) is also running on the master node.

An important part of our study is to understand how the computation and the data transfer can be overlapped when using different upload speeds. This aspect is important, because cloud clients may have different upload capabilities depending on network quality or even cost (e.g., they would prefer to use a low upload throughput in order to pay less for bandwidth utilization). To this end, we use Traffic Control (TC) to limit the outgoing traffic from the client node to a desired throughput. For our setup, we achieved a maximum write throughput into HDFS of 17.4 MB/s (using the standard replication factor of three). Thus, in our experiments we vary the upload throughput from 1 MB/s to 17.4 MB/s.

The computation itself is a real-life MapReduce application that counts the number of events for a given id and is part of the Hourglass distribution. It is conceptually similar to WordCount, but has different input format: a big text composed of lines, with each line corresponding to an event (which is frequently the case of log files). The input data for this application is (unless otherwise specified) 20 GB and was generated using a random generator that is part of the Hourglass distribution. This results in a minimum of three waves necessary to complete the computation.

Methodology

We compare three approaches throughout or evaluation:

Serialization of upload and computation.

This approach is non-incremental: first, the dataset is uploaded into HDFS. Once the upload has finished, the computation is performed using a single job that covers the whole dataset. For the rest of this paper, we refer to this approach as simple.

Start next incremental job as soon as the previous one finished.

This approach implements a naive incremental strategy that starts the computation right away, waiting only for a minimal amount of data to accumulate for the first increment. Then, it accumulates new data in the background while the incremental job is running and starts the next incremental job as soon as the previous one finished. For the rest of this paper, we refer to this approach as greedy.

Our approach.

This approach minimizes the number of increments and optimizes their size to be as close as possible to a multiple of computational capacity, according to the algorithm dis- cussed in Section 3.2. For the rest of this paper, we refer to this approach as our-approach.

These three approaches are compared based on the following metrics:

• Time-to-solution is the total time elapsed between the moment when the data transfer has started and the moment when the overall results are obtained. This metric represents the absolute performance as observed by the end user.

• Compute time after data upload is the time required to finalize the computation after the data upload has finished. This metric is important because it shows how well each of the approaches can overlap the computation with the data transfer in order to make progress during the data upload. A low value indicates better performance.

• Cost efficiency represents a cost estimation for running the application, using a simple cost model that differentiates between two states: (1) the MapReduce cluster is in stand-by, waiting for a new incremental job to be issued; (2) the MapReduce cluster is busy processing an incremental job. The cost estimation is C approach = Wc * Tc + Wi * Ti, where Wc, Wi are coefficients corresponding to the cost perceived per unit of time when the cluster is busy/idle, while Tc, Ti is the duration of the two states. A lower value indicates lower cost.

Preliminaries

Before running the comparative evaluation, we present in this section a series of preliminary experiments that aim to demonstrate the fact that the assumptions we base our design principles upon (described in Section 3.1) hold in practice.

To this end, we focus on the evaluation of the weak scalability and strong scalability of the Hourglass application presented in Section 6.2. Figure 2, depicts the runtime for an increasing number of reducers corresponding to the dataset sizes of 0.57 GB, 1.15 GB, and 2.3 GB (which fill the capacity of 9, 18, 36 mappers respectively). Since the mappers are completely decoupled, the map phase is trivially scalable for an increasing number of mappers as long as the cluster capacity is not reached. Thus, the overall weak scalability of the job largely depends on the scalability of the reduce phase. As can be observed, when the number of mappers greatly outnumbers the number of reducers, there are not enough reducers to efficiently parallelize the reduce phase, which at the extreme leads to an increase of up to 35% in runtime (36 mappers and 9 reducers). However, when the number of reducers is increased to at least the number of mappers, the difference in runtime becomes less than 5% regardless of the data size. Furthermore, increasing the number of reducers beyond the number of mappers does not lead to significant differences in runtime. This can be explained by the fact that more reducers have a higher parallelization potential but suffer from higher overhead, because each reducer needs to collect a smaller piece from all outputs of the mappers (which are distributed). Thus, we conclude that using the maximum number of reducers and waiting for enough data to accumulate in order to fill the maximum number of mappers is enough to achieve a near-optimal solution. Ultimately, this confirms our intuition to use incremental jobs that process data sizes that are multiple of the wave size.

Performance evaluation

Our next series of experiments focuses on the performance of the three approaches described in Section 6.2. To this end, we evaluate each approach for a variable upload speed that is increased from 1.8 MB/s to 17.4 MB/s (which is the maximum throughout that the HDFS deployment can sustain). The upload speed is controlled according to the mechanism described in Section 6.1.

The results are depicted in Figure 3. The time-to-solution (depicted in Figure 3(a)) reveals an interesting finding: for small upload speeds, only comparatively small fraction of time is needed for the computation. Thus, all three approaches perform closely, with our-approach being faster than simple and greedy by 5% and 1% respectively. As the upload speed increases, the difference between simple and the other two approaches increases significantly, with our approach up to 30% faster at the extreme of 17.4 MB/s. However, the difference with respect to greedy remains still at 1%.

Although in absolute terms the difference between greedy and our-approach is modest, this is expected because the throughput of the data transfer is significantly smaller than the throughput of the computation. However, note that this is a consequence of the simplicity of the application we considered: in a more computationally-intensive scenario, the differences in performance are expected to grow accordingly in favor of our approach.

To understand this effect better, we focus in Figure 3(b) on the compute time necessary to achieve the end result after the data upload has finished. By eliminating the data upload from the analysis, the difference between the three approaches becomes significantly larger and highlights a much lower computational overhead for our-approach. As it can be observed, our-approach manages to reduce the compute time after the data upload has finished by up to 40% when compared to greedy (with no reduction in some cases) and between 50%-60% when compared to simple.

Cost estimation

In this section, we estimate the cost necessary to run the application according to the cost metric C approach introduced in Section 6.2. To this end, we monitored in the previous set of experiments (Section 6.4) for each approach and each upload speed how much time the Hourglass deployment spends in idle mode and how much time it is busy with running incremental jobs.

Based on these measurements, we calculated C approach = Wc * Tc + Wi * Ti for each node individually and summed up the results for all 10 nodes in Figure 4. The coefficients Wi and Wc were fixed at 50 and 80, based on previous observations that nodes on Grid5000 consume 50 Wh when idle and 80 Wh when running MapReduce computations. We decided to use coefficients that reflect energy consumption in the cost model, because this is representative of the minimal operational cost incurred by the application. More specifically, the cloud provider needs to charge its users at least this amount, otherwise its business would not be profitable. By using this lower bound, we compare the cost effectiveness of the three approaches in the worst case, which makes our results relevant no matter how much the real prices are driven down by competition and proposals to adopt finer-grain cost models [START_REF] Ben-Yehuda | The Rise of RaaS: The Resource-as-a-service Cloud[END_REF] that bridge the gap between provisioned resources and their actual utilization.

As can be observed, our-approach incurs the least cost regardless of upload speed, both when compared with greedy and simple. The largest difference is observable for a slow upload speed: in the case of 1.8 MB/s, our approach reduces the cost by 44% compared with greedy. However, as the upload speed increases, the greedy approach becomes increasingly more cost-effective (down to 10%). On the other hand, the opposite holds for the difference between our-approach and simple: there is a significant growth from 4% in the case of 1.8 MB up to 23% in the case of 17.4 MB.

CONCLUSIONS

In this paper, we explore how to optimize incremental MapReduce computations specifically for the case when the input data is a large remote dataset that needs to be uploaded to the cloud first. Our main goal is to advance the computation as much as possible during the upload phase, such that the time spent in computations after the upload finishes is minimized. Furthermore, another important goal is to minimize the operational cost of doing so.

Unlike state of art approaches that are either optimized for different purposes or treat the computational problem independent of the data upload, to our best knowledge, this is the first approach which simultaneously focuses on both data upload and processing. In this context, we show that it is not always efficient to attempt to overlap the transfer time with as many incremental computations as possible: a better solution is to wait for enough to fill the computational capacity of the MapReduce cluster. Based on this idea, we developed and evaluated a preliminary prototype.

To demonstrate the viability of our prototype in real-life, we run extensive experiments in a distributed setting that involves a 11-node large incremental MapReduce deployment based on Hourglass. The results show significant benefits for our approach when compared with a simple incremental strategy that starts the next incremental job immediately after the previous has finished: the time-to-solution is improved by 1%, the compute time after the data transfer is finished is reduced by up to 40% and the cost is reduced 10%-44%. Compared with a serialized strategy that starts the computation only after all data was transferred, the time-to-solution is improved by up to 30%, the compute time after the upload finished is reduced by up to 60% and the cost is reduced between 4%-23%.

Encouraged by these results, we plan to broaden the scope of our work and experiment with more applications. We are also looking at the possibility of dynamically adapting the wave size to account for fluctuations in processing time or uneven distribution of values among reducers. Finally, we considered the cost optimization aspect by making use of a simple cost model. Using a more complex cost model that takes fluctuations in the price of resources and I/O bandwidth utilization into consideration is a promising avenue as well. Furthermore, we focused only on the cost from the perspective of the computation. Thus, an interesting avenue is to explore the cost also when taking storage into consideration. In this context, we plan to study the viability of several storage elasticity features introduced by our previous work [START_REF] Nicolae | Understanding Vertical Scalability of I/O Virtualization for MapReduce Workloads: Challenges and Opportunities[END_REF][START_REF] Nicolae | Bursting the Cloud Data Bubble: Towards Transparent Storage Elasticity in IaaS Clouds[END_REF][START_REF] Nicolae | Transparent Throughput Elasticity for IaaS Cloud Storage Using Guest-Side Block-Level Caching[END_REF].

Algorithm 1

 1 Algorithm to minimize the number of increments and align them to wave size procedure OptimizedIncComputation(D, N, K, C) W ← C • (N -K) wait until QueryProgress() ≥ D mod W Head ← ⌊ QueryProgress() /W ⌋ + D mod W Result ← AsyncIncrementJob(0..Head, ∅) while Head < D do wait until AsyncIncrementJob done wait until QueryProgress() -Head ≥ W Dif f ← ⌊(QueryProgress() -Head)/W ⌋ P revHead ← Head Head ← Head + Dif f Result ← AsyncIncrementJob(P revHead..Head, Result) end while wait until AsyncIncrementJob done end procedure

Figure 2 :

 2 Figure2: Weak scalability of Hourglass jobs: runtime for an increasing dataset size (expressed as number of parallel mappers needed to process it) using a variable number of reducers. Each mapper processes a chunk (64 MB).

Figure 4 :

 4 Figure 4: Cost estimation for a a dataset size of 20 GB and a variable upload speed. Wave size is 110 mapper/reducer slots and 10 slots are reserved.

  Figure 3: Performance results for a dataset size of 20 GB and a variable upload speed. Wave size is 110 mapper/reducer slots and 10 slots are reserved.

		14000								1400
		12000								1200
		10000								1000
	Time (s)	6000 8000						Simple Greedy	Time (s)	600 800				Simple Greedy
		4000						Our approach		400				Our approach
		2000								200
			0								0
			1.8	4.6	4.9	8	9.1	15.3	17.4		1.8	4.6	4.9	8	9.1	15.3	17.4
					Upload speed (MB/s)						Upload speed (MB /s)
			(a) Time-to-solution (lower is better)	(b) Time needed to finish the computation after the data upload is complete (lower is better)
			3000
			2500
			2000
	Time (s)	1500 1000						Greedy Simple Our approach
			500
			0
			1.8	4.6	4.9	8	9.1 15.3 17.4
					Upload speed (MB/s)


Marie-Aude Pascaud

Frank Griscelli

William Raoul

Elisabeth Marcos

Paule Opolon

Bernadette Raffestin

Michael Perricaudet

Serge Adnot

Saadia Eddahibi

Lung Overexpression of Angiostatin Aggravates Pulmonary Hypertension in Chronically Hypoxic Mice

Exposure to hypoxia leads to the development of pulmonary hypertension (PH) as a consequence of pulmonary smooth muscle hyperplasia. Hypoxia concomitantly stimulates lung expression of angiogenic factors. To investigate the role of angiogenesis processes in development of hypoxic PH, we examined the effects of lung overexpression of angiostatin, an angiogenesis inhibitor, on development of hypoxic PH and lung endothelial cell (EC) density. Angiostatin delivery was achieved by a defective adenovirus expressing a secretable angiostatin K3 molcule driven by the cytomegalovirus promoter (Ad.K3). Comparison was made with a control vector containing no gene in the expression cassette (Ad.CO1). Treatment with Ad.K3 (300 plaque-forming units [pfu]/cell) inhibited cultured human pulmonary artery EC migration by 100% and proliferation by 50%, but was without effects on human pulmonary artery smooth muscle cells. After intratracheal administration of Ad.K3 (10 9 pfu) to mice, angiostatin protein became detectable in bronchoalveolar lavage fluid. Mice pretreated with Ad.K3 1 d before a 2-wk exposure to hypoxia (10% O 2 ) showed more severe pulmonary hypertension than Ad.CO1-pretreated controls, as assessed by higher right ventricular systolic pressure (36.5 Ϯ 2.4 versus 30.2 Ϯ 1.4, respectively), aggravation of right ventricular hypertrophy (P Ͻ 0.05), and muscularization of distal vessels (P Ͻ 0.01). Lung factor VIII, CD31 immunostaining, as well as eNOS expression were significantly increased after exposure to hypoxia in Ad.CO1-pretreated controls, but decreased in both normoxic and hypoxic animals after treatment with Ad.K3. The results show that inhibition of hypoxia-induced stimulation of lung angiogenic processes aggravates development of hypoxic PH. This suggests that endogenous lung angiogenesis counteracts development of hypoxic PH.

Hypoxia is a well recognized stimulus for pulmonary blood vessel remodeling. One mechanism that may account for this effect is a direct action of hypoxia on the expression of specific genes involved in pulmonary artery smooth muscle cell proliferation, such as those encoding the serotonin transporter and endothelin [START_REF] Eddahibi | Induction of serotonin transporter by hypoxia in pulmonary vascular smooth muscle cells: relationship with the mitogenic action of serotonin[END_REF][START_REF] Kourembanas | Hypoxia and endothelial-smooth muscle cell interactions in the lung[END_REF]. Hypoxia is also a potent stimulus for the expression of angiogenic factors, which Address correspondence to: Serge Adnot, INSERM U492, Faculte ´de Me ´decine, 8 Rue du Ge ´ne ´ral Sarrail, 94010 Creteil, France. E-mail: eddahibi@ im3.inserm.fr Abbreviations: Dulbecco's modified Eagle's medium, DMEM; endothelial cell, EC; fetal calf serum, FCS; fibroblast growth factor, FGF; human microvascular endothelial cells, HMEC; microculture tetrazolium, MTT; pulmonary arterial smooth muscle cells, PA-SMC; platelet-derived growth factor, PDGF; plaque-forming units, pfu; pulmonary hypertension, PH; vascular endothelial growth factor, VEGF. trigger endothelial cells [START_REF] Boussat | Expression and regulation of vascular endothelial growth factor in human pulmonary epithelial cells[END_REF][START_REF] Kourembanas | Mechanisms by which oxygen regulates gene expression and cell-cell interaction in the vasculature[END_REF]. Numerous angiogenic factors and cytokines, including vascular endothelial growth factor (VEGF) and VEGF receptors, platelet-derived growth factor (PDGF), acidic and basic fibroblast growth factor (FGF), transforming growth factor, angiogenin, and prostaglandin E2, have also been shown to be increased in lungs from experimental hypoxic animals [START_REF] Christou | Increased vascular endothelial growth factor production in the lungs of rats with hypoxia-induced pulmonary hypertension[END_REF][START_REF] Pfeifer | Vascular remodeling and growth factor gene expression in the rat lung during hypoxia[END_REF][START_REF] Tuder | Increased gene expression for VEGF and the VEGF receptors KDR/Flk and Flt in lungs exposed to acute or to chronic hypoxia: modulation of gene expression by nitric oxide[END_REF] as well as in tissues from patients with chronic hypoxemic lung disease [START_REF] Eddahibi | Imbalance between platelet vascular endothelial growth factor and platelet-derived growth factor in pulmonary hypertension: effect of prostacyclin therapy[END_REF]. The physiologic or pathologic consequences of hypoxia-induced activation of lung angiogenic processes, however, are not completely understood. Pharmacologic blockade of VEGF receptors aggravates [START_REF] Taraseviciene-Stewart | Inhibition of the VEGF receptor 2 combined with chronic hypoxia causes cell deathdependent pulmonary endothelial cell proliferation and severe pulmonary hypertension[END_REF], whereas lung VEGF overexpression by adenovirus mediated gene transfer attenuates, development of hypoxic pulmonary hypertension [START_REF] Partovian | Adenovirus-mediated lung vascular endothelial growth factor overexpression protects against hypoxic pulmonary hypertension in rats[END_REF]. However, VEGF is only one among various angiogenic molecules that are upregulated during chronic hypoxia [START_REF] Christou | Increased vascular endothelial growth factor production in the lungs of rats with hypoxia-induced pulmonary hypertension[END_REF][START_REF] Tuder | Increased gene expression for VEGF and the VEGF receptors KDR/Flk and Flt in lungs exposed to acute or to chronic hypoxia: modulation of gene expression by nitric oxide[END_REF]. Moreover, VEGF receptors are present not only on endothelial cells but also on lung epithelial cells [START_REF] Brown | VEGF induces airway epithelial cell proliferation in human fetal lung in vitro[END_REF] and monocytes [START_REF] Barleon | Migration of human monocytes in response to vascular endothelial growth factor (VEGF) is mediated via the VEGF receptor flt-1[END_REF][START_REF] Sawano | Flt-1, vascular endothelial growth factor receptor 1, is a novel cell surface marker for the lineage of monocyte-macrophages in humans[END_REF]. Finally, the regulation of angiogenesis is a complex process that depends upon the local balance between proangiogenic and antiangiogenic molecules. In the present study, we questioned whether changing the angiogenic set point by inducing lung overexpression of an endogenous angiogenesis inhibitor would alter development of hypoxic pulmonary hypertension.

Angiostatin, a potent naturally occurring inhibitor of angiogenesis generated by proteolysis of plasminogen [START_REF] O'reilly | Angiostatin: a novel angiogenesis inhibitor that mediates the suppression of metastases by a Lewis lung carcinoma[END_REF], is considered as one of the most effective and specific inhibitors of angiogenesis. It inhibits proliferation and migration of endothelial cells [START_REF] Griscelli | Angiostatin gene transfer: inhibition of tumor growth in vivo by blockage of endothelial cell proliferation associated with a mitosis arrest[END_REF][START_REF] Cao | Kringle domains of human angiostatin: characterization of the anti-proliferative activity on endothelial cells[END_REF] without exerting toxic effects on the quiescent systemic vasculature. Produced by proteolytic cleavage, angiostatin has been shown to be a 38-kD internal fragment of plasminogen that consists of four kringle structures. Kringles 1-3 exert a potent inhibitory effect on endothelial cell proliferation, whereas kringle 4 is relatively ineffective [START_REF] Cao | Kringle domains of human angiostatin: characterization of the anti-proliferative activity on endothelial cells[END_REF].

In the present study, angiostatin delivery was achieved by a defective adenovirus expressing a secretable angiostatin K3 molcule driven by the cytomegalovirus promoter (Ad.K3). We first evaluated the efficiency of gene transfer in the lungs from mice with a single intratracheal instillation of the adenovirus by detecting the protein in bronchoalveolar lavage (BAL) fluid. We also evaluated, in vitro, the consequence of angiostatin expression on the migration and proliferation of microvascular endothelial cells and pulmonary artery smooth muscle cells. In the second part of the study, we evaluated the effect of lung angiostatin expression on pulmonary vascular density and development of pulmonary hypertension in mice pretreated with intratracheal administration of Ad.K3 2 d before the start of a 2-wk exposure to either normoxia or hypoxia.

Materials and Methods

Recombinant Adenovirus Vectors

Ad.K3 is a defective recombinant E1E3-deleted adenovirus directing the expression and secretion of an angiostatin-like molecule (i.e., the N-terminal fragment of human plasminogen up to residue 333) from the cytomegalovirus immediate-early promoter [START_REF] Griscelli | Angiostatin gene transfer: inhibition of tumor growth in vivo by blockage of endothelial cell proliferation associated with a mitosis arrest[END_REF]. Ad.CO1 is a control virus that is identical to Ad.K3, but with no gene in the expression cassette. All adenovirus vectors were propagated in 293 cells and material purified by CsCl gradient centrifugation, dialyzed, and stored at Ϫ80ЊC. The titer of each viral stock was determined by plaque assay in 293 cells.

Effect of Angiostatin Expression on Vascular Cell Proliferation and Migration

Cell culture. Human pulmonary artery smooth muscle cells (PA-SMCs) were cultured from explants [START_REF] Eddahibi | Serotonin transporter overexpression is responsible for pulmonary artery smooth muscle hyperplasia in primary pulmonary hypertension[END_REF]. In brief, pulmonary arteries (diameter: 5-10 mm) obtained from patients undergoing lung resection for lung carcinoma were kept in Dulbecco's modified Eagle's medium (DMEM) (Gibco/Invitrogen, Cergy Pontoise, France) at 4ЊC before their intimal cell layer and residual adventitial tissue were stripped off using forceps. The dissected media of the vessels was then cut into small pieces (3-5 mm), which were transferred into cell-culture flasks. To allow the PA-SMCs to grow out, the vessel tissues were incubated in DMEM supplemented with 10% fetal calf serum (FCS), 1 mM L-glutamine, and antibiotics (100 U/ml penicillin and 0.1 mg/ml streptomycin).Cultured PA-SMCs were used between passages 1 and 3.

Human microvascular endothelial cells (HMEC-1) obtained from E. W. Ades (Emory University Hospital, Atlanta, GA) were cultured in MCDB 131 (Gibco BRL) supplemented with 10% FCS, L-glutamine, antibiotics, 1 mg/ml hydrocortisone, and 10 ng/ ml epidermal growth factor (Sigma, St. Louis, MO) and grown at 37ЊCi n5 %C O 2 , in a humidified incubator.

Cell infection and Western blot analysis. Subconfluent cells were infected with Ad.K3 or Ad.CO1 at 10, 50, 100, 300, 500 plaqueforming units (pfu)/cell. Cell culture supernatants were collected 2, 4 and 6 d after infection.

The samples were run in a 10% sodium dodecyl sulfatepolyacrylamide gel before being transferred onto a nitrocellulose membrane. As a control, 100 ng of human plasminogen was run. After a 1-h incubation in a blocking buffer (0.15 M NaCl; 10 mM Tris-Hcl, pH 8.0; 0.005 Tween-20; and 5% BSA [TTBS], bovine serum albumin 5%), the membranes were incubated for 1 h with anti-human plasminogen, and for 1 h with a horseradish peroxidase-conjugated goat anti-mouse serum. After washing, the membranes were revealed by chemiluminescence using the ECL Plus kit (Amersham, Buckingham, U.K.).

Cell proliferation. The microculture tetrazolium (MTT) assay was used to evaluate the effect of the adenoviral constructs on PA-SMC and HMEC-1 proliferation. PA-SMCs and HMEC-1 were plated at a density of 5.10 3 cells/well in 96-well culture plates with DMEM or MCDB 131 supplemented with 20% FCS, and allowed to adhere. After 24 h, cells were subjected to growth arrest in medium containing 0.2% FCS and infected with Ad.K3 at 10 or 100 pfu/cell. Control cells were not infected, or infected with Ad.CO1 at the same dose. After 72 h, cells were supplemented with FCS (10%) and MTT assay performed 72 h later: MTT (0.2 mg/ml) was added to each well, which was incubated for4ha t 37ЊC. Thereafter, the culture medium was removed and the MTT contained in cells was dissolved by adding 100 l dimethylsulfoxide. The extent of reduction of tetrazolium salt to formazan within cells was then quantified spectrophotometrically at 520 nm and taken as an indicator of cell viability.

Cell migration assay. The cell migration assay was adapted from Planus and coworkers (18): HMEC-1 or PA-SMCs were subjected to growth arrest in medium containing 0.2% FCS and infected with Ad.K3. Control cells were not infected, or infected with Ad.CO1 at the same dose. After 72 h, cells were resuspended at 40.10 6 cells/ ml in culture medium containing 15% FCS and 0.3% agarose, and were maintained at 37ЊC to prevent setting of the agarose. Threemicroliter drops of the cellular suspension were plated in the center of each well of a 24-well tissue culture plate. Wells used for migration assay were precoated with type I collagen (0.5 mg/ml; Collaborative Biomedical Products, Becton Dickinson, France) for HMEC-1 and with poly-DL-ornithine (0.5 g/ml; Sigma, St. Louis, MO) for PA-SMCs. The preparation was placed at 4ЊC for 20 min to allow the agarose to gel. Then, 0.5 ml of medium was added to cover the drops. The preparation was incubated at 37ЊCi n5 %C O 2 for 24 h. Samples were fixed and stained with Diff Quik kit. Images were imported into an image analysis software (Perfect Image, Clara Vision, Orsay, France). This allowed calculation of the cell migration under each condition.

In Vivo Angiostatin Expression

Animals and delivery of adenovirus vectors to the lungs. Male C57BL/6J mice (20 -25 g body weight) were used for all studies. All animal care and procedures were in accordance with institutional guidelines. Ad.K3 or Ad.CO1 as the control, was diluted before use with sterile saline, pH 7.4, in a final volume of 50 l. Mice were anesthetized with intraperitoneal ketamine (7 mg/100 g) and xylazine (1 mg/100 g). Intratracheal instillation of 50 l/mouse of diluted Ad.K3 or Ad.CO1 was performed using a standard procedure, as previously described [START_REF] Partovian | Adenovirus-mediated lung vascular endothelial growth factor overexpression protects against hypoxic pulmonary hypertension in rats[END_REF].

Human angiostatin protein detection in BAL fluid. To evaluate gene transfer efficiency, human angiostatin protein was assessed by Western blot analysis in BAL fluid from normoxic mice 5 d after administration with various doses of Ad.K3 (10 8 to 10 9 pfu) and 5, 10, and 15 d after administration of Ad.K3 or Ad.CO1 at 10 9 pfu.

After intraperitoneal administration of pentobarbital (6 mg/ 100 g), BAL was performed immediately after blood sampling. A total of 2 ml of warm phosphate-buffered saline (PBS) was used for each mouse. Then, the supernatants of BAL samples spun at 2,000 rpm, 4ЊC, for 15 min, were stored at Ϫ20ЊC.

Histologic evaluation of inflammation after gene transfer. To evaluate the inflammatory response after adenovirus administration, histologic examination was also performed in normoxic mice 4 d after administration with Ad.K3 or Ad.CO1 (10 8 and 10 9 pfu).

Immediately after BAL, the lungs were removed and fixed by infusion of neutral buffered formaldehyde into the trachea. After routine processing and paraffin embedding, multiple sections from each lobe were stained with hematoxylin and eosin. The inflammatory response was analyzed using a previously described empiric semiquantitative scale based on inflammatory cell type and location (alveoli, bronchi, blood vessels) and on presence of edema and hemorrhage. Epithelial damage in bronchi, bronchioles, or alveoli was scored 0-4 (absent to severe). Extension of inflammation was also scored 0-4 as follows: 0, none; 1, small patchy areas involved; 2, Ͻ 10%; 3, 10-50%; 4, Ͼ 50% of section area.

Effect of angiostatin expression on development of hypoxic pulmonary hypertension.

To examine the effect of angiostatin expression on the pulmonary circulation of normoxic mice and development of hypoxic pulmonary hypertension, Ad.K3 or Ad.CO1 (10 9 pfu) were administered intratracheally 2 d before the beginning of exposure to normoxia or hypoxia. Hemodynamic measurements and assessment of right ventricular hypertrophy and pulmonary vascular remodeling were performed.

After 15 d of continuous exposure to normoxia or hypoxia (17 d after gene transfer), mice were anesthetized and ventilated with room air at a tidal volume of 0.2 ml and a rate of 90 breaths/min. After incision of the abdomen and diaphragm, a 26-gauge needle connected to a pressure transducer (Gould P23 ID, Gould Electornics, Ballainvilliers, France) was inserted into the right ventricle and right ventricular systolic pressure (RVSP) was immediately recorded. Next, blood was sampled for hematocrit determination. Finally, after an intraperitoneal injection of sodium pentobarbital (40 mg/kg) and exsanguination, the thorax was opened and the lungs and heart were removed. The right ventricle (RV) was dissected from the left ventricle ϩ septum (LVϩS), and these dissected samples weighed.

The lungs were fixed by intratracheal infusion of 4% aqueous buffered formalin at a pressure of 23 cm H 2 O. The entire specimen was placed in a bath of the same fixative for 1 wk. A midsagittal slice of the right lung including the apical, azygous, and diaphragmatic lobes was processed for paraffin embedding. Sections (5 m thick) were cut for light microscopy and stained with hematoxylinphloxin-saffron and orcein-picroindigo-carmine.

In each mouse, a total of 40 intra-acinar vessels accompanying either alveolar ducts or alveoli were analyzed by an observer blinded to the treatment. Each vessel was categorized as nonmuscular (no evidence of any vessel wall muscularization), partially muscular (SMCs identifiable in less than three-fourths of the vessel circumference), or fully muscular (SMCs in more than threefourths of the vessel circumference). Muscularization was defined as the presence of typical SMCs stained red with phloxin, exhibiting an elongated shape and square-ended nucleus, and bound by two orcein-stained elastic laminae. The percentage of pulmonary vessels in each muscularization category was determined by dividing the number of vessels in that category by the total number counted in the same experimental group.

Effect of angiostatin expression on pulmonary vascular density. To assess the consequence of angiostatin expression on pulmonary vascular density in various oxygenation conditions, mice were pretreated with Ad.K3 or Ad.CO1. After 2 wk of continuous exposure to normoxia or hypoxia, mice were anesthetized by intraperitoneal injection of sodium pentobarbital (40 mg/kg). After exsanguination, the lungs were removed and fixed in the distended state by infusion of alcohol formalin. A midsaggital slice of the right lung was processed for paraffin embedding, and 5-m sections were prepared. After toluene treatment and rehydratation, the sections were pretreated for 10 min in a microwave oven in 10 mM citrate buffer (pH 6.0) and endogenous peroxidase activity quenched by incubation with 3% H 2 O 2 for 5 min. Then, sections were washed in PBS and incubated for 60 min with a rabbit polyclonal serum raised against human Von Willebrand factor or CD31 (dilution 1:200, 1:100, respectively; Dako, Trappes, France). After three washes, the sections were incubated with biotinylated goat antirabbit IgG antibodies for 30 min. Then, the peroxidase staining of the slides incubated in streptavidin biotin horseradish peroxidase solution was performed using 3,3Ј-diaminobenzidine tetrahydrochloride dihydrate (DAB; Sigma) and hydrogen peroxide. Finally, the sections were stained with hematoxylin. Vascular density was assessed in 10 selected fields and stored as digital fields image. Images were imported into an image-analysis Perfect Image. This allowed calculation of the total tissue area and the area of positive immunostaining. The lung immunoreactivity for Factor VIII and for CD31 expressed per area of lung parenchyma.

Effect of Angiostatin on eNOS Lung Expression

Immediately after removal, the lungs were quickly frozen in liquid nitrogen. After thawing at 0ЊC, the tissues were sonicated in 0.1 mM PBS containing antiproteases (1 M leupeptin and 1 M pepstatin A) and the detergent CHAPS (20 mmol/liter). The homogenate was centrifuged at 3,000 ϫ g for 10 min at 5ЊC. The supernatants were subjected to sodium dodecyl sulfatepolyacrylamide gel electrophoresis. Proteins in the gel were transferred to a nitrocellulose membrane by electroblotting in a transblot BioRad transfer apparatus, for 12 h at 4ЊC. Before the transfer, the gels, Whatman filter paper, and nitrocellulose membrane were soaked in electroblotting buffer (25 mM Tris-HCl; 193 mM glycine; 20% methanol, pH 8.0) for 15 min. After transfer, the membrane was blocked using 1ϫ TTBS (0.15 M NaCl; 10 mM Tris-HCl, pH 8.0; 0.05% Tween-20; and 5%bovine serum albumin) f o r1ha troom temperature. The eNOS protein was detected by incubating the membrane overnight at 4ЊC with mouse polyclonal anti-eNOS (Transduction Laboratory) diluted 1:1,000. The membrane was washed three times in 1ϫ TBST. Specific protein was detected using a horseradish peroxidase-conjugated secondary antibody and ECL reagents (Amersham). The eNOS immunoreactivity was quantified using a semi-automated image analysis device (NIH image 1.52) that quantifies both the area and the intensity of immunoreactive bands using a ScanJet II scanner with DeskScan II (Hewlett Packard, France) software. Results are reported in arbitrary units.

Apoptosis assay. Apoptotic cells within the section from lung of mice exposed to normoxia or hypoxia after pretreatment with Ad.K3 or Ad.CO1 were detected by a kit using a terminal deoxynucleotidyltransferase-mediated dUTP-biotin nick end labeling method (TUNEL; Boehringer Mannheim, Meylam, France). The apoptotic index was assessed on hematoxylin and eosin-stained histologic sections by counting nuclear and/or cytoplasmic features characterizing the apoptotic process. After image capture, apoptotic features were pointed on the screen and scored using an image analysis system (Perfect Image; Clara Vision, Orsay, France). The apoptotic index was defined as the ratio of this count over the total number of lung cells. Counts were determined in successive fields when fewer than 100 cells were present in a single field.

Statistical Analysis

All results are expressed as means Ϯ SEM. A two-way ANOVA was performed to compare the effect of Ad.K3 versus Ad.CO1 pretreatment in normoxic and hypoxic mice, followed (when interaction was significant) by nonparametric Mann-Whitney test to compare Ad.K3 and Ad.CO1 pretreatment in each condition of oxygenation. To compare the degree of pulmonary vessel muscularization in two groups of mice, vessels were ordinally classified as nonmuscular, partially muscular, and muscular. Comparison of muscularization between two groups in each condition of oxygenation was performed using a nonparametric Mann-Whitney test.

Results

Evaluation of In Vitro Gene Transfer

As shown in Figure 1, transduction of HMEC-1 by Ad.K3 induced an accumulation of angiostatin protein in the culture media in a dose-dependent manner, whereas no signal was detected after infection with Ad.CO1. Angiostatin protein was detectable on Day 2, and was expressed over more than 6 d (Figure 1).

Effect of Angiostatin Expression on HMEC-1 and PA-SMC Migration

Four days after transfection with Ad.K3 (10-300 pfu/cell), there was a dose-dependent reduction of HMEC-1 migration, which was completely abolished at 300 pfu/cell. No alteration of HMEC-1 migration was observed after treatment with Ad.CO1 (Figure 2A).

However, incubation of PA-SMCs in the presence of Ad.K3 did not alter their migration. As shown in Figure 2B, cell migration out of the agarose drop explant was similar in PA-SMCs treated with Ad.K3, Ad.CO1 or untreated cells.

Effect of Angiostatin Expression on HMEC-1 and PA-SMC Proliferation

HMEC-1 infected with Ad.K3 (50-300 pfu/cell) showed a slight reduction in the growth response to 10% FCS, which became significant only at the highest dose (Figure 3A). This effect was not observed in the presence of Ad.CO1, the control construction. However, in PA-SMCs infected with Ad.K3, the proliferation index was not altered and was maintained at levels similar to those measured in the presence of Ad.CO1 (Figure 3B).

Evaluation of In Vivo Gene Transfer in Normoxic Mice

Dose-dependent protein expression and inflammatory response after adenovirus administration. After intratracheal administration of Ad.K3 (10 9 pfu) in normoxic mice, detectable amounts of angiostatin protein were found at Day 5 (Figure 4), but not at Days 10 and 15 after treatment After treatment with Ad.CO1 (10 9 pfu), no human angiostatin was detected in BAL fluid. With 10 9 pfu of either Ad.K3 or Ad.CO1, inflammation was characterized by patchy infiltrates of mononuclear cells, most of which were macrophages. Cell damage, edema, or hemorrhage was infrequent (Table 1). On the basis of this experiment, 10 9 pfu was the dose selected for further experiments, because it caused minimal inflammatory response but significant human angiostatin protein production in lungs.

Effect of Angiostatin Expression on Chronic Hypoxic Pulmonary Hypertension

Hemodynamic measurements and assessment of right ventricular hypertrophy. Under normoxic conditions, body weight, RVSP, heart rate, and RV weight over either body weight or LVϩS weight were similar in Ad.CO1-and Ad.K3-treated animals (Figure 5), and were similar to values previously reported in normoxic mice.

As compared with mice maintained under normoxic conditions, animals exposed to 10% O 2 during 15 d exhibited a significant increase in RVSP and development of right ventricular hypertrophy. However, under chronic hypoxic conditions, RVSP and right ventricular hypertrophy as assessed by RV/LVϩS weight were higher in mice pretreated with Ad.K3 than in those given Ad.CO1 (P Ͻ 0.05 and P Ͻ 0.01, respectively), whereas left ventricular weight, hematocrit, and heart rate did not differ between the two hypoxic groups.

Structural remodeling of distal pulmonary vessels. In mice exposed to normoxia for 15 d after adenovirus administration, muscularization of distal vessels did not differ between Ad.K3-and Ad.CO1-treated animals, and were similar to values previously reported in normoxic mice (data not shown). After 15 d of exposure to hypoxia, muscularization of distal vessels, which was markedly increased as compared with normoxic animals, was also more marked in Ad.K3-than in Ad.CO1-pretreated mice exposed to similar hypoxic conditions (Figure 6; P Ͻ 0.01).

Effect of hypoxia and angiostatin expression on vascular density.

Vascular density was assessed by quantifying the surface area per field that scored immunoreactive for Von Willebrand factor and CD31. As shown in Figure 7 and in Figure 8A, there was an increase of vascular density in the lungs from mice chronically exposed to hypoxia as compared with similarly pretreated normoxic animals (P Ͻ 0.001). Pretreatment with Ad.K3 significantly reduced lung vascular density in both normoxic and chronically hypoxic mice as compared with control Ad.CO1 mice (P Ͻ 0.01), with no significant interaction between oxygenation condition and adenovirus pretreatment (two-way ANOVA).

Effect of hypoxia and angiostatin on eNOS expression. To evaluate the consequences of exposure to hypoxia and treatment with angiostatin on eNOS expression, the levels of eNOS protein were estimated by immunoblotting assay in lungs from mice treated with AdCO1 or with Ad.K3 and maintained under normoxic or hypoxic conditions. As shown in Figure 8B, eNOS protein levels was increased in the lungs from mice chronically exposed to hypoxia as compared with similarly pretreated normoxic animals (P Ͻ 0.01). Pretreatment with Ad.K3 significantly reduced lung eNOS protein levels in both normoxic and chronically hypoxic mice as compared with control Ad.CO1 mice (P Ͻ 0.05), with no significant interaction between oxygenation condition and adenovirus pretreatment (two-way ANOVA).

Effect of angiostatin expression on lung cell apoptosis. Lung sections from mice exposed to normoxia or hypoxia during 2 wk and pretreated with Ad.K3 or with Ad.CO1 (10 9 pfu) exhibited a few and identical number of apoptotic cells (data not shown). The apoptotic index did not differ between Ad.K3-and Ad.CO1-treated animals, the respective values being 3.1 Ϯ 0.7/1000 versus 2.4 Ϯ 0.5/1000 (NS) during normoxia, and 2.4 Ϯ 0.8/1000 versus 1.9 Ϯ 0.6/1000 (NS) during hypoxia

Discussion

The present results show that adenoviral-mediated lung overexpression of the angiogenesis inhibitor, angiostatin, aggravates development of hypoxic pulmonary hypertension in mice. Evidence for an activation of endogenous angiogenic processes in the lung during exposure to hypoxia was highly suggested by the observation that expression of endothelial markers like factor VIII, CD31, and eNOS was increased in chronically hypoxic mice. This change was suppressed by pretreatment with Ad-angiostatin, which also inhibited in vitro endothelial cell growth and migration. Because treatment with Ad-angiostatin did not affect PA-SMC function in vitro, but potentiated pulmonary hypertension and aggravated structural vascular remodeling in chronically hypoxic mice, the results indicate that counteracting lung angiogenic processes aggravates development of hypoxic pulmonary hypertension.

Hypoxic pulmonary hypertension is the most common form of pulmonary hypertension. Of variable severity, it affects patients of all ages and occurs in subjects who live at high altitude as well as in patients with chronic hypoxemic lung disease. Increased expression of the angiogenic factor VEGF and its receptors has been found in the lung from chronically hypoxic rats [START_REF] Christou | Increased vascular endothelial growth factor production in the lungs of rats with hypoxia-induced pulmonary hypertension[END_REF][START_REF] Tuder | Increased gene expression for VEGF and the VEGF receptors KDR/Flk and Flt in lungs exposed to acute or to chronic hypoxia: modulation of gene expression by nitric oxide[END_REF]. In addition to VEGFA, -C, n indicates number of animals. The extent of inflammation was scored as 1 (small patchy area), 2 (Ͻ 10%), 3 (10-50%), or 4 (Ͼ 50% of section area). Edema, hemorrhage, and epithelial damage were scored from 0-4 (none to severe). and -D, other growth factors or cytokines including PDGF, acidic and basic FGF, transforming growth factor, angiogenin, and prostaglandin E2 have also been shown to increase during exposure to hypoxia [START_REF] Pfeifer | Vascular remodeling and growth factor gene expression in the rat lung during hypoxia[END_REF], suggesting that activation of several lung angiogenic processes contribute to the lung adaptation to chronic hypoxia. In systemic vessels, hypoxia or ischemia induced by occlusion of large systemic arteries results in development of newly formed collateral arteries [START_REF] Deindl | Role of ischemia and of hypoxia-inducible genes in arteriogenesis after femoral artery occlusion in the rabbit[END_REF]. In the pulmonary circulation, no such an increase in new vessel formation has been angiographically documented. However, labeling studies in rat have suggested a burst of endothelial cell multiplication in intraacinar arteries at the end of the first week of exposure to hypoxia [START_REF] Meyrick | Endothelial and subintimal changes in rat hilar pulmonary artery during recovery from hypoxia: a quantitative ultrastructural study[END_REF]. In the present study, lung density of factor VIII and CD31 immunostaining was increased in mice exposed to chronic hypoxia. These results suggest that activation of lung angiogenic processes in response to hypoxia is associated with an increased number of endothelial cells in distal pulmonary vessels.

Lung histopathology on day 5 after infection in normoxic mice

The physiologic or pathologic consequences of hypoxiainduced activation of lung angiogenic processes, however, are not completely understood. Until now, efforts have been devoted to specifically understand the role of VEGF. In previous studies, we have shown that adenoviral-mediated overexpression of VEGF in rat lungs attenuates develop- ment of hypoxic pulmonary hypertension, and that this effect is concomitant to the improvement of endothelial function [START_REF] Partovian | Adenovirus-mediated lung vascular endothelial growth factor overexpression protects against hypoxic pulmonary hypertension in rats[END_REF]. In recent studies, inhibition of VEGF receptors through tyrosine kinase inhibitors was shown to cause severe pulmonary hypertension with selection and proliferation of apoptosis-resistant endothelial cells [START_REF] Taraseviciene-Stewart | Inhibition of the VEGF receptor 2 combined with chronic hypoxia causes cell deathdependent pulmonary endothelial cell proliferation and severe pulmonary hypertension[END_REF]. Interestingly, inhibition of VEGF receptor tyrosine kinase-mediated activity was also shown to decrease alveolization in developing lung and to favor emphysema in the adults [START_REF] Kasahara | Inhibition of VEGF receptors causes lung cell apoptosis and emphysema[END_REF]. Although these results point out important actions of VEGF in the lung, they did not specifically address the role of lung angiogenic processes during development of pulmonary hypertension. As mentioned earlier, angiogenic factors other than VEGF are stimulated during exposure to hypoxia. Moreover, evidence has now been provided that the VEGF action is not selective to endothelial cells and that functional VEGF receptors are present in many lung cell types including airway and alveolar epithelial cells, monocytes, and smooth muscle cells. Therefore, the role of endogenous angiogenic processes during exposure to hypoxia may not be fully investigated by the use of a specific inhibitor of only one among numerous angiogenic factors.

Physiologic angiogenesis is a highly regulated process under the control of both angiogenic and antiangiogenic factors. A number of endogenous angiogenesis inhibitors have been identified that antagonize the effects of VEGF, FGFs, and other angiogenic factors. Among those is angiostatin, a 38-kD fragment of plasminogen [START_REF] O'reilly | Angiostatin: a novel angiogenesis inhibitor that mediates the suppression of metastases by a Lewis lung carcinoma[END_REF], which has been shown in vitro to inhibit endothelial cell proliferation and in vivo to exhibit potent antitumor and antiangiogenic properties [START_REF] Griscelli | Angiostatin gene transfer: inhibition of tumor growth in vivo by blockage of endothelial cell proliferation associated with a mitosis arrest[END_REF][START_REF] O'reilly | Angiostatin induces and sustains dormancy of human primary tumors in mice[END_REF][START_REF] Cao | Kringle 5 of plasminogen is a novel inhibitor of endothelial cell growth[END_REF]. Although its mechanism of action is not completely understood, numerous studies indicate that angiostatin is a highly specific angiogenesis inhibitor. In the present study, angiostatin delivery was achieved by a defective adenovirus expressing a secretable angiostatin K3 molcule from the cytomegalovirus promoter (Ad.K3). We found that angiostatin gene transfer in cultured endothelial cells inhibited cell migration and partially reduced cell proliferation. These results are consistent with those reported by studies using angiostatin protein. No cytotoxic or apoptotic effect was observed in vitro. More importantly, the effects of angiostatin appeared specific for endothelial cells, because human PA-SMCs treated with Ad.K3 remained functionally unaltered.

In vivo studies revealed that adenoviral transfer allowed efficient local overexpression of angiostatin in mice lungs. pfu) and exposed to normoxia or chronic hypoxia during 2 wk. n ϭ 5 animals were studied in each group. Both lung CD31 and eNOS expression were significantly increased after hypoxia as compared with normoxia (P Ͻ 0. 001 and P Ͻ 0.01, respectively) but decreased after Ad.K3 pretreatment as compared with Ad.CO1 (P Ͻ 0.01 and P Ͻ 0.05, respectively) with no interaction between oxygenation conditions and adenoviral pretreatment (two-way ANOVA).

After intratracheal administration of Ad.K3, the angiostatin protein was detected in BAL fluid for ف 6 d, with a concentration peak on the fourth day. No angiostatin was detectable in the serum with this low dose of adenovirus, suggesting that angiostatin diffusion or expression in other organs was minimal.

As shown by our histologic study, administration of Ad.K3 or Ad.CO1 caused only mild inflammation in lungs from both normoxic and hypoxic mice. Only small patchy areas of macrophage infiltrates were observed, with no epithelial cell damage, edema, or hemorrhage.

The main finding from our study is that angiostatin overexpression in lung tissue from mice exposed to chronic hypoxia aggravated the development of pulmonary hypertension and right ventricular hypertrophy. The development of hypoxic pulmonary hypertension is associated with smooth muscle cell hypertrophy and hyperplasia in normally muscularized arteries, and with the appearance of new smooth muscle cells in nonmuscularized segments of the intra-acinar circulation [START_REF] Meyrick | Pulmonary hypertension: anatomic and physiologic correlates[END_REF]. Angiostatin increased muscularization of the pulmonary resistance vessels, as shown by an increase in the percentage of muscularized arteries in hypoxic mice. These results are consistent with those of Taraseviciene-Stewart and colleagues (9), who recently reported that inhibition of the VEGF receptor 2 causes an increase in pulmonary artery medial thickening and led to severe pulmonary hypertension in chronically hypoxic rats. In line with these findings, we previously have shown that lung VEGF overexpression protects against pulmonary vascular remodeling in chronically hypoxic rats. Lung gene transfer of VEGF was associated with a lesser degree of medial thickening and muscularization in resistance vessels. Taken together, these observations strongly indicate that endogenous angiogenic processes counteract development of hypoxic pulmonary hypertension and negatively influence pulmonary vascular remodeling and smooth muscle cell growth.

Angiostatin might have affected the pulmonary vascular bed both functionally and structurally. Functional conse-quences are those expected from an aggravation of endothelial dysfunction, which favors pulmonary vasoconstriction and/or enhance platelet-endothelial cell interaction, thereby increasing the release of platelet-derived constricting and growth factors such as serotonin or PDGF. Structural consequences are those expected from a reduced pulmonary vascular bed. Our observations that endothelial cell Factor WIII and CD31 immunostaining, as well as eNOS immunoreactivity, were decreased in lungs from both normoxic and hypoxic mice after lung angiostatin gene delivery is consistent with a decreased number of peripheral vessels. These data also suggest that even in normoxic conditions, pulmonary endothelial cells are sensitive to a change in the balance between angiogenic and antiangiogenic factors. The mechanism by which angiostatin leads to a reduction in endothelial cell labeling remains unclear. Angiostatin has been shown to induce endothelial cell apoptosis in vitro [START_REF] Claesson-Welsh | Angiostatin induces endothelial cell apoptosis and activation of focal adhesion kinase independently of the integrin-binding motif RGD[END_REF][START_REF] Lucas | Multiple forms of angiostatin induces apoptosis in endothelial cells[END_REF]. Although the apoptotic index did not differ between Ad.K3-and AdCO1-treated animals after exposure to hypoxia for 2 wk, we cannot exclude that angiostatin caused a reduction in peripheral vessels by inducing apoptosis of pulmonary vascular endothelial cells, either during normoxia or during hypoxia. The fact that angiostatin did not affect pulmonary hemodynamics and did not cause structural remodeling in normoxic mice may be related to the large number of endothelial cells in the lung, which contains approximately a third of the body endothelial cells. However, a decreased number of functional pulmonary vessels might have contributed to the increase in resistance and therefore to the increase in pulmonary artery pressure observed after exposure to hypoxia. According to the classical understanding of chronic hypoxic pulmonary hypertension, which is based on the well-established concept that vascular remodeling is a response to sustained pulmonary vasoconstriction and increased pulmonary artery pressure, angiostatin delivery might have increased physical forces exerted on the vascular wall, thereby triggering hypertrophy and proliferation of the vascular smooth muscle cells.

These results differ to some extent from those obtained by Taraseviciene-Stewart and coworkers [START_REF] Taraseviciene-Stewart | Inhibition of the VEGF receptor 2 combined with chronic hypoxia causes cell deathdependent pulmonary endothelial cell proliferation and severe pulmonary hypertension[END_REF]. In this study, treatment of rats with SU5416, a selective VEGF receptor tyrosine kinase inhibitor caused mild pulmonary hypertension and pulmonary vascular remodeling in normoxic rats and severe, irreversible pulmonary hypertension associated with some endothelial cell proliferation in chronically hypoxic rats. It is not clear why pulmonary endothelial cells proliferate in response to SU5416. Because, in the study by Taraseviciene-Stewart and colleagues, endothelial cell death occurred before or concomitantly to endothelial cell proliferation, the authors proposed that endothelial cell death, together with chronic hypoxia, resulted in the selection of an apoptosisresistant, proliferating endothelial cell phenotype. No such an effect of angiostatin was observed in our study where immunostaining to factor VIII or CD31-related antigen was markedly decreased, with no evidence of a significant increase in apoptosis of lung cells. Findings obtained in the present study might therefore be interpreted as reflecting the consequence of angiogenesis inhibition. The use of VEGFR2 inhibitors likely caused additional effects, potentially related to suppression of VEGF-dependent survival of endothelial cells or to other associated effects.

In conclusion, exposure to chronic hypoxia is associated with the activation of endogenous lung angiogenic processes, which attenuate the severity of pulmonary hypertension. This counteracting mechanism may not be found in other models of pulmonary hypertension, and may explain why hypoxic pulmonary hypertension is reversible and usually less severe than other forms of the disease. Moreover, they provide further support to the concept that stimulation of angiogenesis in the lung may be viewed as a therapeutic approach of pulmonary hypertension.

Figure 1 .

 1 Figure 1. (A ) Human angiostatin protein accumulation in supernatant of microvascular cells (HMEC-1) measured 4 d after cell transduction with Ad.K3 (10-500 pfu/cell) or Ad-CO1 (500 pfu/ cell). (B ) Time-course of human angiostatin protein accumulation in supernatant of HMEC-1 transduced with Ad.K3 (50 pfu/cell). Angiostatin protein was detected using Western blot with the specific antibody. Measurements were performed in five separate experiments.

Figure 2 .

 2 Figure 2. Effects of Ad-K3 on HMEC-1 (A )oronPA-SMC (B ) migration. The cells were starved of FCS for 72 h and transduced with Ad.CO1 (open bars) or Ad.K3 (filled bars) at increasing doses (10-300 pfu/cell). They were trypsinized and incorporated in agarose 0.3%. Cellular migration was measured 24 h after stimulation by 10% FCS. Values are means Ϯ SEM of four independent experiments.

Figure 3 .

 3 Figure 3. Effects of Ad.K3 on HMEC-1 (A ) or PA-SMC (B ) proliferation. The cells were starved of FCS for 72 h and transduced with Ad.CO1 or Ad.K3 at increasing doses. Cellular proliferation was measured by tetrazolium assay 72 h after stimulation by 10% FCS. Values are means Ϯ SEM of four independent experiments. Open bars, FCS 0.2%; lightly shaded bars, FCS 10%; darkly shaded bars, Ad-CO1; black bars, Ad-K3.

Figure 4 .

 4 Figure 4. Human angiostatin protein in BAL fluid assessed by Western blot 5 d after intratracheal administration of normoxic mice with Ad.K3 or Ad.CO1 (10 8 -10 9 pfu). A specific band (38 kD) was observed only in BAL from mice treated with Ad.K3 (10 9 pfu). Measurements were performed in four separate experiments.

5 )

 5 Ad.CO1 10 8 pfu (n ϭ 5 )Ad.K3 10 8 pfu (n ϭ 5 ) Ad.CO1 10 9 pfu (n ϭ 5 ) Ad.K3 10 9 pfu (n ϭ Definition of abbreviations: BAL, bronchoalveolar lavage; pfu, plaque-forming units.

Figure 5 .

 5 Figure 5. Right ventricular systolic pressure (RVSP) and ratio of right ventricle to left ventricle ϩ septum weight (RV/LVϩS) in mice pretreated with either Ad.K3 (black bars) or Ad.CO1 (shaded bars) and exposed to either normoxia or chronic hypoxia (2 wk). Pretreatment with Ad.K3 significantly increased RVSP and RV/ LV ϩ S in hypoxic rats but had no effect in normoxic mice. *P Ͻ 0.05 and **P Ͻ 0.01 for comparison with values in mice pretreated with Ad.CO1 and similarly exposed to hypoxia. Values are means Ϯ SEM for n ϭ 10 animals in each group.

Figure 6 .

 6 Figure 6. Percentage of nonmuscularized (NM), partially muscularized (PM), or fully muscularized (M) intra-acinar vessels in lungs from mice exposed to 2-wk hypoxia and pretreated with either Ad.K3 (black bars) or Ad.CO1 (shaded bars). Muscularization was significantly higher after Ad.K3 than Ad.CO1 pretreatment (P Ͻ 0.01, nonparametric Mann-Whitney test on ordinally classified vessels). Values are means Ϯ SEM for n ϭ 10 animals in each group.

Figure 7 .

 7 Figure 7. (A) Von Willebrand factor immunoreactivity in pulmonary arterial endothelial cells (a). No immunoreactivity is detected in section incubated with secondary antibody but no primary antibody (b). (B ) Quantification of vascular density assessed by the ratio of Von Willebrand factor immunostaining density/total tissue area in lung sections from mice pretreated with Ad.CO1 (shaded bars) or Ad.K3 (black bars) (10 9 pfu) and exposed to normoxia or chronic hypoxia during 2 wk. Hypoxia significantly increased and pretreatment with Ad.K3 decreased vascular density with no interaction (P Ͻ 0.01 and P Ͻ 0.05, respectively, two-way ANOVA). Tissue section of n ϭ 9 animals from each group were studied.

Figure 8 .

 8 Figure 8. (A ) CD31 estimated by immunostaining density expressed by lung area of lung parenchyma. Tissue section of n ϭ 9 animals from each group were studied. (B ) eNOS protein levels assessed by Western blot in lungs from mice pretreated with Ad.CO1 (shaded bars) or Ad.K3 (black bars) (109 pfu) and exposed to normoxia or chronic hypoxia during 2 wk. n ϭ 5 animals were studied in each group. Both lung CD31 and eNOS expression were significantly increased after hypoxia as compared with normoxia (P Ͻ 0. 001 and P Ͻ 0.01, respectively) but decreased after Ad.K3 pretreatment as compared with Ad.CO1 (P Ͻ 0.01 and P Ͻ 0.05, respectively) with no interaction between oxygenation conditions and adenoviral pretreatment (two-way ANOVA).

TABLE 1

 1

  9