XML: Extensible Markup Language
XML: Extensible Markup Language
Java JNI Bridge: A Framework for Mixed Native ISA Execution
Proceedings of the International Symposium on Code Generation and Optimization
SWIG: an easy to use tool for integrating scripting languages with C and C++
TCLTK'96 Proceedings of the 4th conference on USENIX Tcl/Tk Workshop, 1996 - Volume 4
Dryad: distributed data-parallel programs from sequential building blocks
Proceedings of the 2nd ACM SIGOPS/EuroSys European Conference on Computer Systems 2007
GWT in Action: Easy Ajax with the Google Web Toolkit
GWT in Action: Easy Ajax with the Google Web Toolkit
MapReduce: simplified data processing on large clusters
Communications of the ACM - 50th anniversary issue: 1958 - 2008
An Overview of the Granules Runtime for Cloud Computing
ESCIENCE '08 Proceedings of the 2008 Fourth IEEE International Conference on eScience
Hadoop: The Definitive Guide
The Definitive Guide to Jython: Python for the Java Platform
The Definitive Guide to Jython: Python for the Java Platform
Analyzing Electroencephalograms Using Cloud Computing Techniques
CLOUDCOM '10 Proceedings of the 2010 IEEE Second International Conference on Cloud Computing Technology and Science
CORBA: integrating diverse applications within distributed heterogeneous environments
IEEE Communications Magazine
On the performance of high dimensional data clustering and classification algorithms
Future Generation Computer Systems
Future Generation Computer Systems
Hi-index | 0.00 |
Cloud runtimes are an effective method of distributing computations, but can force developers to use the runtime's native language for all computations. We have extended the Granules cloud runtime with a bridge framework that allows computations to be written in C, C++, C#, Python, and R. We have additionally developed a diagnostics system which is capable of gathering information on system state, as well as modifying the underlying bridge framework in response to system load. Given the dynamic nature of Granules computations, which can be characterized as long-running with intermittent CPU bursts that allow a state to build up during successive rounds of execution, these bridges need to be bidirectional and the underlying communication mechanisms decoupled, robust and configurable. Granules bridges handle a number of different programming languages and support multiple methods of communication such as named pipes, unnamed pipes, and sockets. This choice of underlying communication mechanisms allows limited resources, such as sockets, to remain available for use by the runtime.