1,981 research outputs found

    Speculative Staging for Interpreter Optimization

    Full text link
    Interpreters have a bad reputation for having lower performance than just-in-time compilers. We present a new way of building high performance interpreters that is particularly effective for executing dynamically typed programming languages. The key idea is to combine speculative staging of optimized interpreter instructions with a novel technique of incrementally and iteratively concerting them at run-time. This paper introduces the concepts behind deriving optimized instructions from existing interpreter instructions---incrementally peeling off layers of complexity. When compiling the interpreter, these optimized derivatives will be compiled along with the original interpreter instructions. Therefore, our technique is portable by construction since it leverages the existing compiler's backend. At run-time we use instruction substitution from the interpreter's original and expensive instructions to optimized instruction derivatives to speed up execution. Our technique unites high performance with the simplicity and portability of interpreters---we report that our optimization makes the CPython interpreter up to more than four times faster, where our interpreter closes the gap between and sometimes even outperforms PyPy's just-in-time compiler.Comment: 16 pages, 4 figures, 3 tables. Uses CPython 3.2.3 and PyPy 1.

    CloudMoV: Cloud-based Mobile Social TV

    Get PDF
    published_or_final_versio

    IoT DEVICE MANAGEMENT AND CONFIGURATION

    Get PDF
    As the number of IoT devices grows, the management and configuration of IoT devices becomes crucial in resource constraint networks. It is hard to manage and configure a large amount of heterogeneous resource constraint IoT devices because people need to know how they connect to each other, what internet-enabled services are available to provide, and how people interact with things through the internet. The thing-centric approach focuses on user experience when engaging things, but the cloud- centric approach switch the focus to IoT services that can process data streams collected from things and applications that help get people joined in the IoT world. To manage IoT populations effectively in a centralized manner, not only does it mean that moving computational power closer to the edge is a way to reduce bandwidth and latency, but it also implies that it is necessary to build an architecture which can scale and manage tons of connected devices by a uniform interface. In particular, RESTful Web services can provide a uniform interface that operates resources by HTTP methods. For example, users can read and write data by a uniform interface, and a flowerpot can write data and be triggered to water plants by a uniform interface. Thus, in the scope of IoT, embedded middleware can implement uniform interface by REST model. Virtualizing physical things has emerged as a design pattern to build IoT systems. Resource less constraint devices are capable of being virtualized with enough CPU power, memory, networking, but they are more expensive and power consuming. However, resource highly constraint devices take advantage of low energy consumption and cheaper price, but they cannot be virtualized because they do not have ability to even run a single multi-threaded program. Therefore, it is very important to select the right platforms for the right roles. In our case, we use Raspberry Pi 3 as a middleware and Nordic nRF52832 as a BLE endpoint. In this thesis, a REST-based IoT management system based on Service-Oriented Architecture is built, and the performance of the system has been tested, including the response time of HTTP GET and POST requests of the centralized server in a Fog domain and a script engine onto a BLE-enabled endpoint

    Storage Solutions for Big Data Systems: A Qualitative Study and Comparison

    Full text link
    Big data systems development is full of challenges in view of the variety of application areas and domains that this technology promises to serve. Typically, fundamental design decisions involved in big data systems design include choosing appropriate storage and computing infrastructures. In this age of heterogeneous systems that integrate different technologies for optimized solution to a specific real world problem, big data system are not an exception to any such rule. As far as the storage aspect of any big data system is concerned, the primary facet in this regard is a storage infrastructure and NoSQL seems to be the right technology that fulfills its requirements. However, every big data application has variable data characteristics and thus, the corresponding data fits into a different data model. This paper presents feature and use case analysis and comparison of the four main data models namely document oriented, key value, graph and wide column. Moreover, a feature analysis of 80 NoSQL solutions has been provided, elaborating on the criteria and points that a developer must consider while making a possible choice. Typically, big data storage needs to communicate with the execution engine and other processing and visualization technologies to create a comprehensive solution. This brings forth second facet of big data storage, big data file formats, into picture. The second half of the research paper compares the advantages, shortcomings and possible use cases of available big data file formats for Hadoop, which is the foundation for most big data computing technologies. Decentralized storage and blockchain are seen as the next generation of big data storage and its challenges and future prospects have also been discussed
    • …
    corecore