Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Narain Gehani is active.

Publication


Featured researches published by Narain Gehani.


mobile cloud computing & services | 2015

Avatar: Mobile Distributed Computing in the Cloud

Cristian Borcea; Xiaoning Ding; Narain Gehani; Reza Curtmola; Mohammad A. Khan; Hillol Debnath

Avatar is a system that leverages cloud resources to support fast, scalable, reliable, and energy efficient distributed computing over mobile devices. An avatar is a per-user software entity in the cloud that runs apps on behalf of the users mobile devices. The avatars are instantiated as virtual machines in the cloud that run the same operating system with the mobile devices. In this way, avatars provide resource isolation and execute unmodified app components, which simplifies technology adoption. Avatar apps execute over distributed and synchronized (mobile device, avatar) pairs to achieve a global goal. The three main challenges that must be overcome by the Avatar system are: creating a high-level programming model and a middleware that enable effective execution of distributed applications on a combination of mobile devices and avatars, re-designing the cloud architecture and protocols to support billions of mobile users and mobile apps with very different characteristics from the current cloud workloads, and explore new approaches that balance privacy guarantees with app efficiency/usability. We have built a basic Avatar prototype on Android devices and Android x86 virtual machines. An application that searches for a lost child by analyzing the photos taken by people at a crowded public event runs on top of this prototype.


conference on information and knowledge management | 2005

Semantic querying of tree-structured data sources using partially specified tree patterns

Dimitri Theodoratos; Theodore Dalamagas; Antonis Koufopoulos; Narain Gehani

Nowadays, huge volumes of data are organized or exported in a tree-structured form. Querying capabilities are provided through queries that are based on branching path expression. Even for a single knowledge domain structural differences raise difficulties for querying data sources in a uniform way. In this paper, we present a method for semantically querying tree-structured data sources using partially specified tree patterns. Based on dimensions which are sets of semantically related nodes in tree structures, we define dimension graphs. Dimension graphs can be automatically extracted from trees and abstract their structural information. They are semantically rich constructs that support the formulation of queries and their efficient evaluation. We design a tree-pattern query language to query multiple tree-structured data sources. A central feature of this language is that the structure can be specified fully, partially, or not at all in the queries. Therefore, it can be used to query multiple trees with structural differences. %and We study the derivation of structural expressions in queries by introducing a set of inference rules for structural expressions. We define two types of query unsatisfiability and we provide necessary and sufficient conditions for checking each of them. Our approach is validated through experimental evaluation.


mobile cloud computing & services | 2016

Moitree: A Middleware for Cloud-Assisted Mobile Distributed Apps

Mohammad A. Khan; Hillol Debnath; Nafize R. Paiker; Narain Gehani; Xiaoning Ding; Reza Curtmola; Cristian Borcea

This paper presents Moitree, the middleware of our Avatar platform for mobile cloud computing. Avatar leverages cloud resources to support fast, scalable, reliable, and energy efficient distributed computing over mobile devices. Each mobile device is augmented by an avatar, a per-user always-on software entity that resides in the cloud and acts as the surrogate of the mobile device, to the extent possible, thus reducing the workload and the demand for storage, bandwidth, and energy on the mobiles. Moitree provides: (1) a novel middleware which allows unmodified apps to execute seamlessly over mobile/avatar pairs with the provision of offloading computation and communication, and (2) a new programming framework to simplify mobile collaborative app development. The programming framework has two key features: (1) user collaborations are modeled using natural group semantics - groups are created dynamically based on context and are hierarchical. (2) data communication is offloaded to the cloud through high-level communication channels. A prototype of Moitree, along with several apps, has been implemented and evaluated on Android devices and on an OpenStack-based cloud running Android x86 avatars.


ieee international conference on cloud computing technology and science | 2015

APLE: Addressing Lock Holder Preemption Problem with High Efficiency

Jianchen Shan; Xiaoning Ding; Narain Gehani

