Unibus: A Contrarian Approach to Grid Computing

Size: px
Start display at page:

Download "Unibus: A Contrarian Approach to Grid Computing"

Transcription

1 Unibus: A Contrarian Approach to Grid Computing Dawid Kurzyniec, Magdalena Sławińska, Jarosław Sławiński, Vaidy Sunderam Dept. of Math and Computer Science, Emory University 400 Dowman Drive Atlanta, GA 30322, USA {dawidk,magg,jaross,vss}@mathcs.emory.edu Keywords: resource sharing, virtualization, aggregation, grids, MPI Abstract Despite maturing in many ways, heterogeneous distributed computing platforms continue to require substantial effort in terms of software installation and management for efficient use, often necessitating manual intervention by resource providers and end-users. In this paper we propose a novel model of resource sharing that is a viable alternative to that commonly adopted in the grid community. Our model, termed Unibus, shifts the resource virtualization and aggregation responsibilities to the software at the client side, taking these burdens away from resource providers. Drawing from parallels with operating systems, we argue that distributed resources may be unified and aggregated at the user s end, in a manner similar to ordinary peripheral devices. Running on the user s access device, the overlay system software can virtualize remote resources via dynamically deployed software mediators analogous to device drivers, reconfiguring the resources if necessary via firmware modules. To illustrate the feasibility of the Unibus model, we have prototyped a development toolkit automating the Research supported in part by U.S. DoE grant DE-FG02-02ER25537 and NSF grant ACI An earlier version of the material in Section 5 of this paper was submitted to PDP

2 installation, build, run, and post-processing stages of MPI applications. Through the provided console, this toolkit can deploy and configure an MPI execution environment across a set of heterogeneous, isolated distributed resources, turning them into a coherent virtual machine with a single interface point. We conducted a series of experiments with the NAS Parallel Benchmarks. Results indicate that the toolkit preserves the application performance of bare MPI, while substantially reducing maintenance and configuration efforts. Overall, the results suggest that the envisioned client side overlay model for resource sharing may potentially be able to address some of long-standing obstacles in building heterogeneous HPC systems. 1 Introduction Computational resource sharing continues to mature as a mainstream paradigm, and its promise of delivering unprecedented amounts of computing power to the most demanding scientific applications is rapidly becoming a reality [1, 2]. Large scale collaborations are being formed to exploit the potential of resources shared across administrative and geographical boundaries and new classes of application domains are being deployed [3]. However, the adoption of grid technologies defined as frameworks for resource sharing across administrative domains has been slower than expected. Complexities due to heterogeneity, policy issues, and software installation and management prerequisites are widely postulated causes. While grids have consistently attempted to emphasize ease of use for end-users, they have done so at substantial cost to resource providers and administrators, who are required to install and maintain complex software toolkits and coordinate with other providers to supply aggregated services such as single sign-on or centralized job scheduling. These logistical burdens introduce a high barrier-to-entry and elevated maintenance costs [4], detracting from the eventual goal of wall-socket computing from which the term grid is derived. As a result, cost-effectiveness of resource sharing is dependent upon, and constrained by, long-term agreements between large institutions. This requirement discourages spontaneous collaborations between smaller groups that frequently pool and share resources, or individual scientists who often have access to departmental or collaborator computers [5]. Administrators of department clusters, for example, may be willing to offer users a login account but may be much 2

3 more hesitant to install grid software, run unfamiliar daemons, ensure library version matching, and perform the myriad other tasks that are often needed. Moreover, the coordination overhead is detrimental to scalability, hampering the transition from domain-specific grids into the postulated, self-organizing Grid. Clients (...) (...) (...) Aggregation (...) Virtualization Resources Common protocols Network Access points Providers Grid Model H2O Model Unibus Model Figure 1: Comparison between founding models of grids (left), H2O (middle), and Unibus (right). In contrast to the grid model, Unibus delegates resource virtualization and aggregation to the client side To address the above issues, we propose a paradigm shift in the sharing model, as depicted in Figure 1. Traditional grids, shown at the left, force providers to collectively virtualize resources and to coordinate in order to provide aggregated capabilities. H2O, the authors earlier project, shown in the middle, pushes the aggregation and multi-site authentication concerns to the user side, thus promoting provider autonomy; however, providers are still partially responsible for resource virtualization. Finally, the proposed Unibus model, shown at the right, pushes the resource virtualization and aggregation responsibilities to the client side, granting providers complete sovereignty and allowing them to expose resources as they see fit. Virtualization is fully delegated to the client side. This transition cannot be done at the expense of end-users, however they should continue to be able to use the shared resources as a convenient virtual aggregate. Consequently, management burdens taken away from providers must be delegated to the client-side software. Indeed, we 3

4 postulate that from the user s perspective, a shared remote resource can and should be treated analogously to a peripheral device connected to the user s computer. Peripheral functionality is delivered by: (1) firmware that resides on the device (and can be potentially uploaded or upgraded by the OS); (2) a device driver that resides in the OS; and (3) OS abstractions in the form of system libraries that virtualize this and various other peripherals. Similarly, metasystem configuration software could be automatically uploaded from the client side on to multiple computing resources, with interfaces in the form of service drivers at the point of access, aggregated by client overlay software that virtualizes a collection of distributed resources. In this paper, we present the resulting Unibus model and architecture, followed by a prototypical application to MPI-based metacomputing. After discussing the related work, we move on to defining the model in detail. We analyze relationships between resource providers and clients, describing access interfaces as well as approaches to aggregation and virtualization. We introduce the concept of the client-side overlay, discussing its applicability to shared-resource metacomputing, and contrasting it with the traditional model of virtual organization that is commonly used in the grid community. Subsequently, we focus our attention specifically on the overlay, describing its architectural decomposition. We show how the layered, service-based composition approach leads to dynamic adaptation and scalability. We describe how components from different architectural layers cooperate to provide applications and tools with consistent services exposed through standard APIs and language bindings. Next, we discuss the Zero-Force MPI toolkit, which is a concrete application of the Unibus methodology aimed at transparent client-side aggregation of isolated shared machines into a parallel computational resource. We show how through its automated deployment and remote configuration capabilities, the toolkit creates a client-side metacomputer abstraction that shields end-users from complexities of physical resource distribution and heterogeneity during build, test, and run time phases in the MPI application lifecycle. We describe our experiments with the NAS Parallel Benchmarks, evaluating the viability of the proposed toolkit from the usability and performance point of view in the context of scientific computing. Finally, we conclude by discussing future research directions and opportunities for generalization of the current model and implementation e.g. through self-organizing scheduling or support for wider variety of resource 4

5 access methodologies and semantics. 2 Related Work The original motivation behind grid systems was to facilitate access to shared computational resources by application scientists. In several fields and disciplines, this vision has been successfully realized through Grid Portals [6, 7], giving field researches instant access to vast amount of data (e.g. BIRN [2], NIEHS Environmental Health Science Data Resource Portal [8], GEON [9]) and/or computational power (e.g. Cactus [10], P-GRADE NGS Portal [11], NGS [12]). In enabling this, however, new responsibilities related to setup and management of grid toolkits, establishing coordinated virtual organizations (VO), dealing with inter-vo security and access, and adapting to unpredictable resource variations, have been imposed on grid administrators and resource providers. Well-known grid systems [13, 14, 15], focusing on institutional end-users, large scale resources, and long-lasting sharing agreements, have taken the one size fits all approach, requiring substantial administrative and coordination efforts. However, many potential users of shared resources do not fit this mold for instance, they might want to collaborate on a more ad-hoc, peer-to-peer basis. Such uncoordinated sharing scenarios motivate more lightweight, dynamic, and adaptive middleware stacks. Our earlier project, H2O [16, 17], aims to address these requirements by decoupling resource providers from each other, from users, and from service deployers. H2O makes clients responsible for resource aggregation, and it integrates with P2P technologies [18] in order to reduce the need for inter-provider coordination. However, providers are still partially responsible for resource virtualization and are required to run a dedicated daemon (H2O kernel) that involves some initial setup and maintenance. Unibus builds upon H2O conceptual foundations, but it takes a more radical approach to resource sharing. It delegates the virtualization concerns to the client side as well, and it increases the role of software in dealing with resource heterogeneity by autonomously deploying and reconfiguring distributed software modules when necessary. From the autonomic computing perspective [19], projects such as Organic Grid [20] have sug- 5

6 gested novel ways of deploying self-scheduled computations, however they are restricted to fullyencapsulated, strongly-mobile agents. A similar approach has been adopted by Personal Grid [21] but again with limitations on the types of applications that may be deployed. C0PE [22] reduces costs of system administration of personal environments via the concept of self-configured devices but is not targeted at compute aggregation. A novel remote execution engine has been proposed by REX [23], however it is also not oriented towards providing aggregated views of the underlying resources. GridShell [24] extends commonly used login shells to hide the complexity of grids from end-users but requires a grid toolkit installation. Similarly, Nimrod/G [25] defines a specialized client-side API and allows to execute distributed shell commands but over a previously installed grid. Eclipse PTP [26] aims to provide an IDE for parallel applications emphasizing portability, support for integration of parallel tools, and simplification of the end-user interaction with parallel systems through integration of tools such as GUI-based parallel debuggers. We believe that our effort is complementary as it can ultimately provide Eclipse PTP with plugins for resource sharing. There are also initiatives such as SciDAC SSS [27] that focus on standardization of interfaces among software components used in HPC. While the standardization effort brings obvious advantages to the community, it takes a long time for standards to disseminate from the standardization body, through vendors, system administrators, and tools and libraries developers to end users. In contrast, the approach presented in this paper can be immediately applied to existing HPC systems. It is estimated that up to 30% of the overall scientific application development effort can be consumed by build, deployment, runtime, and post-processing phases [28, 29]. We believe that our approach to HPC resource sharing can potentially increase development productivity by delegating some of these efforts to the software and thus (partially) relieving resource providers and administrators of the associated burdens. 3 Unibus Model In our proposed sharing model (Figure 2), providers make resources available via (server side) network daemons, which we call access daemons. Well known, universally available examples are 6

