Biographical Sketch  (pdf)

Maksims Abaļenkovs is a Senior High Performance Software Engineer at the Hartree Centre in STFC Daresbury. He is a recent visiting academic and post-doctoral research associate in the Department of Mathematics at the University of Manchester.

His main areas of expertise lie within the computational domain. A student of Fumie Costen and Jean-Pierre Bérenger, during his PhD project Maksims specialised in the Finite-Difference Time-Domain method, in particular on the extension of Huygens Sugbridding to Frequency Dependence. In a subsequent post-doctoral project with Professor Francesco Andriulli at the IMT Atlantique in Brest, France he prototyped the Fast Multipole Method for Electroencephalography applications. He has just completed a post-doctoral project under the supervision of Professor Jack Dongarra, in which Maksims was a member of a talented and dynamic team splitting his time between three UK and European projects (SERT, INTERTWinE and NLAFET). His main contributions included the mixed precision matrix factorisations for the PLASMA numerical library, LU factorisation with StarPU and a generic matrix casting approach for stencil-based methods.

During his doctoral and post-doctoral projects, Maksims has lectured and led practical tutorials for a number of mathematics and engineering subjects. He has successfully published his research outcomes in world-leading academic journals (such as IEEE and ACM) and presented at renowned international conferences (IEEE AP-S International Symposium and EuCAP). Dr Abaļenkovs successfully (co-)supervised individual students and student groups at all levels from foundation to post-doc. Maksims is an active member of the IEEE, IET and SIAM and reviews articles in his research areas on a regular basis.

Curriculum Vitae  (pdf)

Professional Credo

To grow into an outstanding developer and inspiring educator in the areas of parallel programming and applied mathematics by undertaking challenging projects and learning on the way.

Research Interests

Numerical Linear Algebra esp. parallelisation of common matrix factorisations and functions via task-based paradigms, Computational Electromagnetics incl. Finite-Difference Time-Domain methods, Huygens Subgridding, Absorbing Boundary Conditions, dispersive materials modelling, Boundary Element Methods, Finite Element Methods, Fast Multipole Methods, stencil-based methods, Bioelectromagnetics, computational methods in medicine, optimisation with Genetic Algorithms, General-Purpose computation on Graphics Processing Units with CUDA and OpenCL, parallelisation with MPI, OpenMP, StarPU, scientific computing and parallel programming languages.

Skills Profile

  • Independent thinker and self-starter abilities reinforced by post-doctoral and doctoral experience.
  • Strong communication and organisational talents resulting in leadership roles in IEEE and at the University of Manchester.
  • Excellent teaching skills developed through lecturing in the BSc and MSc modules and theses co-supervision.
  • Extensive knowledge on Computational Electromagnetics obtained during post-doctoral, doctoral and industrial projects.

Research & Development Work Experience

05/2015–present Research Associate, The University of Manchester, Manchester, UK

  • Parallelised iterative refinement algorithms for linear systems solution in mixed precision. Routines for general and positive definite matrices were parallelised using OpenMP task depend constructs. Now they are available as part of PLASMA 17.01 distribution.
  • Developed Rightsizer—an open-source software package to detect an optimal tile size and a number of OpenMP threads for parallel common matrix factorisations. The code features 1D and 2D optimisation techniques and is capable of performing simultaneous optimisation for both parameters.
  • Expanded 2DRMP package to apply PLASMA routines for matrix multiplication, eigenvalue decomposition, LU-factorisation and linear systems solution.
  • Derived a generic algorithm for calculation of finite-difference expressions of any order \( n \). Developed X-Stencil—an open-source package to validate theoretical results in an FDTD-based method up to the 10th order.
  • Developed a matrix casting approach to re-formulate the update equations of stencil-based methods in {1, 2, 3}D and speed-up the computation.

03/2013–05/2015 Research Engineer, Télécom Bretagne, Brest, France

  • Developing the prototype Fast Multipole Method with Fast Fourier Transform (FMM-FFT) code based on the plane wave expansion of the scalar Green’s function with spherical Bessel and Hankel functions and Legendre polynomial. Final research goal is to apply the resulting method to speed-up solution of the forward problem in Electroencephalography (EEG) applications.
  • Investigated the FMM-FFT, including the study and prototyping of efficient convolution \( {\mathcal{O}}(N\log{(N)}) \) of circulant and block Toeplitz tensors in GNU Octave and C++ with FFTW library.
  • Provided computational expertise to a team developing an automotive radar simulation platform in collaboration with Renault. Major contributions to the project included development and application of beamforming and Multiple Signal Classification (MUSIC) algorithms for Angle-of-Arrival (AoA) estimation in realistic on-the-road scenarios, Graphical User Interface (GUI) functionality for the creation of Sigma–Delta, and Uniform Linear Array (ULA) and Uniform Planar Array (UPA) antennae, introduction and reinforcement of Object-Oriented Programming concepts.
  • Participated in the preliminary work on the development of an Integral Equation (IE) method combining single- and double-layer potentials based on Nédélec’s representation theorem and integral operators \( \mathcal{D}, \mathcal{S}, \mathcal{N} \) and \( \mathcal{D^*} \). The new method is aimed for the solution of forward problem in EEG applications.

03/2012–08/2012 Development Engineer, EMSS, Böblingen, Germany

  • Analysed hybrid Computational Electromagnetics methods for a possibility of efficient and convenient implementation in FEKO.
  • Tested performance and precision of numerical algorithms on different CPU and GPU architectures.
  • Ported various parts of the code from Fortran 77 to Fortran 2008.
  • Tested newly implemented software features and resolved bugs.
  • Developed an automatic code documentation by means of Doxygen.

Teaching Work Experience

