Efficient Task Graph Scheduling for Parallel QR Factorization in SLSQP

Fuente: arXiv
Salvato in:
Dettagli Bibliografici
Autori principali: Chatterjee, Soumyajit, Utkoor, Rahul, Eshwar, Uppu, Peri, Sathya, Nandivada, V. Krishna
Natura: Preprint
Pubblicazione: 2025
Soggetti:
Accesso online:
Tags: Aggiungi Tag
Nessun Tag, puoi essere il primo ad aggiungerne!!
_version_ 1866913889239695360
author Chatterjee, Soumyajit
Utkoor, Rahul
Eshwar, Uppu
Peri, Sathya
Nandivada, V. Krishna
author_facet Chatterjee, Soumyajit
Utkoor, Rahul
Eshwar, Uppu
Peri, Sathya
Nandivada, V. Krishna
contents Efficient task scheduling is paramount in parallel programming on multi-core architectures, where tasks are fundamental computational units. QR factorization is a critical sub-routine in Sequential Least Squares Quadratic Programming (SLSQP) for solving non-linear programming (NLP) problems. QR factorization decomposes a matrix into an orthogonal matrix Q and an upper triangular matrix R, which are essential for solving systems of linear equations arising from optimization problems. SLSQP uses an in-place version of QR factorization, which requires storing intermediate results for the next steps of the algorithm. Although DAG-based approaches for QR factorization are prevalent in the literature, they often lack control over the intermediate kernel results, providing only the final output matrices Q and R. This limitation is particularly challenging in SLSQP, where intermediate results of QR factorization are crucial for back-substitution logic at each iteration. Our work introduces novel scheduling techniques using a two-queue approach to execute the QR factorization kernel effectively. This approach, implemented in high-level C++ programming language, facilitates compiler optimizations and allows storing intermediate results required by back-substitution logic. Empirical evaluations demonstrate substantial performance gains, including a 10x improvement over the sequential QR version of the SLSQP algorithm.
format Preprint
id arxiv_https___arxiv_org_abs_2506_09463
institution arXiv
publishDate 2025
record_format arxiv
spellingShingle Efficient Task Graph Scheduling for Parallel QR Factorization in SLSQP
Chatterjee, Soumyajit
Utkoor, Rahul
Eshwar, Uppu
Peri, Sathya
Nandivada, V. Krishna
Distributed, Parallel, and Cluster Computing
Efficient task scheduling is paramount in parallel programming on multi-core architectures, where tasks are fundamental computational units. QR factorization is a critical sub-routine in Sequential Least Squares Quadratic Programming (SLSQP) for solving non-linear programming (NLP) problems. QR factorization decomposes a matrix into an orthogonal matrix Q and an upper triangular matrix R, which are essential for solving systems of linear equations arising from optimization problems. SLSQP uses an in-place version of QR factorization, which requires storing intermediate results for the next steps of the algorithm. Although DAG-based approaches for QR factorization are prevalent in the literature, they often lack control over the intermediate kernel results, providing only the final output matrices Q and R. This limitation is particularly challenging in SLSQP, where intermediate results of QR factorization are crucial for back-substitution logic at each iteration. Our work introduces novel scheduling techniques using a two-queue approach to execute the QR factorization kernel effectively. This approach, implemented in high-level C++ programming language, facilitates compiler optimizations and allows storing intermediate results required by back-substitution logic. Empirical evaluations demonstrate substantial performance gains, including a 10x improvement over the sequential QR version of the SLSQP algorithm.
title Efficient Task Graph Scheduling for Parallel QR Factorization in SLSQP
topic Distributed, Parallel, and Cluster Computing
url https://arxiv.org/abs/2506.09463