7 sshd and ftpd that expose access to computational resources and storage, respectively. Other examples include Globus GRAM [30] and the H2O kernel. From the usage perspective, an access daemon is fully characterized by its network endpoint and access protocol stack. Resource capabilities are exposed to clients (software agents acting on behalf of users) solely via these endpoints. User User Policies Access device Unibus application Unibus library Unibus overlay Native application Mediator Local operating system OS Driver Network Endpoint Access Daemon Access Protocol Authentication Network Soft-Installed Firmware Module Resource Administrative Domain Access Policy Providers Figure 2: The Unibus Model Each resource belongs to an administrative domain that defines a consistent set of access policies. Each provider controls one or more administrative domains. Typically, prior to accessing a resource, a client must authenticate (on behalf of its user) and obtain appropriate authorization in accordance with the domain policy. Clients may also require daemons to authenticate (on behalf of providers); service authorization is then performed according to the user s policy. Such mutual authentication is especially relevant in peer-to-peer sharing scenarios, where users are simultaneously providers. Authentication is typically performed in one of the layers of the access protocol stack, such as SSL or IPSec, whereas authorization may be performed in the same layer or in some higher layer. For instance, a peer-to-peer system may create an authenticated overlay routing network while implementing services that are subject to authorization in higher communication layers. A user space is defined as a collection of resources that a given user is authorized to access. 7