On virtualized platforms, Lock Holder Preemption (LHP) is known as a serious problem, which makes virtual CPUs (VCPUs) spin excessively while waiting for locks and seriously degrades performance. To address this problem, hardware facilities, such as Intel PLE and AMD PF, are provided on processors to preempt spinning VCPUs. Though these facilities have been predominantly used on mainstreamvirtualization systems, using them in a manner that achieves the highest performance is still a challenging issue. The core issue in dealing with the LHP problem is to determine the best time to preempt spinning VCPUs (i.e., spinning thresholds). Due to the semantic gap between different software layers, the virtual machine monitor (VMM) does not have the information about whether a VCPU is spinning normally (i.e., waiting for a lock to be released quickly) or is spinning excessively (i.e., waiting for a lock which is currently held by a preempted VCPU and cannot be released quickly). Thus, it cannot determine adequate thresholds for preempting spinning VCPUs to achieve high performance. Preempting spinning VCPUs late wastes system resources. Preempting them prematurely incurs costly context switches between VCPUs and delays lock acquisition. The paper addresses the issue of preempting spinning VCPUs with an end-to-end approach named Adaptive PLE (APLE). APLE monitors the execution efficiency of each VM by collecting the overhead incurred by wasteful spinning and wasteful VCPU switches. Then, it periodically adjusts the spinning threshold to reduce the overhead and increase the execution efficiency of the VM. The implementation of APLE incurs only minimal changes to existing systems (about 80 lines of code in KVM). The experiments with multicore workloads show that APLE can improve throughput by up to 68%.


IEEE Transactions on Parallel and Distributed Systems | 2017

APPLES: Efficiently Handling Spin-lock Synchronization on Virtualized Platforms

Jianchen Shan; Xiaoning Ding; Narain Gehani

Spin-locks are widely used in software for efficient synchronization. However, they cause serious performance degradation on virtualized platforms, such as the Lock Holder Preemption (LHP) problem and the Lock Waiter Preemption (LWP) problem, due to excessive spinning by virtual CPUs (VCPUs). The excessive spinning occurs when a VCPU waits to acquire a spin-lock. To address the performance degradation, hardware facilities, such as Intel PLE and AMD PF, are provided on processors to preempt VCPUs when they spin excessively. Although these facilities have been predominantly used on mainstream virtualization systems, using them in a manner that achieves the highest performance is still a challenging issue. There are two core problems in using these hardware facilities to reduce excessive spinning. One is to determine the best time to preempt a spinning VCPU (i.e., the selection of spinning thresholds). The other is which VCPU should be scheduled to run after the spinning VCPU is descheduled. Due to the semantic gap between different software layers, the virtual machine monitor (VMM) does not have information about the computation characteristics on VCPUs, which is needed to address the above problems. This makes the problems inherently challenging. We propose a framework named AdPtive Pause-Loop Exiting and Scheduling (APPLES) to address these problems. APPLES monitors the overhead caused by excessive spinning and preempting spinning VCPUs, and periodically adjusts spinning thresholds to reduce the overhead. APPLES also evaluates and schedules “ready” VCPUs in a VM by their potential to reduce the spinning incurred by the spin-lock synchronization. The evaluation is based on the causality and the time of VCPU preemptions. The implementation of APPLES incurs only minimal changes to existing systems (about 100 lines of code in KVM). Experiments show that APPLES can improve performance by 3


IEEE Transactions on Cloud Computing | 2017

Design and Implementation of an Overlay File System for Cloud-Assisted Mobile Apps

Nafize R. Paiker; Jianchen Shan; Cristian Borcea; Narain Gehani; Reza Curtmola; Xiaoning Ding

\sim


ieee sarnoff symposium | 2016

P2F2: Privacy-preserving face finder

Nora Almalki; Reza Curtmola; Xiaoning Ding; Narain Gehani; Cristian Borcea

49 percent (14 percent on average) for the workloads with frequent spin-lock operations.


international conference on body area networks | 2016

FaceDate: a mobile cloud computing app for people matching

Pradyumna Neog; Hillol Debnath; Jianchen Shan; Nafize R. Paiker; Narain Gehani; Reza Curtmola; Xiaoning Ding; Cristian Borcea

