Docsity
Docsity

Prepare for your exams
Prepare for your exams

Study with the several resources on Docsity


Earn points to download
Earn points to download

Earn points by helping other students or get them with a premium plan


Guidelines and tips
Guidelines and tips

Efficient Cloud Compiler: A SaaS Solution for Open Source Languages, Study notes of Advanced Computer Architecture

The implementation of an efficient cloud compiler as a Software as a Service (SaaS) solution for open source programming languages like C, C++, PHP, Perl, Ruby, and Python. The compiler utilizes a private cloud infrastructure based on Ubuntu Enterprise Cloud (UEC) and provides significant improvements in portability, compatibility, storage space, and performance compared to traditional compilers. The document also includes experimental results demonstrating the efficiency of the cloud compiler.

Typology: Study notes

2021/2022

Uploaded on 09/12/2022

electraxx
electraxx 🇺🇸

4.3

(12)

239 documents

1 / 6

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
International Journal of Computer Applications (0975 8887)
Volume 69 No.7, May 2013
20
An Effective C, C++, PHP, Perl, Ruby, Python Compiler
using Cloud Computing
M.Pabitha
Dept of CSE
Dr.Mahalingam College of
Engineering & Technology
Pollachi, Tamilnadu, India.
T.Selvakumar
Networking Dept
Aricent Group
Chennai, Tamilnadu India
S.Punitha Devi
Dept of CSE
P. A College of Engineering &
Technology
Pollachi, Tamilnadu, India
ABSTRACT
Cloud computing is a model for enabling convenient, on-
demand network access to a shared pool of configurable
computing resources that can be rapidly provisioned and
unconfined with minimal management effort. Our work
mainly targets the learning community by providing an
efficient cloud compiler as SaaS by coalescing the two major
concepts called cloud computing and open source which helps
to diminish the troubles of portability, compatibility, power
and storage space by making use of the concept of cloud
compiler. The basic underlying architecture to deploy a cloud
compiler is the establishment of private cloud under linux
environment, which provides hosted services to a limited
number of people and the service is distributed in the
heterogeneous manner. Private cloud makes the cloud
infrastructure based on Ubuntu Enterprise Cloud (UEC)
scalable as per the requirement. And our cloud compiler
allows a programmer to pick up the fastest or the most
convenient tool to compile the code and remove the errors.
The validity of our approach is then verified with the
experimental results. Also we have made a performance
analysis and the experimental results shows that the
performance of cloud compiler is more efficient compared to
all other normal compiler. Hence our proposed cloud compiler
is considered to be the best performers among the various
compilers.
General Terms - Cloud computing, Cloud compiler,
Open source
Keywords - Private cloud, SaaS, Cloud setup, Cloud
controller, Ubuntu Enterprise Cloud (UEC)
1. INTRODUCTION
Cloud computing portends a major change in how we store
information and run applications. Instead of running programs
and data on an individual desktop computer, everything is
hosted in the cloud, a nebulous assemblage of computers and
servers accesses via the internet. Cloud computing lets to
access all your applications and documents from anywhere in
the world, freeing you from the confines of the desktop and
making it easier for group members in different locations to
collaborate. The emergence of cloud computing is the
computing equivalent of the electricity revolution of a century
ago. Before the advent of electrical utilities, every farm and
business produced its own electricity from freestanding
generators. After the electrical grid was created, farms and
businesses shut down their generators and bought electricity
from the utilities, at a much lower price and with much
reliability than they could produce on their own. Look for the
same type of revolution to occur as cloud computing takes
hold. The desktop-centric notion of computing that we hold
today is bound to fall by the wayside as we come to expect the
universal access, 24/7 reliability, and ubiquitous collaboration
promised by cloud computing. Cloud computing isn’t network
computing. With network computing applications/documents
are hosted on a single company’s server and accessed o ver the
company’s network. Cloud computing is a lot bigger than
that. It encompasses multiple companies, multiple servers, and
multiple networks. Plus unlike network computing, cloud
services and storage are accessible from anywhere in the
world over an internet connection. Cloud computing builds on
established trends for driving the cost out of the delivery of
services while increasing the speed and agility with which
services are deployed. It shortens the time from sketching out
application architecture to actual deployment. The concept of
cloud services development encompasses several different
types of development like Software as a Service (SaaS),
Platform as a Service (PaaS), on-demand computing. Our
cloud compiler focuses on providing as SaaS. With SaaS, a
single application is delivered to thousands of users from the
vendor’s servers. Customers don’t pay for owning the
software; rather they pay for using it. The recent upswing in
technology and increasing concern related to portability,
compatibility, storage space, performance caused a boost in
providing an efficient cloud compiler for languages like C,
C++, PHP, Perl, Ruby, Python based on cloud computing.
Cloud Compiler is a family of cloud compiler licensed
programs for the open source operating environments. A
cloud compiler is a program that functions equivalently to an
actual compiler but does not require that the actual compiler
be installed or licensed on the machine on which it runs. The
cloud compiler utilizes web service to transmit the user’s
source code to another cloud which the actual compiler is
installed, compile it there and generate the output in the cloud
and send the output to the user via the web services if the
source program is correctly given otherwise through errors.
Most of the options and features of an actual compiler are
supported. The Cloud Compilers are not difficult to install.
The primary tasks are the typing the programs in the client
machine and send to the cloud on which compiles will be
submitted [2]. Some interesting results indicating the
performance of the cloud compiler are also presented. The
remainder of this paper is organized as follows. In Sect. 2
compare the cloud computing with other related technologies.
In Sect. 3, we describe the system framework of the open
source cloud compiler and present its system design
principles. The cloud compiler deployment is detailed in Sect.
4. Section 5 summarizes the experimental results. Finally, in
Sect 6, we conclude with our best findings and future plans.
pf3
pf4
pf5