8 User spaces usually span multiple administrative domains and may exhibit location and temporal dependencies. The user of a distributed system may access its services from a variety of access devices, ranging from workstations to PDAs to specialized embedded devices. We focus on general-purpose access devices, such as laptop or desktop computers, using off-the-shelf operating systems. The proposed model assumes an adaptive middleware layer that runs as an overlay operating system on a user s access device. The system is intended to provide APIs supporting seamless and dynamic aggregation and reconfiguration of both local and remote resources. We once again emphasize the difference between the proposed client-side overlay model and the grid virtual organization model, as illustrated in Figure 1. The VO model requires providers to adhere to common protocols and middleware, and to synchronize authorization policies. The client-side overlay model, driven by the belief that resource sharing for aggregated-use applications will proliferate if providers are relieved of such burdens, accords resource providers full freedom in the choice of sharing technologies and authorization policies. However, this absence of provider-side resource virtualization implies that the overlay system must handle their heterogeneity at the client side. Our approach to accomplishing this involves dynamically and automatically deployable, resource-specific plugins or service-drivers that we term mediators. Essentially, mediators play a role identical to device drivers in a traditional operating system: they are intended to provide virtualized resource views to the higher system layers, abstracting away access protocol details. Many access daemons, e.g. sshd, expose computational capabilities defined as those that enable launching user-specified programs on back-end machine(s). Another, potentially overlapping set of daemons, including e.g. GridFTP, or again sshd with its SFTP subsystem, yields access to storage. Using a combination of both, Unibus mediators may be able to deploy ( soft install") software services on remote resources, in a manner analogous to upgrading the device firmware". We note that those soft-installed services may themselves have communication and/or self-management capabilities; in the extreme, we envision that this scheme may allow the overlay system to self-deploy, as a whole or in part, across computational resources. Consequently, 8

9 arbitrarily complex distributed systems can be assembled using this scheme in its most general form. The described model delivers numerous benefits: relieving providers of the need to install and maintain metasystem software (through automatic installation and updates), eliminating the need for inter-provider coordination (by virtualizing aggregation only at the client interface), adapting to resource additions, failures, and disconnects (by isolating events within the drivers and overlay), and retaining client-centricity and transparency (via unifying resource abstractions built into the overlay software, and by integrating with the user OS interface). 4 Unibus Architecture As previously mentioned, the Unibus model is realized as a software overlay running on the client access device, optionally complemented by soft-installed remote components, with the goal of virtualizing and aggregating remote resources accessible to the user. The overlay provides operational services to applications via appropriate APIs and language bindings. This section discusses the Unibus architecture, illustrated in Figure 3, in more detail. Resource abstraction layer: The lowest level of the Unibus overlay consists of mediators, which virtualize resources by translating their access protocols into capabilities that are exposed to clients. For instance, the SSH mediator exposes computational and storage capabilities, implementing them as requests carried over the SSH protocol (with the storage capabilities exposed via the SFTP subsystem). By implementing standardized capabilities, mediators are able to abstract away the heterogeneity of resources and their access protocols. However, the model allows nongeneric resource functionality to be exposed as non-standard capabilities, as the Weather Forecast service example in Figure 3 suggests. Since mediators perceive resources through access protocols, they typically exhibit fewer dependencies on vendor- and instance-specific details than is the case with drivers in traditional operating systems. For instance, the NFS mediator may be able to handle any shared NFS filesystem, regardless of the vendor or platform. Furthermore, by relying 9

10 on standard client-side libraries (e.g. sshlib) that provide APIs on top of common protocols, mediators can become relatively thin, lightweight, and typically stateless adapters between these libraries and the Unibus service model. Core services layer: While mediators provide virtualized access to individual resources, core services focus on aggregation of resources of similar types, and project unified abstractions as higher level capabilities. For instance, the Process Control service is intended to group computational services and allow clients to stage and run multiple program copies on several machines, as well as to aid in resource allocation. For instance, the service may issue queries (based on service properties) in order to identify resources available to perform the task at hand (e.g. resources with platform type compatible with the application). The Unified File System (UFS) service is intended to combine storage resources and project them as a single file system abstraction, allowing applications to perform I/O operations across heterogeneous, distributed stores. Additionally, certain higher-level services such as transparent replication can be addressed at this level. Applications, tools MPI App console, GUI Unibus App Weather Forecast Application adaptation CCA MPI... UFS I/O ProActive Access libraries Service binding Core services Mediators C/C++ Fortran Python... Java Unibus microkernel Process Control Unified File System Discovery Status... GRAM SSH NFS SMB TWAIN... Weather Forecast Unibus library Unibus overlay Network Resources Web Service Figure 3: The Unibus architecture, illustrating potential services and usage scenarios Our envisioned approach to dynamic reconfiguration involves publish-subscribe, topic-based event notification mechanisms. For instance, when a discovery service detects a new file share available in the network, it deploys a mediator to handle it. This causes an event notification to 10

11 be delivered to the UFS service which responds by embracing the new share into the unified file system. Similarly, a network failure detected by the mediator may cause an event to be send to a status service, which can implement a recovery policy (e.g. attempting to reconnect, or redirecting traffic to another replica), or propagate the failure event and revoke access to the resource e.g. by removing the share from UFS. Service binding layer: The functionality of the Unibus overlay is provided by dynamically loadable services; responsibilities of the core API are confined to managing the hosting environment. Applications and higher level libraries communicate with hosted services through their specific interfaces, via inter-process calls. To provide applications and libraries with a coherent invocation methodology, we envision the binding layer, responsible for defining representations of the component model in different programming languages. Given that representation, generation of service stubs (either statically or at run time) can be automated by appropriate tools. Application adaptation layer: This layer includes system software and libraries that provide added value over services supplied by Unibus by implementing or emulating higher-level programming abstractions and environments. A simple example can include an I/O library, interfacing to the UFS service, and extending upon standard OS libraries by supporting advanced filesystem features such as scheduled direct resource-to-resource transfer or data query/lookup. As another example, we envision the possibility of building an MPI library that uses Unibus as a process control and communication substrate. Applications and tools layer: The top-most layer in the Unibus architecture consists of applications that use Unibus APIs either explicitly or via the adaptation layer software. Examples of the former may include the Unibus GUI and command-line tools; an example of the latter is an MPI program running on a remote computational resource, using an MPI library implemented on top of Unibus. 11

12 5 Example Manifestation: Zero-Force MPI Particularly interesting applications of the Unibus model are those related to resource-shared metacomputing. Traditionally, heterogeneous shared resources are virtualized in coordination by their providers, who install and configure the agreed-upon middleware stacks. The Unibus model shifts those responsibilities to the client-side overlay, making it possible to transform generic, uncoordinated, individually shared resources into a coherent metacomputing platform, accessed centrally from the user s access device. As a specific proof-of-concept exemplification of this methodology, we have developed the Zero-Force MPI (ZF-MPI) toolkit, aimed at such compute aggregation for MPI-based applications. The toolkit aids the user in the build, deployment, run-time and postprocessing phases through the automatic software deployment and data replication capabilities. ZF-MPI is based on FT-MPI [31], which we have chosen due to: (1) its small size (gzipped source files size is about 800 KB), (2) full MPI 1.2 compliance, (3) robust autoconf-based installer supporting wide range of target architectures, and (4) fault tolerance features (especially important in loosely-coupled environments). The following subsections describe implementation of system components in more detail. 5.1 ZF-MPI Architecture At the client side, ZF-MPI is manifested as an interactive console, presenting application scientists with a unified and coherent interface for accessing underlying computational resources in a location-transparent manner. Through the console, users can add remote resources to their distributed virtual machine (causing automatic remote deployment of the FT-MPI environment), replicate source files, makefiles, and data, perform (parallel) compilation, and launch the application. Resources are virtualized via Unibus mediators specific to their access protocol stacks. Albeit the model allows the use of diverse access protocols that interface e.g. with batch scheduling systems, the current ZF-MPI prototype supports only the SSH2 [32] mediator. SSH2 enables remote program execution through its exec channel. This feature can be exploited to (1) install (e.g. via configure/make) the user s software on a remote resource and (2) to execute code on that resource. 12

13 Moreover, via the the SFTP subsystem of SSH2, it is possible to transfer files in both directions, i.e., uploading necessary software (upgrading the device firmware ) and user s program and data files, and retrieving application output. The described architecture allows scientists to interact with virtualized aggregated heterogeneous resources through the ZF-MPI Console as if they worked with a local system. At the same time, resource provider responsibility is confined to granting access (currently via an SSH login account). The system automates cumbersome tasks such as MPI environment configuration, uploading and compiling computational applications, and input data staging / results collection. 5.2 ZF-MPI Console In its current version, the ZF-MPI console allows users to: (1) assemble the distributed virtual machine (DVM); (2) synchronize files, such as the application sources, makefiles and scripts, or the input data; (3) invoke shell commands on remote resources (in parallel) e.g. to compile user s applications; and (4) launch compiled applications. DVM Assembly: The add command can be used to add a computational resource to the DVM. The command requires the user to specify the target host name and supply the standard login credentials (e.g. ssh username/password). Upon successful login, the console automatically uploads (pushes) the FT-MPI distribution to the remote resource, decompresses it, installs it by setting the appropriate environment variables and then calling configure/make, and finally starts it by launching the appropriate daemons. We note that the upload phase may stress the potentially low-bandwidth network connection of the client machine. In the future, we will explore alternative schemes, e.g. instructing the remote host to download the software directly from a remote repository, if an appropriate enabling software (e.g. wget) is installed. Moreover, the add command must be scalable i.e. adding thousands of resources should be no more difficult than adding a few ones. This can be achieved by referencing external, separately generated resource lists, and by using patterns in resource address specifications. 13

14 Data Synchronization: The ZF-MPI Console allows users to synchronize source files across the DVM nodes with the sync command. For example, when the user locally modifies a makefile or application source files, sync can be used to propagate these changes across all hosts enrolled in the DVM. The current prototype implementation simply uses file modification time to resolve synchronization conflicts. In the future, we will investigate more sophisticated schemes one possibility is to build a complete distributed file system on top of SFTP shares, or to adapt existing solutions such as Coda [33], or Ivy [34]. Compile and Build: The console allows users to invoke standard shell commands and remote tools, such as configure or make, which are then executed in parallel on all DVM nodes. In the future we also consider to extend this mechanism by integrating with existing toolkits such as Parallel UNIX Commands [35]. Application Launch: The console supports the custom, client-side version of mpirun, that can be used to launch the MPI program on (a subset of) nodes in the DVM. 5.3 Example Session A sample ZF MPI Console session is presented in Figure 4. The scenario involves running one of the NAS Parallel Benchmarks [36] (BT) on a DVM consisting of a collection of Sun Solaris and Linux workstations. In lines 1-2, the heterogeneous DVM is defined. In line 3, the user launches the FT-MPI Name Service on the compute host. The next command (line 4) instantiates the FT-MPI DVM by launching the necessary daemons. Line 5 shows how the current DVM status can be obtained. The next command (line 6) de facto replicates the contents of the local directory across directories on remote hosts constituting the DVM. The next three shell commands cause the application to be compiled and deployed. Although they look as if they are invoked locally, in fact these shell commands are executed in parallel on all hosts registered in the ZF-MPI DVM. Finally, the compiled program is launched, the results are written to the output file and the FT-MPI console is halted. 14

15 1 zf-mpi> add ft_mpi 2 zf-mpi> add ft_mpi 3 zf-mpi> ft_mpi setns compute 4 zf-mpi> ft_mpi add ALL 5 zf-mpi> ft_mpi console conf 6 zf-mpi> sync ~/NPB3.2.1/NPB3.2-MPI ~/zf-mpi/ 7 zf-mpi> cd ~/zf-mpi/npb3.2-mpi 8 zf-mpi> make bt NPROCS=8 CLASS=B 9 zf-mpi> mv bin/bt.b.8 $HARNESS_BIN_DIR/$HARNESS_ARCH/ 10 zf-mpi> ft_mpi ftmpirun compute -np 8 -o bt.b.8 > log 11 zf-mpi> cat log grep "Time in seconds" 12 zf-mpi> ft_mpi console haltall Figure 4: The sample session with the ZF-MPI console Console commands can be divided in four categories: (1) pure ZF-MPI commands (add,sync), (2) commands related to FT-MPI (ft_mpi setns, ft_mpi add), (3) commands related to the FT-MPI console (ft_mpi console), and (4) shell commands (cd, mv, cat). We note that in the absence of Zero-Force MPI or a similar parallel command mechanism, the steps 1 9 above would have to be performed on each host separately and by hand. 5.4 Heterogeneity Issues The prototype ZF-MPI console has been implemented in Java, and thus it can run on any Javaenabled client platform. As the implementation of the SSH2 protocol, we have used the popular JSch [37] library. However, a potential portability issue stems from incompatibilities between file system attributes on different systems. For instance, when the ZF-MPI console is used to transfer files from Windows-based laptop to UNIX back-end machines, the UNIX shell scripts (e.g. configure) must be identified as such in order for their executable flag to be properly set. We have applied a simple heuristic to preserve the executable status across file systems; for instance, when copied from Windows to UNIX, a text file starting with!# is considered to be executable etc. Another interesting issue is related to software and compiler dependency resolution. The compiler suite used to build the application should be the same as the one used to build the MPI system; 15

16 otherwise linking problems are likely to occur. Therefore, the choice of the compiler suite must be made as early as at the time the FT-MPI environment is compiled. For example, on Sun workstations that we were using, GNU and native Solaris compiler suites were both available, but the GNU suite did not contain a Fortran compiler. To include Fortran support (needed e.g. to compile NPB tests), we have configured the console to prefer the native suite by default (e.g. via CC=cc and similar definitions) when interfacing to Solaris. In the future, we envision that the choice may be offered to the user when the console auto-detects multiple alternative compiler suites. 5.5 Experimental Evaluation Once Zero-Force MPI deploys the FT-MPI DVM, it gets out of the way and does not perturb application execution. Therefore, we expected no performance impact caused by the use of the toolkit vs. bare FT-MPI. To verify that this is indeed the case, and to evaluate feasibility of the proposed methodology when applied to real-life-like problems, we performed a series of experiments. For the tests, we have chosen the NAS Parallel Benchmarks 3.2 for MPI [36] suite since: (1) they cover a representative spectrum of classes of HPC applications, and (2) they are implemented in languages representative for HPC programming (Fortran and C). We have run experiments on the Sun Solaris platform, and in a heterogeneous environment consisting of Solaris and Linux/i86 machines. We have chosen Solaris as a challenging, non-gnu-based UNIX system with non-standard command syntax, significantly exercising heterogeneity support in the toolkit Performance Tests Initial series of NPB tests has been executed on a homogeneous cluster of Sun Blade 2500 workstations. Each workstation had two UltraSPARC-IIIi 1280MHz processors with 1 MB cache memory per processor, 2GB RAM memory, and 160 MHz system clock frequency. All machines were connected directly to 100 Mb/s HP network switches and operated under control of the SunOS 5.10 operating system. Benchmarks were compiled in the size class A. All tests were repeated 10 times to obtain reliable results. BT and SP tests were run on 1, 4, 9 and 16 processors, and the remainder of the tests on 1, 2, 4, 8 and 16 processors. The FT-MPI virtual machine consisted of 16

17 the same 19 nodes for FT-MPI and ZF-MPI, with up to 16 nodes used for the benchmarks. Comparison tests have been launched at the same sequence and on the same nodes. During tests, the FT-MPI Name Service has been running on an additional dedicated workstation. Figures 5-12 present resulting execution times in seconds. Relatively poor scalability (except for the embarrassingly parallel benchmark) can be attributed to small problem sizes and a slow network [38]; the worst scalability has been observed for throughput-bound (FT) or latency-bound (IS, CG) benchmarks. Since the network was non-dedicated, we have observed some variations in execution times from run to run. Nonetheless, the results confirm that ZF-MPI has no measurable influence on the application performance, with small fluctuations for communication-bound and short-running benchmarks (Figures 10,11,12) falling into the range of a statistical error Heterogeneity Tests In order to demonstrate that the ZF-MPI toolkit works as expected in heterogeneous environments we conducted another experiment. We selected 4 general-purpose PC computers (Pentium 4 with 2.4 GHz, 2.8 GHz, 2.6 GHz, 2.4 GHz, and 1 GB, 1 GB, 768 MB, and 1 GB RAM, respectively) with Linux Mandriva 2006 operating system (kernel ), and coupled them with 5 Sun Blade 2500 workstations from the previous experiment. The PCs had Gigabit Ethernet network interfaces and they were connected to Sun machines via 100 Mb/s Ethernet switches. None of the nodes had preinstalled MPI or benchmark codes. The FT-MPI VM was assembled in a consistent order (alphabetically by host names): 2 Linux machines followed by 5 Sun machines and then another 2 Linux machines. The tests were compiled in the size class B for 8 or 9 processes. Each test was executed 5 times, once through the ZF-MPI toolkit, and a second time using bare FT-MPI. The results of this experiment are presented in Figure 13. As we expected and similarly to the results of the previous experiment, it can be observed that ZF-MPI does not affect performance of MPI applications. However, we argue that from the end-user perspective, it significantly reduces efforts related to common tasks such as deployment and execution of computational applications. A potential source of startup overhead in ZF-MPI can be associated with the necessity to upload and install FT-MPI on the target machines. These phases depend heavily on the network / CPU 17

18 speeds, but typically require seconds for the upload (involving transfer of an 800 KB file), and minutes for the install (about 2 min. on our testbed Sun Blade workstations). However, we note that these steps are performed only once per node (and can run in parallel), thus amortizing across application executions. 6 Conclusions and Future Work Existing resource sharing platforms invariably make providers responsible for resource virtualization and aggregation. Providers are required to set up their resources for sharing using specific technologies, commonly via heavyweight software toolkits, and to coordinate among themselves in order to provide users with aggregated services. These logistical and coordination burdens discourage providers from sharing, and are cost effective only in situations based on long-term agreements governing large, static pools of resources. In this paper, we propose to address those issues through a novel model of resource sharing, based on the concept of a client-side overlay, as contrasted with the traditional grid model of virtual organizations. The proposed model, termed Unibus, aims to partially relieve providers of administration burdens by delegating them to the client-side software. That overlay software can autonomously adapt to resource heterogeneity and temporal variability by autonomously reconfiguring itself and the remote resources through dynamically deployable software modules. In the context of metacomputing, Unibus model permits clients to aggregate decoupled, individually shared resources into a coherent and conveniently accessed computational platform. The overlay software assumes the responsibility of deploying the necessary coordination and communication middleware onto the shared hosts. We have described the Zero-Force MPI toolkit, a prototype exemplification of the Unibus model targeted at such compute aggregation for MPI-based parallel computing. We have shown that with ZF-MPI, the user that has been granted access to remote resources can efficiently use them to execute MPI applications in a semi-automated setting, without extra support from resource providers. Our experiments with the NAS Parallel Benchmark suite on a heterogeneous collection of resources show promising results and demonstrate feasibility of the proposed approach. 18

19 Although our current software prototype can only interface to SSH2-accessible resources, the Unibus model is designed (through the mediator abstraction layer) to accommodate other access methods of various semantics. For instance, when a toolkit such as ZF-MPI interfaces to a batch scheduling system, the mediator can delegate interactive activities (such as program compilation) to service nodes, implement the synchronized filesystem abstraction via site-specific data synchronization commands, and translate the execution requests (made by the client-side mpirun in this case) into batch files scheduled on the queuing system at the server side. Ultimately aiming to make uncoordinated, global-scale resource sharing a reality, the Unibus model is only a first step along the way, as it spawns numerous new challenges and pitfalls. The centralized resource scheduling must be replaced by decentralized, self-organizing approaches, perhaps involving compensation [39], in which client agents negotiate access on behalf of the user with multiple uncoordinated provider agents. The traditional resource allocation schemes, based on a dedicated information and discovery services, must yield to decentralized, globally scalable mechanisms, perhaps based on peer-to-peer technologies. The single sign-on capabilities, provided via coordinated authentication servers, must be replaced by sophisticated, decentralized credential management mechanisms in order to maintain user-centricity without compromising provider autonomy. Finally, the soft-installation approaches must be generalized and further developed to support arbitrary codes and dynamic dependency resolution. Notwithstanding these difficulties, we believe that the Unibus client-side overlay model may, in the long term, be able to overcome some of the fundamental deficiencies of the virtual organization approach. References [1] Y. Guo, J. G. Liu, M. Ghanem, K. Mish, V. Curcin, C. Haselwimmer, D. Sotiriou, K. Muraleetharan, and L. Taylor, Bridging the Macro and Micro: A Computing Intensive Earthquake Study Using Discovery Net, ACM/IEEE SC 2005 Conference (SC 05), Nov Seattle, USA. [2] Biomedical Informatics Research Network

20 [3] K. Yurkiewicz, Sciences On The Grid, Symmetry, vol. 02, Nov symmetrymag.org/pdfs/200511/sciences_on_the_grid.pdf. [4] J. C. Werner, How to succeed using grid in High Energy Physics experiments, tech. rep., High Energy Physics, University of Manchester, Available at man.ac.uk/u/jamwer/esci2005.pdf. [5] J. Chin and P. V. Coveney, Towards Tractable Toolkits for the Grid: A Plea for Lightweight, Usable Middleware, Tech. Rep. UKeS , UK e-science, nesc.ac.uk/technical_papers/ukes pdf. [6] Open Grid Portals: Portals, Portlets and the Grid, opengridportals.org/. [7] G. Fox, D. Gannon, and M. Thomas, Grid Computing, ch. Overview of Grid Computing Environments, pp ch20. [8] National Institute of Environmental Health Science, U.S. National Institutes of Health [9] Enabling Scientific Discoveries and Improving Education in Geosciences through Information Technology Research [10] Center for Computation and Technology HPC Portal. edu, [11] NGS P-GRADE [12] National Grid Service [13] Globus Alliance [14] Legion

21 [15] A. S. Grimshaw, M. A. Humphrey, and A. Natrajan, A philosophical and technical comparison of Legion and Globus, IBM Journal of Research and Development, vol. 48, no. 2, [16] D. Kurzyniec, T. Wrzosek, D. Drzewiecki, and V. Sunderam, Towards self-organizing distributed computing frameworks: The H2O approach, Parallel Processing Letters, vol. 13, no. 2, pp , [17] The H2O Project, [18] P. Jurczyk, M. Golenia, M. Malawski, D. Kurzyniec, M. Bubak, and V. S. Sunderam, A System for Distributed Computing Based on H2O and JXTA, in Cracow Grid Workshop 2004, (Kraków, Poland), [19] IBM, Practical Autonomic Computing: Roadmap to Self Managing Technology. Whitepaper.pdf, Jan [20] G. B. Arjav J. Chakravarti and M. Lauria, The Organic Grid: Self-Organizing Computation on a Peer-to-Peer Network, IEEE Trans. on Systems, Man, and Cybernetics Part A: Systems and Humans, vol. 35 pp , May [21] J. Han and D. Park, A Lightweight Personal Grid Using a Supernode Network, in Proc. of the 3rd International Conference on Peer-to-Peer Computing, (Linköping, SWEDEN), pp , IEEE Computer Society, [22] P. Yalagandula, L. Alvisi, M. Dahlin, and H. Vin, C0PE: Consistent 0-Administration Personal Environment, in Proc. of the Sixth International Workshop on Object-Oriented Real- Time Dependable Systems (WORDS 01), pp , IEEE Computer Society, [23] M. Kaminsky et al., REX: Secure, Extensible Remote Execution, in Proc. of the 2004 USENIX Annual Technical Conference (USENIX 04), (Boston, Massachusetts, USA), pp , June

22 [24] E. Walker, T. Minyard, and J. Boisseau, GridShell: A Login Shell for Orchestrating and Coordinating Applications in a Grid Enabled Environment, in Proc. of The International Conference on Computing Communications and Control Technologies, (Austin, Texas, USA), pp , [25] D. Abramson, J. Giddy, and L. Kotler, High Performance Parametric Modeling with Nimrod/G: Killer Application for the Global Grid?, in Proc. of the 2000 International Parallel and Distributed Processing Symposium, (Cancun, Mexico), pp , IEEE Computer Society, [26] Eclipse.org, [27] Scalable Systems Software for Terascale Computer Centers, scidac.org/scalablesystems. [28] P. F. Dubois, G. K. Kumfert, and T. G. W. Epperly, Why Johnny can t build, Computing in Science and Engineering, vol. 5, pp , Sep/Oct [29] G. K. Kumfert and T. G. W. Epperly, Software in the DOE: The hidden overhead of the build, Tech. Rep. UCRL-ID , Lawrence Livermore National Laboratory, [30] K. Czajkowski et al., A Resource Management Architecture for Metacomputing Systems, in Proc. of the IPPS/SPDP 98 Workshop on Job Scheduling Strategies for Parallel Processing, (Orlando, FL, USA), pp , [31] G. Fagg, E. Gabriel, G. Bosilca, T. Angskun, Z. Chen, J. Pjesivac-Grbovic, K. London, and J. Dongarra, Extending the MPI specification for process fault tolerance on high performance computing systems, in Proceedings of ISC2004, (Heidelberg, Germany), June Available at isc2004-ft-mpi.pdf. 22

23 [32] The Internet Engineering Task Force Network Working Group The Secure Shell (SSH) Connection Protocol RFC 4254, Jan rfc4254.txt. [33] M. Satyanarayanan, The Evolution of Coda, ACM Transactions on Computer Systems (TOCS), vol. 20, no. 2, pp , [34] A. Muthitacharoen, R. Morris, T. Gil, and B. Chen, Ivy: A Read/Write Peer-to-Peer File System, in Proc. of the 5th USENIX Symposium on Operating Systems Design and Implementation (OSDI 02), (Boston, MA, USA), pp , [35] E. Ong, E. Lusk, and W. Gropp, Scalable Unix Commands for Parallel Processors: A High- Performance Implementation in Recent Advances in Parallel Virtual Machine and Message Passing Interface: 8th European PVM/MPI Users, p. Vol. 2131, LNCS, Springer Berlin / Heidelberg, Jan [36] NASA Advanced Supercomputing (NAS) Division: NAS Parallel Benchmarks, [37] JCraft, JSCH Java Secure Channel, [38] F. C. Wong, R. P. Martin, R. H., Arpaci-Dusseau, and D. E. Culler, Architectural requirements and scalability of the NAS Parallel Benchmarks, in Proceedings of the 1999 ACM/IEEE conference on Supercomputing (CDROM), ACM Press New York, NY, USA, [39] G. Cheliotis, C. Kenyon, and R. Buyya, Grid Economics: 10 Lessons From Finance, Daily News and Information for the Global Grid Community, vol. 2, Jul gridbus.org/papers/grid_lessons.pdf. 23

24 70 60 ft mpi zf mpi ft mpi zf mpi time [s] 30 time [s] nodes nodes Figure 5: EP benchmark test Figure 6: LU benchmark test ft mpi zf mpi ft mpi zf mpi time [s] 400 time [s] nodes nodes Figure 7: BT benchmark test Figure 8: MG benchmark test 700 ft mpi zf mpi 12 ft mpi zf mpi time [s] time [s] nodes nodes Figure 9: SP benchmark test Figure 10: IS benchmark test 24

25 50 45 ft mpi zf mpi ft mpi zf mpi time [s] 25 time [s] nodes nodes Figure 11: FT benchmark test Figure 12: CG benchmark test ft mpi zf mpi time [s] mg.8 is.8 ep.8 cg.8 lu.8 ft.8 bt.9 sp.9 test Figure 13: NAS Parallel Benchmarks for 8 or 9 processes in the size class B 25

From Parallel Virtual Machine to Virtual Parallel Machine: The Unibus System

From Parallel Virtual Machine to Virtual Parallel Machine: The Unibus System From Parallel Virtual Machine to Virtual Parallel Machine: The Unibus System Vaidy Sunderam Emory University, Atlanta, USA vss@emory.edu Credits and Acknowledgements Distributed Computing Laboratory, Emory

More information

UNIBUS: ASPECTS OF HETEROGENEITY AND FAULT TOLERANCE IN CLOUD COMPUTING

UNIBUS: ASPECTS OF HETEROGENEITY AND FAULT TOLERANCE IN CLOUD COMPUTING Atlanta, Georgia, April 19, 2010 in conjunction with IPDPS 2010 UNIBUS: ASPECTS OF HETEROGENEITY AND FAULT TOLERANCE IN CLOUD COMPUTING Magdalena Slawinska Jaroslaw Slawinski Vaidy Sunderam {magg, jaross,

More information

An Evaluation of Alternative Designs for a Grid Information Service

An Evaluation of Alternative Designs for a Grid Information Service An Evaluation of Alternative Designs for a Grid Information Service Warren Smith, Abdul Waheed *, David Meyers, Jerry Yan Computer Sciences Corporation * MRJ Technology Solutions Directory Research L.L.C.

More information

Chapter 18 Distributed Systems and Web Services

Chapter 18 Distributed Systems and Web Services Chapter 18 Distributed Systems and Web Services Outline 18.1 Introduction 18.2 Distributed File Systems 18.2.1 Distributed File System Concepts 18.2.2 Network File System (NFS) 18.2.3 Andrew File System

More information

UNICORE Globus: Interoperability of Grid Infrastructures

UNICORE Globus: Interoperability of Grid Infrastructures UNICORE : Interoperability of Grid Infrastructures Michael Rambadt Philipp Wieder Central Institute for Applied Mathematics (ZAM) Research Centre Juelich D 52425 Juelich, Germany Phone: +49 2461 612057

More information

A Case for High Performance Computing with Virtual Machines

A Case for High Performance Computing with Virtual Machines A Case for High Performance Computing with Virtual Machines Wei Huang*, Jiuxing Liu +, Bulent Abali +, and Dhabaleswar K. Panda* *The Ohio State University +IBM T. J. Waston Research Center Presentation

More information

THE GLOBUS PROJECT. White Paper. GridFTP. Universal Data Transfer for the Grid

THE GLOBUS PROJECT. White Paper. GridFTP. Universal Data Transfer for the Grid THE GLOBUS PROJECT White Paper GridFTP Universal Data Transfer for the Grid WHITE PAPER GridFTP Universal Data Transfer for the Grid September 5, 2000 Copyright 2000, The University of Chicago and The

More information

Genomics on Cisco Metacloud + SwiftStack

Genomics on Cisco Metacloud + SwiftStack Genomics on Cisco Metacloud + SwiftStack Technology is a large component of driving discovery in both research and providing timely answers for clinical treatments. Advances in genomic sequencing have

More information

ADAPTIVE AND DYNAMIC LOAD BALANCING METHODOLOGIES FOR DISTRIBUTED ENVIRONMENT

ADAPTIVE AND DYNAMIC LOAD BALANCING METHODOLOGIES FOR DISTRIBUTED ENVIRONMENT ADAPTIVE AND DYNAMIC LOAD BALANCING METHODOLOGIES FOR DISTRIBUTED ENVIRONMENT PhD Summary DOCTORATE OF PHILOSOPHY IN COMPUTER SCIENCE & ENGINEERING By Sandip Kumar Goyal (09-PhD-052) Under the Supervision

More information

DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN. Chapter 1. Introduction

DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN. Chapter 1. Introduction DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN Chapter 1 Introduction Modified by: Dr. Ramzi Saifan Definition of a Distributed System (1) A distributed

More information

GRIDS INTRODUCTION TO GRID INFRASTRUCTURES. Fabrizio Gagliardi

GRIDS INTRODUCTION TO GRID INFRASTRUCTURES. Fabrizio Gagliardi GRIDS INTRODUCTION TO GRID INFRASTRUCTURES Fabrizio Gagliardi Dr. Fabrizio Gagliardi is the leader of the EU DataGrid project and designated director of the proposed EGEE (Enabling Grids for E-science

More information

CSE 5306 Distributed Systems. Course Introduction

CSE 5306 Distributed Systems. Course Introduction CSE 5306 Distributed Systems Course Introduction 1 Instructor and TA Dr. Donggang Liu @ CSE Web: http://ranger.uta.edu/~dliu Email: dliu@uta.edu Phone: 817-2720741 Office: ERB 555 Office hours: Tus/Ths

More information

Outline. Definition of a Distributed System Goals of a Distributed System Types of Distributed Systems

Outline. Definition of a Distributed System Goals of a Distributed System Types of Distributed Systems Distributed Systems Outline Definition of a Distributed System Goals of a Distributed System Types of Distributed Systems What Is A Distributed System? A collection of independent computers that appears

More information

Grid Computing with Voyager

Grid Computing with Voyager Grid Computing with Voyager By Saikumar Dubugunta Recursion Software, Inc. September 28, 2005 TABLE OF CONTENTS Introduction... 1 Using Voyager for Grid Computing... 2 Voyager Core Components... 3 Code

More information

Improving Geographical Locality of Data for Shared Memory Implementations of PDE Solvers

Improving Geographical Locality of Data for Shared Memory Implementations of PDE Solvers Improving Geographical Locality of Data for Shared Memory Implementations of PDE Solvers Henrik Löf, Markus Nordén, and Sverker Holmgren Uppsala University, Department of Information Technology P.O. Box

More information

QLIKVIEW SCALABILITY BENCHMARK WHITE PAPER

QLIKVIEW SCALABILITY BENCHMARK WHITE PAPER QLIKVIEW SCALABILITY BENCHMARK WHITE PAPER Hardware Sizing Using Amazon EC2 A QlikView Scalability Center Technical White Paper June 2013 qlikview.com Table of Contents Executive Summary 3 A Challenge

More information

Lecture 9: MIMD Architectures

Lecture 9: MIMD Architectures Lecture 9: MIMD Architectures Introduction and classification Symmetric multiprocessors NUMA architecture Clusters Zebo Peng, IDA, LiTH 1 Introduction A set of general purpose processors is connected together.

More information

Database Assessment for PDMS

Database Assessment for PDMS Database Assessment for PDMS Abhishek Gaurav, Nayden Markatchev, Philip Rizk and Rob Simmonds Grid Research Centre, University of Calgary. http://grid.ucalgary.ca 1 Introduction This document describes

More information

Towards a Portable Cluster Computing Environment Supporting Single System Image

Towards a Portable Cluster Computing Environment Supporting Single System Image Towards a Portable Cluster Computing Environment Supporting Single System Image Tatsuya Asazu y Bernady O. Apduhan z Itsujiro Arita z Department of Artificial Intelligence Kyushu Institute of Technology

More information

CAS 703 Software Design

CAS 703 Software Design Dr. Ridha Khedri Department of Computing and Software, McMaster University Canada L8S 4L7, Hamilton, Ontario Acknowledgments: Material based on Software by Tao et al. (Chapters 9 and 10) (SOA) 1 Interaction

More information

Introduction to Grid Computing

Introduction to Grid Computing Milestone 2 Include the names of the papers You only have a page be selective about what you include Be specific; summarize the authors contributions, not just what the paper is about. You might be able

More information

A RESOURCE MANAGEMENT FRAMEWORK FOR INTERACTIVE GRIDS

A RESOURCE MANAGEMENT FRAMEWORK FOR INTERACTIVE GRIDS A RESOURCE MANAGEMENT FRAMEWORK FOR INTERACTIVE GRIDS Raj Kumar, Vanish Talwar, Sujoy Basu Hewlett-Packard Labs 1501 Page Mill Road, MS 1181 Palo Alto, CA 94304 USA { raj.kumar,vanish.talwar,sujoy.basu}@hp.com

More information

Lecture 9: MIMD Architectures

Lecture 9: MIMD Architectures Lecture 9: MIMD Architectures Introduction and classification Symmetric multiprocessors NUMA architecture Clusters Zebo Peng, IDA, LiTH 1 Introduction MIMD: a set of general purpose processors is connected

More information

Distributed Computing Environment (DCE)

Distributed Computing Environment (DCE) Distributed Computing Environment (DCE) Distributed Computing means computing that involves the cooperation of two or more machines communicating over a network as depicted in Fig-1. The machines participating

More information

Software Paradigms (Lesson 10) Selected Topics in Software Architecture

Software Paradigms (Lesson 10) Selected Topics in Software Architecture Software Paradigms (Lesson 10) Selected Topics in Software Architecture Table of Contents 1 World-Wide-Web... 2 1.1 Basic Architectural Solution... 2 1.2 Designing WWW Applications... 7 2 CORBA... 11 2.1

More information

Workload Characterization using the TAU Performance System

Workload Characterization using the TAU Performance System Workload Characterization using the TAU Performance System Sameer Shende, Allen D. Malony, and Alan Morris Performance Research Laboratory, Department of Computer and Information Science University of

More information

Top-down definition of Network Centric Operating System features

Top-down definition of Network Centric Operating System features Position paper submitted to the Workshop on Network Centric Operating Systems Bruxelles 16-17 march 2005 Top-down definition of Network Centric Operating System features Thesis Marco Danelutto Dept. Computer

More information

The Use of Cloud Computing Resources in an HPC Environment

The Use of Cloud Computing Resources in an HPC Environment The Use of Cloud Computing Resources in an HPC Environment Bill, Labate, UCLA Office of Information Technology Prakashan Korambath, UCLA Institute for Digital Research & Education Cloud computing becomes

More information

MULTIMEDIA PROCESSING ON MANY-CORE TECHNOLOGIES USING DISTRIBUTED MULTIMEDIA MIDDLEWARE

MULTIMEDIA PROCESSING ON MANY-CORE TECHNOLOGIES USING DISTRIBUTED MULTIMEDIA MIDDLEWARE MULTIMEDIA PROCESSING ON MANY-CORE TECHNOLOGIES USING DISTRIBUTED MULTIMEDIA MIDDLEWARE Michael Repplinger 1,2, Martin Beyer 1, and Philipp Slusallek 1,2 1 Computer Graphics Lab, Saarland University, Saarbrücken,

More information

Chapter 4. Fundamental Concepts and Models

Chapter 4. Fundamental Concepts and Models Chapter 4. Fundamental Concepts and Models 4.1 Roles and Boundaries 4.2 Cloud Characteristics 4.3 Cloud Delivery Models 4.4 Cloud Deployment Models The upcoming sections cover introductory topic areas

More information

An Experience in Accessing Grid Computing from Mobile Device with GridLab Mobile Services

An Experience in Accessing Grid Computing from Mobile Device with GridLab Mobile Services An Experience in Accessing Grid Computing from Mobile Device with GridLab Mobile Services Riri Fitri Sari, Rene Paulus Department of Electrical Engineering, Faculty of Engineering University of Indonesia

More information

Intel Cloud Builder Guide: Cloud Design and Deployment on Intel Platforms

Intel Cloud Builder Guide: Cloud Design and Deployment on Intel Platforms EXECUTIVE SUMMARY Intel Cloud Builder Guide Intel Xeon Processor-based Servers Novell* Cloud Manager Intel Cloud Builder Guide: Cloud Design and Deployment on Intel Platforms Novell* Cloud Manager Intel

More information

Reconfigurable Architecture Requirements for Co-Designed Virtual Machines

Reconfigurable Architecture Requirements for Co-Designed Virtual Machines Reconfigurable Architecture Requirements for Co-Designed Virtual Machines Kenneth B. Kent University of New Brunswick Faculty of Computer Science Fredericton, New Brunswick, Canada ken@unb.ca Micaela Serra

More information

Separating Access Control Policy, Enforcement, and Functionality in Extensible Systems. Robert Grimm University of Washington

Separating Access Control Policy, Enforcement, and Functionality in Extensible Systems. Robert Grimm University of Washington Separating Access Control Policy, Enforcement, and Functionality in Extensible Systems Robert Grimm University of Washington Extensions Added to running system Interact through low-latency interfaces Form

More information

A Grid-Enabled Component Container for CORBA Lightweight Components

A Grid-Enabled Component Container for CORBA Lightweight Components A Grid-Enabled Component Container for CORBA Lightweight Components Diego Sevilla 1, José M. García 1, Antonio F. Gómez 2 1 Department of Computer Engineering 2 Department of Information and Communications

More information

Peer-to-Peer Systems. Chapter General Characteristics

Peer-to-Peer Systems. Chapter General Characteristics Chapter 2 Peer-to-Peer Systems Abstract In this chapter, a basic overview is given of P2P systems, architectures, and search strategies in P2P systems. More specific concepts that are outlined include

More information

Chapter 3. Design of Grid Scheduler. 3.1 Introduction

Chapter 3. Design of Grid Scheduler. 3.1 Introduction Chapter 3 Design of Grid Scheduler The scheduler component of the grid is responsible to prepare the job ques for grid resources. The research in design of grid schedulers has given various topologies

More information

Functional Requirements for Grid Oriented Optical Networks

Functional Requirements for Grid Oriented Optical Networks Functional Requirements for Grid Oriented Optical s Luca Valcarenghi Internal Workshop 4 on Photonic s and Technologies Scuola Superiore Sant Anna Pisa June 3-4, 2003 1 Motivations Grid networking connection

More information

TECHNOLOGY Introduction The Difference Protection at the End Points Security made Simple

TECHNOLOGY Introduction The Difference Protection at the End Points Security made Simple APPGATE TECHNOLOGY UNIFIED TECHNOLOGY Introduction The AppGate solution truly delivers holistic security and access control where other approaches fall short. It is designed to address the security and

More information

xsim The Extreme-Scale Simulator

xsim The Extreme-Scale Simulator www.bsc.es xsim The Extreme-Scale Simulator Janko Strassburg Severo Ochoa Seminar @ BSC, 28 Feb 2014 Motivation Future exascale systems are predicted to have hundreds of thousands of nodes, thousands of

More information

Advanced School in High Performance and GRID Computing November Introduction to Grid computing.

Advanced School in High Performance and GRID Computing November Introduction to Grid computing. 1967-14 Advanced School in High Performance and GRID Computing 3-14 November 2008 Introduction to Grid computing. TAFFONI Giuliano Osservatorio Astronomico di Trieste/INAF Via G.B. Tiepolo 11 34131 Trieste

More information

HETEROGENEOUS COMPUTING

HETEROGENEOUS COMPUTING HETEROGENEOUS COMPUTING Shoukat Ali, Tracy D. Braun, Howard Jay Siegel, and Anthony A. Maciejewski School of Electrical and Computer Engineering, Purdue University Heterogeneous computing is a set of techniques

More information

Merging Enterprise Applications with Docker* Container Technology

Merging Enterprise Applications with Docker* Container Technology Solution Brief NetApp Docker Volume Plugin* Intel Xeon Processors Intel Ethernet Converged Network Adapters Merging Enterprise Applications with Docker* Container Technology Enabling Scale-out Solutions

More information

A Data-Aware Resource Broker for Data Grids

A Data-Aware Resource Broker for Data Grids A Data-Aware Resource Broker for Data Grids Huy Le, Paul Coddington, and Andrew L. Wendelborn School of Computer Science, University of Adelaide Adelaide, SA 5005, Australia {paulc,andrew}@cs.adelaide.edu.au

More information

SDS: A Scalable Data Services System in Data Grid

SDS: A Scalable Data Services System in Data Grid SDS: A Scalable Data s System in Data Grid Xiaoning Peng School of Information Science & Engineering, Central South University Changsha 410083, China Department of Computer Science and Technology, Huaihua

More information

EMC Virtual Infrastructure for Microsoft Applications Data Center Solution

EMC Virtual Infrastructure for Microsoft Applications Data Center Solution EMC Virtual Infrastructure for Microsoft Applications Data Center Solution Enabled by EMC Symmetrix V-Max and Reference Architecture EMC Global Solutions Copyright and Trademark Information Copyright 2009

More information

Virtualization and Softwarization Technologies for End-to-end Networking

Virtualization and Softwarization Technologies for End-to-end Networking ization and Softwarization Technologies for End-to-end Networking Naoki Oguchi Toru Katagiri Kazuki Matsui Xi Wang Motoyoshi Sekiya The emergence of 5th generation mobile networks (5G) and Internet of

More information

Lecture 9: MIMD Architecture

Lecture 9: MIMD Architecture Lecture 9: MIMD Architecture Introduction and classification Symmetric multiprocessors NUMA architecture Cluster machines Zebo Peng, IDA, LiTH 1 Introduction MIMD: a set of general purpose processors is

More information

Cisco Wide Area Application Services and Cisco Nexus Family Switches: Enable the Intelligent Data Center

Cisco Wide Area Application Services and Cisco Nexus Family Switches: Enable the Intelligent Data Center Cisco Wide Area Application Services and Cisco Nexus Family Switches: Enable the Intelligent Data Center What You Will Learn IT departments are facing increasing pressure to accommodate numerous changing

More information

02 - Distributed Systems

02 - Distributed Systems 02 - Distributed Systems Definition Coulouris 1 (Dis)advantages Coulouris 2 Challenges Saltzer_84.pdf Models Physical Architectural Fundamental 2/58 Definition Distributed Systems Distributed System is

More information

Dynamically Provisioning Distributed Systems to Meet Target Levels of Performance, Availability, and Data Quality

Dynamically Provisioning Distributed Systems to Meet Target Levels of Performance, Availability, and Data Quality Dynamically Provisioning Distributed Systems to Meet Target Levels of Performance, Availability, and Data Quality Amin Vahdat Department of Computer Science Duke University 1 Introduction Increasingly,

More information

Next Paradigm for Decentralized Apps. Table of Contents 1. Introduction 1. Color Spectrum Overview 3. Two-tier Architecture of Color Spectrum 4

Next Paradigm for Decentralized Apps. Table of Contents 1. Introduction 1. Color Spectrum Overview 3. Two-tier Architecture of Color Spectrum 4 Color Spectrum: Next Paradigm for Decentralized Apps Table of Contents Table of Contents 1 Introduction 1 Color Spectrum Overview 3 Two-tier Architecture of Color Spectrum 4 Clouds in Color Spectrum 4

More information

Grid Computing Middleware. Definitions & functions Middleware components Globus glite

Grid Computing Middleware. Definitions & functions Middleware components Globus glite Seminar Review 1 Topics Grid Computing Middleware Grid Resource Management Grid Computing Security Applications of SOA and Web Services Semantic Grid Grid & E-Science Grid Economics Cloud Computing 2 Grid

More information

Distributed Scheduling for the Sombrero Single Address Space Distributed Operating System

Distributed Scheduling for the Sombrero Single Address Space Distributed Operating System Distributed Scheduling for the Sombrero Single Address Space Distributed Operating System Donald S. Miller Department of Computer Science and Engineering Arizona State University Tempe, AZ, USA Alan C.

More information

02 - Distributed Systems

02 - Distributed Systems 02 - Distributed Systems Definition Coulouris 1 (Dis)advantages Coulouris 2 Challenges Saltzer_84.pdf Models Physical Architectural Fundamental 2/60 Definition Distributed Systems Distributed System is

More information

Report. Middleware Proxy: A Request-Driven Messaging Broker For High Volume Data Distribution

Report. Middleware Proxy: A Request-Driven Messaging Broker For High Volume Data Distribution CERN-ACC-2013-0237 Wojciech.Sliwinski@cern.ch Report Middleware Proxy: A Request-Driven Messaging Broker For High Volume Data Distribution W. Sliwinski, I. Yastrebov, A. Dworak CERN, Geneva, Switzerland

More information

A Comparison of Conventional Distributed Computing Environments and Computational Grids

A Comparison of Conventional Distributed Computing Environments and Computational Grids A Comparison of Conventional Distributed Computing Environments and Computational Grids Zsolt Németh 1, Vaidy Sunderam 2 1 MTA SZTAKI, Computer and Automation Research Institute, Hungarian Academy of Sciences,

More information

Assignment 5. Georgia Koloniari

Assignment 5. Georgia Koloniari Assignment 5 Georgia Koloniari 2. "Peer-to-Peer Computing" 1. What is the definition of a p2p system given by the authors in sec 1? Compare it with at least one of the definitions surveyed in the last

More information

Design patterns for data-driven research acceleration

Design patterns for data-driven research acceleration Design patterns for data-driven research acceleration Rachana Ananthakrishnan, Kyle Chard, and Ian Foster The University of Chicago and Argonne National Laboratory Contact: rachana@globus.org Introduction

More information

Adaptive Internet Data Centers

Adaptive Internet Data Centers Abstract Adaptive Internet Data Centers Jerome Rolia, Sharad Singhal, Richard Friedrich Hewlett Packard Labs, Palo Alto, CA, USA {jar sharad richf}@hpl.hp.com Trends in Internet infrastructure indicate

More information

CHAPTER 1: OPERATING SYSTEM FUNDAMENTALS

CHAPTER 1: OPERATING SYSTEM FUNDAMENTALS CHAPTER 1: OPERATING SYSTEM FUNDAMENTALS What is an operating system? A collection of software modules to assist programmers in enhancing system efficiency, flexibility, and robustness An Extended Machine

More information

A Federated Grid Environment with Replication Services

A Federated Grid Environment with Replication Services A Federated Grid Environment with Replication Services Vivek Khurana, Max Berger & Michael Sobolewski SORCER Research Group, Texas Tech University Grids can be classified as computational grids, access

More information

What are some common categories of system calls? What are common ways of structuring an OS? What are the principles behind OS design and

What are some common categories of system calls? What are common ways of structuring an OS? What are the principles behind OS design and What are the services provided by an OS? What are system calls? What are some common categories of system calls? What are the principles behind OS design and implementation? What are common ways of structuring

More information

Concepts of Distributed Systems 2006/2007

Concepts of Distributed Systems 2006/2007 Concepts of Distributed Systems 2006/2007 Introduction & overview Johan Lukkien 1 Introduction & overview Communication Distributed OS & Processes Synchronization Security Consistency & replication Programme

More information

Chapter 1: Introduction Operating Systems MSc. Ivan A. Escobar

Chapter 1: Introduction Operating Systems MSc. Ivan A. Escobar Chapter 1: Introduction Operating Systems MSc. Ivan A. Escobar What is an Operating System? A program that acts as an intermediary between a user of a computer and the computer hardware. Operating system

More information

Introduction to Cluster Computing

Introduction to Cluster Computing Introduction to Cluster Computing Prabhaker Mateti Wright State University Dayton, Ohio, USA Overview High performance computing High throughput computing NOW, HPC, and HTC Parallel algorithms Software

More information

Introduction to GT3. Introduction to GT3. What is a Grid? A Story of Evolution. The Globus Project

Introduction to GT3. Introduction to GT3. What is a Grid? A Story of Evolution. The Globus Project Introduction to GT3 The Globus Project Argonne National Laboratory USC Information Sciences Institute Copyright (C) 2003 University of Chicago and The University of Southern California. All Rights Reserved.

More information

A RESOURCE AWARE SOFTWARE ARCHITECTURE FEATURING DEVICE SYNCHRONIZATION AND FAULT TOLERANCE

A RESOURCE AWARE SOFTWARE ARCHITECTURE FEATURING DEVICE SYNCHRONIZATION AND FAULT TOLERANCE A RESOURCE AWARE SOFTWARE ARCHITECTURE FEATURING DEVICE SYNCHRONIZATION AND FAULT TOLERANCE Chris Mattmann University of Southern California University Park Campus, Los Angeles, CA 90007 mattmann@usc.edu

More information

Exploiting peer group concept for adaptive and highly available services

Exploiting peer group concept for adaptive and highly available services Computing in High Energy and Nuclear Physics, 24-28 March 2003 La Jolla California 1 Exploiting peer group concept for adaptive and highly available services Muhammad Asif Jan Centre for European Nuclear

More information

DHANALAKSHMI COLLEGE OF ENGINEERING, CHENNAI

DHANALAKSHMI COLLEGE OF ENGINEERING, CHENNAI DHANALAKSHMI COLLEGE OF ENGINEERING, CHENNAI Department of Computer Science and Engineering IT6801 - SERVICE ORIENTED ARCHITECTURE Anna University 2 & 16 Mark Questions & Answers Year / Semester: IV /

More information

CHAPTER-1: INTRODUCTION TO OPERATING SYSTEM:

CHAPTER-1: INTRODUCTION TO OPERATING SYSTEM: CHAPTER-1: INTRODUCTION TO OPERATING SYSTEM: TOPICS TO BE COVERED 1.1 Need of Operating System 1.2 Evolution of os 1.3 operating system i. Batch ii. iii. iv. Multiprogramming Time sharing Real time v.

More information

A Capabilities Based Communication Model for High-Performance Distributed Applications: The Open HPC++ Approach

A Capabilities Based Communication Model for High-Performance Distributed Applications: The Open HPC++ Approach A Capabilities Based Communication Model for High-Performance Distributed Applications: The Open HPC++ Approach Shridhar Diwan, Dennis Gannon Department of Computer Science Indiana University Bloomington,

More information

Chapter 14 Operating Systems

Chapter 14 Operating Systems Chapter 14 Systems Ref Page Slide 1/54 Learning Objectives In this chapter you will learn about: Definition and need for operating Main functions of an operating Commonly used mechanisms for: Process management

More information

Request for Comments: 1787 T.J. Watson Research Center, IBM Corp. Category: Informational April 1995

Request for Comments: 1787 T.J. Watson Research Center, IBM Corp. Category: Informational April 1995 Network Working Group Y. Rekhter Request for Comments: 1787 T.J. Watson Research Center, IBM Corp. Category: Informational April 1995 Status of this Memo Routing in a Multi-provider Internet This memo

More information

Service Execution Platform WebOTX To Support Cloud Computing

Service Execution Platform WebOTX To Support Cloud Computing Service Execution Platform WebOTX To Support Cloud Computing KATOU Masayuki Abstract The trend toward reductions in IT investments due to the current economic climate has tended to focus our attention

More information

DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN. Chapter 1. Introduction

DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN. Chapter 1. Introduction DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN Chapter 1 Introduction Definition of a Distributed System (1) A distributed system is: A collection of

More information

Migration and Building of Data Centers in IBM SoftLayer

Migration and Building of Data Centers in IBM SoftLayer Migration and Building of Data Centers in IBM SoftLayer Advantages of IBM SoftLayer and RackWare Together IBM SoftLayer offers customers the advantage of migrating and building complex environments into

More information

OPERATING SYSTEMS. Prescribed Text Book Operating System Principles, Seventh Edition By Abraham Silberschatz, Peter Baer Galvin and Greg Gagne

OPERATING SYSTEMS. Prescribed Text Book Operating System Principles, Seventh Edition By Abraham Silberschatz, Peter Baer Galvin and Greg Gagne OPERATING SYSTEMS Prescribed Text Book Operating System Principles, Seventh Edition By Abraham Silberschatz, Peter Baer Galvin and Greg Gagne OVERVIEW An operating system is a program that manages the

More information

EarthCube and Cyberinfrastructure for the Earth Sciences: Lessons and Perspective from OpenTopography

EarthCube and Cyberinfrastructure for the Earth Sciences: Lessons and Perspective from OpenTopography EarthCube and Cyberinfrastructure for the Earth Sciences: Lessons and Perspective from OpenTopography Christopher Crosby, San Diego Supercomputer Center J Ramon Arrowsmith, Arizona State University Chaitan

More information

Distributed OS and Algorithms

Distributed OS and Algorithms Distributed OS and Algorithms Fundamental concepts OS definition in general: OS is a collection of software modules to an extended machine for the users viewpoint, and it is a resource manager from the

More information

Data Model Considerations for Radar Systems

Data Model Considerations for Radar Systems WHITEPAPER Data Model Considerations for Radar Systems Executive Summary The market demands that today s radar systems be designed to keep up with a rapidly changing threat environment, adapt to new technologies,

More information

BRANCH:IT FINAL YEAR SEVENTH SEM SUBJECT: MOBILE COMPUTING UNIT-IV: MOBILE DATA MANAGEMENT

BRANCH:IT FINAL YEAR SEVENTH SEM SUBJECT: MOBILE COMPUTING UNIT-IV: MOBILE DATA MANAGEMENT - 1 Mobile Data Management: Mobile Transactions - Reporting and Co Transactions Kangaroo Transaction Model - Clustering Model Isolation only transaction 2 Tier Transaction Model Semantic based nomadic

More information

IOS: A Middleware for Decentralized Distributed Computing

IOS: A Middleware for Decentralized Distributed Computing IOS: A Middleware for Decentralized Distributed Computing Boleslaw Szymanski Kaoutar El Maghraoui, Carlos Varela Department of Computer Science Rensselaer Polytechnic Institute http://www.cs.rpi.edu/wwc

More information

Operating Systems: Internals and Design Principles. Chapter 2 Operating System Overview Seventh Edition By William Stallings

Operating Systems: Internals and Design Principles. Chapter 2 Operating System Overview Seventh Edition By William Stallings Operating Systems: Internals and Design Principles Chapter 2 Operating System Overview Seventh Edition By William Stallings Operating Systems: Internals and Design Principles Operating systems are those

More information

An Introduction to GPFS

An Introduction to GPFS IBM High Performance Computing July 2006 An Introduction to GPFS gpfsintro072506.doc Page 2 Contents Overview 2 What is GPFS? 3 The file system 3 Application interfaces 4 Performance and scalability 4

More information

Cisco Application Centric Infrastructure (ACI) - Endpoint Groups (EPG) Usage and Design

Cisco Application Centric Infrastructure (ACI) - Endpoint Groups (EPG) Usage and Design White Paper Cisco Application Centric Infrastructure (ACI) - Endpoint Groups (EPG) Usage and Design Emerging IT technologies have brought about a shift from IT as a cost center to IT as a business driver.

More information

WhatÕs New in the Message-Passing Toolkit

WhatÕs New in the Message-Passing Toolkit WhatÕs New in the Message-Passing Toolkit Karl Feind, Message-passing Toolkit Engineering Team, SGI ABSTRACT: SGI message-passing software has been enhanced in the past year to support larger Origin 2

More information

Test Methodology We conducted tests by adding load and measuring the performance of the environment components:

Test Methodology We conducted tests by adding load and measuring the performance of the environment components: Scalability Considerations for Using the XenApp and XenDesktop Service Local Host Cache Feature with Citrix Cloud Connector Author: Jahed Iqbal Overview The local host cache feature in the XenApp and XenDesktop

More information

Performance Study of the MPI and MPI-CH Communication Libraries on the IBM SP

Performance Study of the MPI and MPI-CH Communication Libraries on the IBM SP Performance Study of the MPI and MPI-CH Communication Libraries on the IBM SP Ewa Deelman and Rajive Bagrodia UCLA Computer Science Department deelman@cs.ucla.edu, rajive@cs.ucla.edu http://pcl.cs.ucla.edu

More information

Distributed Systems Operation System Support

Distributed Systems Operation System Support Hajussüsteemid MTAT.08.009 Distributed Systems Operation System Support slides are adopted from: lecture: Operating System(OS) support (years 2016, 2017) book: Distributed Systems: Concepts and Design,

More information

New research on Key Technologies of unstructured data cloud storage

New research on Key Technologies of unstructured data cloud storage 2017 International Conference on Computing, Communications and Automation(I3CA 2017) New research on Key Technologies of unstructured data cloud storage Songqi Peng, Rengkui Liua, *, Futian Wang State

More information

NUSGRID a computational grid at NUS

NUSGRID a computational grid at NUS NUSGRID a computational grid at NUS Grace Foo (SVU/Academic Computing, Computer Centre) SVU is leading an initiative to set up a campus wide computational grid prototype at NUS. The initiative arose out

More information

Grid Computing Systems: A Survey and Taxonomy

Grid Computing Systems: A Survey and Taxonomy Grid Computing Systems: A Survey and Taxonomy Material for this lecture from: A Survey and Taxonomy of Resource Management Systems for Grid Computing Systems, K. Krauter, R. Buyya, M. Maheswaran, CS Technical

More information

Enterprise print management in VMware Horizon

Enterprise print management in VMware Horizon Enterprise print management in VMware Horizon Introduction: Embracing and Extending VMware Horizon Tricerat Simplify Printing enhances the capabilities of VMware Horizon environments by enabling reliable

More information

Vortex Whitepaper. Intelligent Data Sharing for the Business-Critical Internet of Things. Version 1.1 June 2014 Angelo Corsaro Ph.D.

Vortex Whitepaper. Intelligent Data Sharing for the Business-Critical Internet of Things. Version 1.1 June 2014 Angelo Corsaro Ph.D. Vortex Whitepaper Intelligent Data Sharing for the Business-Critical Internet of Things Version 1.1 June 2014 Angelo Corsaro Ph.D., CTO, PrismTech Vortex Whitepaper Version 1.1 June 2014 Table of Contents

More information

Introduction to Grid Technology

Introduction to Grid Technology Introduction to Grid Technology B.Ramamurthy 1 Arthur C Clarke s Laws (two of many) Any sufficiently advanced technology is indistinguishable from magic." "The only way of discovering the limits of the

More information

Chapter Outline. Chapter 2 Distributed Information Systems Architecture. Layers of an information system. Design strategies.

Chapter Outline. Chapter 2 Distributed Information Systems Architecture. Layers of an information system. Design strategies. Prof. Dr.-Ing. Stefan Deßloch AG Heterogene Informationssysteme Geb. 36, Raum 329 Tel. 0631/205 3275 dessloch@informatik.uni-kl.de Chapter 2 Distributed Information Systems Architecture Chapter Outline

More information

JXTA for J2ME Extending the Reach of Wireless With JXTA Technology

JXTA for J2ME Extending the Reach of Wireless With JXTA Technology JXTA for J2ME Extending the Reach of Wireless With JXTA Technology Akhil Arora Carl Haywood Kuldip Singh Pabla Sun Microsystems, Inc. 901 San Antonio Road Palo Alto, CA 94303 USA 650 960-1300 The Wireless

More information

Application-Transparent Checkpoint/Restart for MPI Programs over InfiniBand

Application-Transparent Checkpoint/Restart for MPI Programs over InfiniBand Application-Transparent Checkpoint/Restart for MPI Programs over InfiniBand Qi Gao, Weikuan Yu, Wei Huang, Dhabaleswar K. Panda Network-Based Computing Laboratory Department of Computer Science & Engineering

More information

Chapter 14 Operating Systems

Chapter 14 Operating Systems Chapter 14 Operating Systems Ref Page Slide 1/54 Learning Objectives In this chapter you will learn about: Definition and need for operating system Main functions of an operating system Commonly used mechanisms

More information