09/2015–present Teaching Assistant, The University of Manchester
01/2009–06/2010

  • Assisted in practical exercises for various mathematics and engineering modules: Calculus and Algebra, Computational Electromagnetics, Data Networking and Java Programming.
  • Thoroughness: Edited and re-wrote parts of the laboratory notes on Computational Electromagnetics, which resulted in shorter and clearer exercise explanations.
  • Accuracy: Marked three assignment papers for 30 students. Working quickly and accurately finished all marking within difficult time constraints.
  • Support: Developed an informative web-page to assist students in their laboratory work, stimulating faster induction into the topic and saving lecture time.
  • Motivation: Highlighted several real-world applications of numerical methods to the students, raising interest and general understanding of the material.

08/2012–09/2013 \(\LaTeX\) Course Instructor, The University of Manchester

  • Developed, organised and delivered five pairs of lectures and exercises for a practical one day workshop “Introduction to \(\LaTeX\)”.

03/2013–05/2015 Teaching Assistant, Télécom Bretagne, Brest, France

  • Efficiently delivered lectures in an undergraduate course “Scientific Computing with MATLAB” in classes of 50 students and supervised practical exercise work in smaller groups of 20 people.

Education

09/2007–12/2011 PhD in Electrical and Electronic Engineering, The University of Manchester, UK

Thesis title: Huygens Subgridding for the Frequency-Dependent–Finite-Difference Time-Domain Method (pdf)

  • Extended classical Finite-Difference Time-Domain (FDTD) method to Frequency Dependency (FD).
  • Parallelised the FD–FDTD method with the Message Passing Interface (MPI).
  • Optimised the FD–FDTD algorithm with the Huygens Subgridding (HSG) technique.
  • New solver allowed efficient simulation of electromagnetic wave propagation in multilayered media, e.g. human body.
  • Proposed the solver application to optimise defibrillators by simulating defibrillation current in a human torso.

09/2006–09/2007 MSc in Advanced Computer Science, The University of Manchester, UK

Thesis title: Large-Scale Finite-Difference Time-Domain Data Processing Using High Performance Systems (pdf)

  • During an MSc project adapted the Hierarchical Data Format 5 (HDF5) for an in-house numerical simulation package. The HDF5 enabled logical data storage and efficient data processing.
  • Completed a module on High Performance Computing (HPC) and parallelised the Successive Over Relaxation (SOR) method with the Red–Black algorithm.

10/2004–09/2006 BSc in Computer Science with minor in Physics, Heinrich-Heine-Universität Düsseldorf, Germany

Thesis title: Extraction and Storage of Web Structures (pdf)

  • For a BSc project designed a database and a web-crawler, a program which collected hyperlinks from websites on the Internet. This work laid the foundation for a study of connectivity strength between different websites.
  • Attended two language courses and learnt German in eight months, successfully passing entry examinations for the university.

09/1989–05/2000 Riga Secondary School No. 72, Latvia

  • Five end of school examinations: Mathematics, Computer Science, Physics, Geography and Latvian.

Scientific Contribution

Positions of Responsibility

06/2015–present ResLife Advisor, University halls, Manchester
09/2007–12/2011

  • Supervision: Providing advice and assistance to \(\approx\)70 undergraduate students, encouraging interpersonal sensitivity and commitment to study.
  • Teamwork: Working in a team of \(\approx\)20 advisors and three officers to support undergraduate students during their first years at the University.

08/2013–present Scientific Journal Reviewer

03/2013–05/2015 President, IEEE Student Branch, Télécom Bretagne

  • Leadership: Organising and leading monthly meetings of the IEEE student branch planning activities and setting priorities for the coming month. Presenting the IEEE to new students stimulating an increased interest and growth of the branch.
  • Coordination: Coordinating the committee and communicating with senior university staff that results in quick preparation and smooth running of the events such as “Smart Cities” and “IEEE Day”.
  • Supervision: Initiated and led weekly training sessions for the IEEE Xtreme 24-hour programming competition. Two teams of three people participated in the final competition in 2013. One team took the 51st place out of 1500 teams in the world.
  • Organisation: Created and co-organised events of the IEEE Day: scientific presentations, T-shirt printing, quiz and photo contest.

09/2008–12/2011 Student Representative, The University of Manchester

  • Organisation: Organised monthly seminars in the department and persuaded young researchers to present their work.
  • Administration: Created a mailing list for all PhD students and Research Associates in the department stimulating better and faster communication amongst colleagues.

10/2008–12/2011 International Society Trip Leader, The University of Manchester

  • Time management: Supervised large groups of international students (50–70 people), planned and communicated visit times to ensure timely arrival and departure.

10/2008–10/2009 Chess Club Co-Founder / Secretary, The University of Manchester

  • Communication: Efficiently negotiated with the Manchester Chess Federation and secured services of an experienced coach, which tripled the number of weekly meeting attendance.

Computer Skills

Programming: Fortran, C, Java, C++, Python, Julia, OpenMP, StarPU, MPI, GPGPU (incl. CUDA, OpenCL), MATLAB, GNU Octave, SQL, open-source and command line enthusiast.

Computational Electromagnetics: FEKO, COMSOL Multiphysics

Mathematics: MAPLE, Mathematica

Meshers: GiD, MeshLab

Operating Systems: Linux, Unix, macOS, Microsoft Windows

Collaboration: Git, Mercurial, Subversion, AccuRev, JIRA, Confluence, LISTSERV

Professional Affiliations

Languages

  • Speak four European languages fluently: English, German, Russian and Latvian.
  • Learning French at level B2.

Interests

In my free time I like to do Taiji, learn to play guitar and build a single-speed bicycle.