Partial preview of the text

Download Efficient Cloud Compiler: A SaaS Solution for Open Source Languages and more Study notes Advanced Computer Architecture in PDF only on Docsity!

Volume 69– No.7, May 2013

An Effective C, C++, PHP, Perl, Ruby, Python Compiler

using Cloud Computing

M.Pabitha

Dept of CSE

Dr.Mahalingam College of

Engineering & Technology

Pollachi, Tamilnadu, India.

T.Selvakumar

Networking Dept

Aricent Group

Chennai, Tamilnadu India

S.Punitha Devi

Dept of CSE

P. A College of Engineering &

Technology

Pollachi, Tamilnadu, India

ABSTRACT

Cloud computing is a model for enabling convenient, on- demand network access to a shared pool of configurable computing resources that can be rapidly provisioned and unconfined with minimal management effort. Our work mainly targets the learning community by providing an efficient cloud compiler as SaaS by coalescing the two major concepts called cloud computing and open source which helps to diminish the troubles of portability, compatibility, power and storage space by making use of the concept of cloud compiler. The basic underlying architecture to deploy a cloud compiler is the establishment of private cloud under linux environment, which provides hosted services to a limited number of people and the service is distributed in the heterogeneous manner. Private cloud makes the cloud infrastructure based on Ubuntu Enterprise Cloud (UEC) scalable as per the requirement. And our cloud compiler allows a programmer to pick up the fastest or the most convenient tool to compile the code and remove the errors. The validity of our approach is then verified with the experimental results. Also we have made a performance analysis and the experimental results shows that the performance of cloud compiler is more efficient compared to all other normal compiler. Hence our proposed cloud compiler is considered to be the best performers among the various compilers.

General Terms - Cloud computing, Cloud compiler,

Open source

Keywords - Private cloud, SaaS, Cloud setup, Cloud

controller, Ubuntu Enterprise Cloud (UEC)

1. INTRODUCTION