With cloud assistance, mobile apps can offload their resource-demanding computation tasks to the cloud. This leads to a scenario where computation tasks in the same program run concurrently on both the mobile device and the cloud. An important challenge is to ensure that the tasks are able to access and share the files on both the mobile and the cloud in a manner that is efficient, consistent, and transparent to locations. Existing distributed file systems and network file systems do not satisfy these requirements. Current systems for offloading tasks either do not support file access for offloaded tasks or do not offload tasks with file access. The paper addresses this issue by designing and implementing an application-level file system called Overlay File System (OFS). To improve efficiency, OFS maintains and buffers local copies of data sets on both the cloud and the mobile device. OFS ensures consistency and guarantees that all the reads get the latest data. It combines write-invalidate and write-update policies to effectively reduce the network traffic incurred by invalidating/updating stale data copies and to reduce the execution delay when the latest data cannot be accessed locally. To guarantee location transparency, OFS creates a unified view of the data that is location independent and is accessible as local storage. We overcome the challenges caused by the special features of mobile systems on an application-level file system, like the lack of root privilege and state loss when application is killed due to the shortage of resource and implement an easy to deploy prototype of OFS. The paper tests the OFS prototype on Android OS with a real mobile app and real mobile user traces. Extensive experiments show that OFS can effectively support consistent file accesses from computation tasks, no matter whether they are on a mobile device or offloaded to the cloud. In addition, OFS reduce both file access latency and network traffic incurred by file accesses.


mobile cloud computing & services | 2018

Collaborative Offloading for Distributed Mobile-Cloud Apps

Hillol Debnath; Giacomo Gezzi; Antonio Corradi; Narain Gehani; Xiaoning Ding; Reza Curtmola; Cristian Borcea

Fueled by the explosive growth in the number of pictures taken using smart phones, people are increasingly using cloud photo storage services. Although many innovative apps have been developed to leverage this collection of photos in the cloud, users are concerned with the privacy of their photos. We have developed Privacy-Preserving Face Finder (P2F2), a system that allows cloud-based photo matching, while preserving the privacy of the photos from the cloud provider. P2F2 stores encrypted photos in the cloud and performs photo matching based on feature vectors extracted from the photos. At its core, P2F2 relies on a novel privacy-preserving protocol for computing the Chi-square distance between the feature vectors of two photos. To achieve its goal, P2F2 extracts two privacy-preserving components from a photos feature vector and stores them at non-colluding cloud providers. Unlike previous privacy-preserving work, P2F2 is designed to work with feature descriptors that are optimized for face recognition. An authorized querier can match a target face photo with a set of encrypted face photos stored in the cloud and receive the k most similar encrypted photos, which can then be decrypted. We have implemented a prototype of P2F2 and evaluated its performance using smart phones and a small-size cloud. Our security analysis and experimental evaluation show that P2F2 successfully achieves the desired security guarantees and is feasible in practical conditions.


ieee international conference on pervasive computing and communications | 2018

Sentio: Distributed Sensor Virtualization for Mobile Apps

Hillol Debnath; Narain Gehani; Xiaoning Ding; Reza Curtmola; Cristian Borcea

Collaboration


Dive into the Narain Gehani's collaboration.

Top Co-Authors

Avatar

Xiaoning Ding

New Jersey Institute of Technology

View shared research outputs
Top Co-Authors

Avatar

Cristian Borcea

New Jersey Institute of Technology

View shared research outputs
Top Co-Authors

Avatar

Reza Curtmola

New Jersey Institute of Technology

View shared research outputs
Top Co-Authors

Avatar

Jianchen Shan

New Jersey Institute of Technology

View shared research outputs
Top Co-Authors

Avatar

Nafize R. Paiker

New Jersey Institute of Technology

View shared research outputs
Top Co-Authors

Avatar

Hillol Debnath

New Jersey Institute of Technology

View shared research outputs
Top Co-Authors

Avatar

Abeer Hakeem

New Jersey Institute of Technology

View shared research outputs
Top Co-Authors

Avatar

Mohammad A. Khan

New Jersey Institute of Technology

View shared research outputs
Top Co-Authors

Avatar

Dimitri Theodoratos

New Jersey Institute of Technology

View shared research outputs
Top Co-Authors

Avatar

Nora Almalki

New Jersey Institute of Technology

View shared research outputs
Researchain Logo
Decentralizing Knowledge