Rupesh Nasre. 


I am looking for students/staff with knowledge of Parallel Programming or interest in DomainSpecific Languages. Even if you can work remotely (formally or informally, for at least 4 months), contact me with your CV. 
Our group is named Gajendra, and our research focus is compilers and parallelization. We have developed a domainspecific language for graph algorithms, know how to efficiently compute cycles in a graph with millions of vertices, and learning how to deal with evolving social networks. 


>>>Systems Research at CSE, IITM
Effective Synchronization in Parallel Programs


We present an algebraic model of synchronization for hierarchical data structures.
Each element of the algebraic structure denotes a synchronization option and represents a tradeoff between the amount of concurrency and the cost of synchronization.
The algebraic formulation forms the basis for a framework of synchronization mechanisms on a hierarchical data structure.
Effective synchronization is key to scalable parallelization.
Several applications work on an abstract hierarchy of objects, and a parallel
execution on this hierarchy necessitates synchronization across workers
operating on different parts of the hierarchy.
Existing synchronization mechanisms are either too coarse, too inefficient, or too ad hoc,
resulting in reduced or unpredictable amount of concurrency.
With our formulation, we offer a range of possibilities in choosing synchronization in a hierarchical structure.
 DomLock: A New MultiGranularity Locking Technique for Hierarchies; Saurabh Kalikar, Rupesh Nasre; TOPC 2017, PPoPP 2016 [Download Artifact]


Graph Algorithms on GPUs


The application of graphs to represent information is not new to computer science, but in recent years the scale of these graphs has grown manyfolds and have recently reached the petabyte sizes. The current CPUs are inadequate to process the petabyte scale of the graphs. Modern GPUs are highly parallel, which makes them the right choice for processing such large scale graphs. Real world graphs also evolve over time, which involve repeating analysis, over a large number of versions of the graphs.
We have developed efficient extensions to find strongly connected components, and to find shortest paths in dynamic graphs.
 LightHouse: An Automated Code Generator for Graph Algorithms on GPUs; Shashidhar G, Rupesh Nasre; LCPC 2016 [Download artifact]
 GPU Centric Extensions for Parallel Strongly Connected Components Computation; Shrinivas Devshatwar, Madhur Amilkanthwar, Rupesh Nasre; GPGPU 2016 [Download artifact]


Program Analysis through Ontologies


We propose an extensible static analysis framework which
enables formal representation of external knowledge, such as
usage knowledge of libraries and domain knowledge. Utilizing this knowledge
and the program triples, we compute the semantic information, called
static trace of the program. It is generated through pathsensitive
intraprocedural traversal of the program.
The main contribution of the framework is to store the static trace
as RDF triples called semantic triples. They are described using the
Program Analysis ontology.
In the framework, a clientanalysis
is specified by a set of conjunctive expressions that use SPARQL (W3C RDF
query language) queries. The framework is effective for the clientanalyses that
warrant sound and approximate information.
 OPAL: An extensible framework for ontologybased program analysis; Dileep Kumar Pattipati, Rupesh Nasre, P. Sreenivasa Kumar; SPE 2020 [Paper] [Download Artifact]


Publication
Books / Thesis
Python Programming Rupesh Nasre. AICTE 2022


Distributed Graph Analytics C. Unnikrishnan, Rupesh Nasre, Y.N. Srikant Springer 2020
ISBN: 9783030418861
Code from the book 

Scaling ContextSensitive Pointsto Analysis Rupesh Nasre. Lambert Academic Publishing 2016
ISBN: 9783659977183


Scaling ContextSensitive Pointsto Analysis PhD Thesis IISc Bangalore 2012 

Patents
386511  India  A method for consensus prioritization of regression testcases supported by parallel execution windows 
ZL20151 1019307.7  China  A pointer analysis method based on offline constraint graph 
8,346,732  US  Method and apparatus for providing high availability of a database 
8,086,603  US  Using the LUN type for storage allocation [updated] 
7,925,631  US  Method and system for reporting inconsistency of file system persistent point in time images and automatically thawing a file system 
7,890,504  US  Using the LUN type for storage allocation [original] 
7,694,095  US  Managing snapshots using messages 
Papers
Funding
 LargeScale GPU Graph Analytics, Shell. Kalyan T V (IIT Ropar), Rupesh Nasre
 Modern C++ for Tensorflow Computations, KLA.
 HPC Application Frameworks, NSM. Rupesh Nasre, Shivasubramanian Gopalakrishnan (IITB)
 Consistency in Distributed Systems, Google Cloud Platform credits.
 Medical Imaging, DBT. Arun Thittai (AM, PI), Ganapathy Krishnamurthi (ED), Rupesh Nasre
 Parallel Clustering, Shell
 Exploratory Research Grant, IITM
 Kris Gopalakrishnan Endowment for YFRA
 Business Rule Extraction, Hitachi. Ravindran Balaraman (PI) and Rupesh Nasre (coPI)
 University Grant, Accenture. Sutanu Chakrabarti (PI), Deepak Khemani and Rupesh Nasre
 New Faculty Seed Grant, IIT Madras
 New Faculty Initiation Grant, IIT Madras