Cloud computing portends a major change in how we store information and run applications. Instead of running programs and data on an individual desktop computer, everything is hosted in the cloud, a nebulous assemblage of computers and servers accesses via the internet. Cloud computing lets to access all your applications and documents from anywhere in the world, freeing you from the confines of the desktop and making it easier for group members in different locations to collaborate. The emergence of cloud computing is the computing equivalent of the electricity revolution of a century ago. Before the advent of electrical utilities, every farm and business produced its own electricity from freestanding generators. After the electrical grid was created, farms and businesses shut down their generators and bought electricity from the utilities, at a much lower price and with much reliability than they could produce on their own. Look for the same type of revolution to occur as cloud computing takes

hold. The desktop-centric notion of computing that we hold today is bound to fall by the wayside as we come to expect the universal access, 24/7 reliability, and ubiquitous collaboration promised by cloud computing. Cloud computing isn’t network computing. With network computing applications/documents are hosted on a single company’s server and accessed over the company’s network. Cloud computing is a lot bigger than that. It encompasses multiple companies, multiple servers, and multiple networks. Plus unlike network computing, cloud services and storage are accessible from anywhere in the world over an internet connection. Cloud computing builds on established trends for driving the cost out of the delivery of services while increasing the speed and agility with which services are deployed. It shortens the time from sketching out application architecture to actual deployment. The concept of cloud services development encompasses several different types of development like Software as a Service (SaaS), Platform as a Service (PaaS), on-demand computing. Our cloud compiler focuses on providing as SaaS. With SaaS, a single application is delivered to thousands of users from the vendor’s servers. Customers don’t pay for owning the software; rather they pay for using it. The recent upswing in technology and increasing concern related to portability, compatibility, storage space, performance caused a boost in providing an efficient cloud compiler for languages like C, C++, PHP, Perl, Ruby, Python based on cloud computing.

Cloud Compiler is a family of cloud compiler licensed programs for the open source operating environments. A cloud compiler is a program that functions equivalently to an actual compiler but does not require that the actual compiler be installed or licensed on the machine on which it runs. The cloud compiler utilizes web service to transmit the user’s source code to another cloud which the actual compiler is installed, compile it there and generate the output in the cloud and send the output to the user via the web services if the source program is correctly given otherwise through errors. Most of the options and features of an actual compiler are supported. The Cloud Compilers are not difficult to install. The primary tasks are the typing the programs in the client machine and send to the cloud on which compiles will be submitted [2]. Some interesting results indicating the performance of the cloud compiler are also presented. The remainder of this paper is organized as follows. In Sect. 2 compare the cloud computing with other related technologies. In Sect. 3, we describe the system framework of the open source cloud compiler and present its system design principles. The cloud compiler deployment is detailed in Sect.

  1. Section 5 summarizes the experimental results. Finally, in Sect 6, we conclude with our best findings and future plans.

Volume 69– No.7, May 2013

2. PREVIOUS WORK

Research based on cloud compiler and open source is very much limited, related to the Ubuntu Enterprise Cloud (UEC). Some of the important works are enumerated below:

Authors of [4] depicted that Private clouds can be built and managed by a company’s own IT organization or by a cloud provider. In this hosted private model, a company such as Sun can install, configure, and operate the infrastructure to support a private cloud within a company’s enterprise data centre. This model gives companies a high level of control over the use of cloud resources while bringing in the expertise needed to establish and operate the environment.

Authors in [10] portrayed Cloud computing implies a service oriented architecture, reduced information technology overhead for the end-user, great flexibility, reduced total cost of ownership and on demand services among other advantages. The National Institute of Standards and Technology (NIST) define Cloud Computing as a model for enabling easy, on-demand network access to a shared pool of configurable computing resources.

Google File System (GFS) [12] is a proprietary distributed file system developed by Google and specially designed to provide efficient, reliable access to data using large clusters of commodity servers. Files are divided into chunks of 64 megabytes, and are usually appended to or read and only extremely rarely overwritten or shrunk. Compared with traditional file systems, GFS is designed and optimized to run on data centers to provide extremely high data throughputs, low latency and survive individual server failures

