网页 综合 更新时间 2026-11-14 17:02:36

Publications – Ian McInerney

自动蜘蛛 ism.engineer 正文约 6000 字
Publications – Ian McInerney
Research software engineer, Vibration UTC at Imperial College London
By Type By Year By Topic
10.21105/joss.10570 Abstract Bibtex
Static analysis tools are used by software developers to better understand and improve their software, and they achieve this by examining their source code and/or binaries without running the software. A ‘linter’ is a type of static analysis tool that offers an opinionated critique of software beyond its syntactic validity, highlighting bug-prone coding patterns, deviations from common style guides, use of outdated features, and, generally, suggestions to improve the code in some way.
Fortitude is a linter targeting Fortran, which has hitherto lacked a standard open-source solution. It is over an order of magnitude faster than other open-source offerings, is highly customisable, has robust parsing capabilities, can automatically fix many linting issues, and can integrate either into a CI/CD pipeline or directly into a user’s editor or IDE.
10.1109/TAC.2022.3145657 arXiv: 2010.08572 Preprint Institutional Repository Abstract Bibtex
First-order optimization solvers, such as the Fast Gradient Method, are increasingly being used to solve Model Predictive Control problems in resource-constrained environments. Unfortunately, the convergence rate of these solvers is significantly affected by the conditioning of the problem data, with ill-conditioned problems requiring a large number of iterations. To reduce the number of iterations required, we present a simple method for computing a horizon-independent preconditioning matrix for the Hessian of the condensed problem. The preconditioner is based on the block Toeplitz structure of the Hessian. Horizon-independence allows one to use only the predicted system and cost matrices to compute the preconditioner, instead of the full Hessian. The proposed preconditioner has equivalent performance to an optimal preconditioner in numerical examples, producing speedups between 2x and 9x for the Fast Gradient Method. Additionally, we derive horizon-independent spectral bounds for the Hessian in terms of the transfer function of the predicted system, and show how these can be used to compute a novel horizon-independent bound on the condition number for the preconditioned Hessian.
10.1109/TC.2020.3003529 arXiv: 2006.09427 Preprint Institutional Repository 10.5281/zenodo.3564472 Abstract Bibtex
In our recent work on iterative computation in hardware, we showed that arbitrary-precision solvers can perform more favourably than their traditional arithmetic equivalents when the latter’s precisions are either under- or over-budgeted for the solution of the problem at hand. Significant proportions of these performance improvements stem from the ability to infer the existence of identical most-significant digits between iterations. This technique uses properties of algorithms operating on redundantly represented numbers to allow the generation of those digits to be skipped, increasing efficiency. It is unable, however, to guarantee that digits will stabilise, i.e. never change in any future iteration. In this article, we address this shortcoming, using interval and forward error analyses to prove that digits of high significance will become stable when computing the approximants of systems of linear equations using stationary iterative methods. We formalise the relationship between matrix conditioning and the rate of growth in most-significant digit stability, using this information to converge to our desired results more quickly. Versus our previous work, an exemplary hardware implementation of this new technique achieves an up-to 2.2x speedup in the solution of a set of variously conditioned systems using the Jacobi method.
10.1109/TEC.2021.3060319 Preprint Institutional Repository Abstract Bibtex
This paper presents an energy regulator based on a Model Predictive Control (MPC) algorithm for a Voltage Source Converter (VSC). The MPC is formulated to optimise the converter performance according to the weights defined in an objective function that trades off additional features, such as current harmonic distortion, reactive power tracking and DC bus voltage oscillation. Differently from most approaches found in the research literature, the MPC proposed here considers the coupling dynamics between the AC and DC sides of the VSC. This study is focused on the example case of a single-phase VSC, which presents a nonlinear relationship between its AC and DC sides and a sustained double-line frequency power disturbance in its DC bus. To reduce the burden of the MPC, the controller is formulated to benefit from the slow energy dynamics of the system. Thus, the cascaded structure typically used in the control of VSCs is kept and the MPC is set as an energy regulator at a reduced sampling frequency while the current control relies on a fast inner controller. The computational burden of the algorithm is further reduced by using a linear time-varying approximation. The controller is presented in detail and experimental validation showing the performance of the algorithm is provided.
10.1145/3748173.3779564 arXiv: 2512.15679 Preprint Institutional Repository Abstract Bibtex
With the push towards Exascale computing and data-driven methods, problem sizes have increased dramatically, increasing the computational requirements of the underlying algorithms. This has led to a push to offload computations to general purpose hardware accelerators such as GPUs and TPUs, and a renewed interest in designing problem-specific accelerators using FPGAs. However, the development process of these problem-specific accelerators currently suffers from the “two-language problem”: algorithms are developed in one (usually higher-level) language, but the kernels are implemented in another language at a completely different level of abstraction and requiring fundamentally different expertise. To address this problem, we propose a new MLIR-based compiler toolchain that unifies th
访问原文 返回搜索 https://ism.engineer/publications.html
本页为82搜索生成的网页快照,内容来自站内索引;演示数据的原文链接仅作示例。