SearcharxivSearch

arXiv subjects

Shalini Jain

Publications and source records attributed to Shalini Jain.

5 recordsLinked to original sources

Hexagon-MLIR: An AI Compilation Stack For Qualcomm's Neural Processing Units (NPUs)

In this paper, we present Hexagon-MLIR,an open-source compilation stack that targets Qualcomm Hexagon Neural Processing Unit (NPU) and provides unified support for lowering Triton kernels and PyTorch models . Built using the MLIR framework, our compiler applies a structured sequence of passes to exploit NPU architectural features to accelerate AI workloads. It enables faster deployment of new Triton kernels (hand-written or subgraphs from PyTorch 2.0), for our target by providing automated compilation from kernel to binary. By ingesting Triton kernels, we generate mega-kernels that maximize data locality in the NPU's Tightly Coupled Memory (TCM), reducing the bandwidth bottlenecks inherent in library-based approaches. This initiative complements our commercial toolchains by providing developers with an open-source MLIR-based compilation stack that gives them a path to advance AI compilation capabilities through a more flexible approach. Hexagon-MLIR is a work-in-progress, and we are continuing to add many more optimizations and capabilities in this effort.

cs.PL

POSET-RL: Phase ordering for Optimizing Size and Execution Time using Reinforcement Learning

The ever increasing memory requirements of several applications has led to increased demands which might not be met by embedded devices. Constraining the usage of memory in such cases is of paramount importance. It is important that such code size improvements should not have a negative impact on the runtime. Improving the execution time while optimizing for code size is a non-trivial but a significant task. The ordering of standard optimization sequences in modern compilers is fixed, and are heuristically created by the compiler domain experts based on their expertise. However, this ordering is sub-optimal, and does not generalize well across all the cases. We present a reinforcement learning based solution to the phase ordering problem, where the ordering improves both the execution time and code size. We propose two different approaches to model the sequences: one by manual ordering, and other based on a graph called Oz Dependence Graph (ODG). Our approach uses minimal data as training set, and is integrated with LLVM. We show results on x86 and AArch64 architectures on the benchmarks from SPEC-CPU 2006, SPEC-CPU 2017 and MiBench. We observe that the proposed model based on ODG outperforms the current Oz sequence both in terms of size and execution time by 6.19% and 11.99% in SPEC 2017 benchmarks, on an average.

cs.PL

FUSED-PAGERANK: Loop-Fusion based Approximate PageRank

PageRank is a graph centrality metric that gives the importance of each node in a given graph. The PageRank algorithm provides important insights to understand the behavior of nodes through the connections they form with other nodes. It is an iterative algorithm that ranks the nodes in each iteration until all the node values converge. The PageRank algorithm is implemented using sparse storage format, which results in irregular memory accesses in the code. This key feature inhibits optimizations to improve its performance, and makes optimizing the PageRank algorithm a non-trivial problem. In this work we improve the performance of PageRank algorithm by reducing its irregular memory accesses. In this paper, we propose FUSED-PAGERANK algorithm, a compiler optimization oriented approximate technique that reduces the number of irregular memory accesses in the PageRank algorithm, improving its locality while making the convergence of the algorithm faster with better accuracy in results. In particular, we propose an approximate PageRank algorithm using Loop-Fusion. We believe that ours is the first work that formally applies traditional compiler optimization techniques for irregular memory access in the PageRank algorithm. We have verified our method by performing experiments on a variety of datasets: LAW graphs, SNAP datasets and synthesized datasets. On these benchmarks, we have achieved a maximum speedup (vs. -O3 optimization) of 2.05X, 2.23X, 1.74X with sequential version, and ~4.4X, ~2.61X, ~4.22X with parallel version of FUSED-PAGERANK algorithm in comparison with Edge-centric version of PageRank algorithm.

cs.DS

IR2Vec: LLVM IR based Scalable Program Embeddings

We propose IR2Vec, a Concise and Scalable encoding infrastructure to represent programs as a distributed embedding in continuous space. This distributed embedding is obtained by combining representation learning methods with flow information to capture the syntax as well as the semantics of the input programs. As our infrastructure is based on the Intermediate Representation (IR) of the source code, obtained embeddings are both language and machine independent. The entities of the IR are modeled as relationships, and their representations are learned to form a seed embedding vocabulary. Using this infrastructure, we propose two incremental encodings:Symbolic and Flow-Aware. Symbolic encodings are obtained from the seed embedding vocabulary, and Flow-Aware encodings are obtained by augmenting the Symbolic encodings with the flow information. We show the effectiveness of our methodology on two optimization tasks (Heterogeneous device mapping and Thread coarsening). Our way of representing the programs enables us to use non-sequential models resulting in orders of magnitude of faster training time. Both the encodings generated by IR2Vec outperform the existing methods in both the tasks, even while using simple machine learning models. In particular, our results improve or match the state-of-the-art speedup in 11/14 benchmark-suites in the device mapping task across two platforms and 53/68 benchmarks in the Thread coarsening task across four different platforms. When compared to the other methods, our embeddings are more scalable, is non-data-hungry, and has betterOut-Of-Vocabulary (OOV) characteristics.

cs.PL

Thermophoretic MHD Flow and Non-linear Radiative Heat Transfer with Convective Boundary Conditions over a Non-linearly Stretching Sheet

The effects of MHD boundary layer flow of non-linear thermal radiation with convective heat transfer and non-uniform heat source/sink in presence of thermophortic velocity and chemical reaction investigated in this study. Suitable similarity transformation are used to solve the partial ordinary differential equation of considered governing flow. Runge-Kutta fourth fifth order Fehlberg method with shooting techniques are used to solved non-dimensional governing equations. The variation of different parameters such as thermophoretic parameter, chemical reaction parameter, non- uniform heat source/sink parameters are studied on velocity, temperature and concentration profiles, and are described by suitable graphs and tables. The obtained results are in very well agreement with previous results.

physics.flu-dyn