Shuai Zhang et al. [7] also introduces the application field the merit of cloud computing, such as, it do not need user‘s high level equipment, so it reduces the user‘s cost. It provides secure and dependable data storage center, so user needn‘t do the awful things such storing data and killing virus, this kind of task can be done by professionals.

Borjasotomayor et al. [8] uses Open Nebula as a middleware that deploy and manage VMs, either individually or in groups that must be Co scheduled on local resources or external public clouds. It automates VM setup (preparing disk images, setting up networking, and so on) regardless of the underlying virtualization layer (Xen, KVM, or VMware are currently supported) or external cloud (EC2 or Elastic Hosts are currently supported).

Authors in [14] depicted the characteristics of cloud computing are much more complex in which can be used to distinguish cluster, grid and cloud computing systems. Cluster‘s resources are located in single administrative domain with single entity. Resources of grid system are distributed and located in administrative domain with multi entity and management policies.

Authors in [7] viewed the Cloud computing two different aspects. One is about the cloud infrastructure which is the building block for the up layer cloud application. The other is of course the cloud infrastructure. By means of several technical methods, cloud computing has achieved two important goals for the distributed computing: high scalability and high availability. SaaS provides Internet application to the customer also provides the software the off-line operation and the local data storage, lets software and service which the user all may use it anytime and anywhere to order. These studies endure from the secure and dependable data storage by reducing technology overhead for the end-user. Some of the

studies also achieved high scalability and high availability, also provides reliable access to data using large clusters. Some studies suffer from problems like usage of simplified assumptions with no investigation into the validity of those assumptions; the results of evaluation may hinge on the validity of assumptions. Thus, despite the progress that has been made in this field, there remains a clear need for large- scale empirical comparison of cloud infrastructure by utilizing the open source techniques. There is also a need for guidance on the implementation and selection of techniques.

3. SYSTEM DESIGN

The overall design process involved in the creation of the private cloud infrastructure by utilizing the open source Linux servers, open source eucalyptus packages and the design of the cloud compiler which is deployed over the private cloud infrastructure.

Fig 1 System framework of the Open source Cloud compiler

The contributions of our research work are summarized following: The Cloud Controller (CC) is the front end to the entire cloud infrastructure. CC monitors the availability of resources on various components of the cloud infrastructure, including hypervisor nodes that are used to actually provision the instances, also provides an EC2/S3 compliant web services interface to the client tools on one side and interacts with the rest of the components of the Eucalyptus infrastructure on the other side. The installation steps in the front end machine are as follows:

Step 1: Use the Ubuntu server 10.

Step 2: When boot, select Install Ubuntu Enterprise Cloud.

The Cluster Controller (CLC) is the middle end to the entire cloud infrastructure. It communicates with Cloud Controller (CC) on one side and NCs on the other side. CLC handles one or more Node Controllers and deploys/manages instances on them, and also to control the virtual network under the modes of Eucalyptus. A UEC node is a VT enabled server capable of running KVM as the hypervisor. UEC automatically installs KVM when the user chooses to install the UEC node. The VMs running on the hypervisor and

Present ation Layer

Applica tion Layer

Cloud Infrastructure (UEC)

Cloud Controller

Cluster Controller

Node Controller

Volume 69– No.7, May 2013

Fig 2: C compiler output window

Fig 3 :C++ Compiler Output window

Fig 4 : PHP Compiler Output Window

Fig 5 : Python Compiler Output Window

Fig 6 : PERL Compiler Output Window

Fig 7: Ruby compiler Output Window

Volume 69– No.7, May 2013

The portability, compatibility, storage space, performance caused a boost in providing an efficient compiler for languages like C, C++, PHP, Perl, Ruby, Python based on cloud computing. Some interesting results indicating the performance of the cloud compiler are also presented. This cloud compiler is used to execute the Programming languages like C, C++, PHP, Perl, Ruby, Python via web interface it is get the service from the gcc compiler installed in cloud. It can be able to execute all types of program similar to the gnu c compiler

5. EXPERIMENTAL RESULTS AND

DISCUSSIONS

This private cloud setup and cloud compiler experiment shows that the performance of the cloud compiler is relatively high compare with some other compilers. The result of the performance graph is explained in this chapter. The private cloud setup experiment and cloud compiler experiment have successfully implemented and the performance is calculated for the cloud compiler from various machines that shows that the cloud infrastructure uses the available resource effectively and serves the learning platform in the learning environment. As well as the performance graph shows that cloud compiler performance is superior. The execution time for various compiler by executing the Fibonacci series using recursion in the various compilers.

Table 2. Performance Calculation

Where N is the number of series generated in the Fibonacci series (numeric value). After calculating the runtime of the cloud compiler and other TURBO C compiler the graph is plotted.

Fig 8 Comparison of Performance obtained for different compilers

The following graph shows that the efficiency of the cloud compiler is high. As it can be seen from the results, the cloud compiler gives the best results in terms of execution time. This compiler overrides all the other compilers and gives the best performance.

6. CONCLUSION

The proposed system has implemented an effective cloud compiler for languages like C, C++, Perl, Python, Php and Ruby. This paper depicts a clear view of how a private cloud based on UEC under linux environment can be setup by deploying a cloud compiler, and also examines the effect of different compilers on the performance of runtime. We have demonstrated that, our proposed cloud compiler reduces the run time when compared with all other compilers. And also measured to the current scenarios, where each machine needs to install compilers separately. But our cloud compiler will eliminate the need to install the compilers separately, thus it helps for a programmer to pick up the fastest or the most convenient tool to compile the code and remove the errors at the centralized server. To the best of our knowledge, it is the first work that applies cloud compiler to enhance the performance and we compare the performance of our cloud compiler with the various compilers. Our performance graph shows that our cloud compiler gives better performance and based on some comparative results that we also obtained, we concluded our proposed cloud compiler is considered to be the best performers among the various compilers.

7. REFERENCES

[1] Abramson D., Buyya R., and Giddy J. “A computational economy for grid computing and its implementation” in the Nimrod-G resource broker.

[2] F. Bellard. QEMU, a Fast and Portable Dynamic Translator. Proceedings of the USENIX Annual Technical Conference, FREENIX Track.

[3] Bo Dong, Qinghua Zheng, Jie Yang, Haifei Li, Mu Qiao,MOE KLINNS Lab and SKLMS Lab, Xi'an Jiaotong University, 710049, China, An E-learning Ecosystem Based on Cloud Computing Infrastructure 2009 Ninth IEEE International Conference on Advanced Learning Technologies.

[4] B ECHTOLSHEIM , Cloud Computing and Cloud Networking talk at UC Berkeley, December 2008.

[5] Eucalyptus Beginner’s Guide – UEC, Edition (Ubuntu Server 10.04 - Lucid Lynx), v1.0, 25 May 2010.

[6] Daniel Nurmi, Rich Wolski, Chris Grzegorczyk, Graziano Obertelli, Sunil Soman, Lamia Youseff, Dmitrii Zagorodnov, The Eucalyptus Open-source Cloud- computing System.

[7] Shuai Zhang Shufen Zhang Xuebin Chen Xiuzhen Huo, Cloud Computing Research and development Trend, Future Networks, 2010. ICFN '10. Second International Conference.

[8] Borja Sotomayor, Ruben S.Montero, Ian Foster Virtual Infrastructure Management In Private And Hybrid Cloud published by the IEEE computer security, (2010) by, pp.14-22.

[9] GoGrid, http://www.gogrid.com.

[10] Aamir Nizam Ansari, Siddharth Patil,Arundhati Navada, Aditya Peshave, Venkatesh Borole , Online C/C++

N value TurboC(in sec) Cloud compiler(in sec)