umu.sePublications

References$(function(){PrimeFaces.cw("TieredMenu","widget_formSmash_upper_j_idt147",{id:"formSmash:upper:j_idt147",widgetVar:"widget_formSmash_upper_j_idt147",autoDisplay:true,overlay:true,my:"left top",at:"left bottom",trigger:"formSmash:upper:referencesLink",triggerEvent:"click"});}); $(function(){PrimeFaces.cw("OverlayPanel","widget_formSmash_upper_j_idt148_j_idt150",{id:"formSmash:upper:j_idt148:j_idt150",widgetVar:"widget_formSmash_upper_j_idt148_j_idt150",target:"formSmash:upper:j_idt148:permLink",showEffect:"blind",hideEffect:"fade",my:"right top",at:"right bottom",showCloseIcon:true});});

Parallel Algorithms and Library Software for the Generalized Eigenvalue Problem on Distributed Memory Computer SystemsPrimeFaces.cw("AccordionPanel","widget_formSmash_some",{id:"formSmash:some",widgetVar:"widget_formSmash_some",multiple:true}); PrimeFaces.cw("AccordionPanel","widget_formSmash_all",{id:"formSmash:all",widgetVar:"widget_formSmash_all",multiple:true});
function selectAll()
{
var panelSome = $(PrimeFaces.escapeClientId("formSmash:some"));
var panelAll = $(PrimeFaces.escapeClientId("formSmash:all"));
panelAll.toggle();
toggleList(panelSome.get(0).childNodes, panelAll);
toggleList(panelAll.get(0).childNodes, panelAll);
}
/*Toggling the list of authorPanel nodes according to the toggling of the closeable second panel */
function toggleList(childList, panel)
{
var panelWasOpen = (panel.get(0).style.display == 'none');
// console.log('panel was open ' + panelWasOpen);
for (var c = 0; c < childList.length; c++) {
if (childList[c].classList.contains('authorPanel')) {
clickNode(panelWasOpen, childList[c]);
}
}
}
/*nodes have styleClass ui-corner-top if they are expanded and ui-corner-all if they are collapsed */
function clickNode(collapse, child)
{
if (collapse && child.classList.contains('ui-corner-top')) {
// console.log('collapse');
child.click();
}
if (!collapse && child.classList.contains('ui-corner-all')) {
// console.log('expand');
child.click();
}
}
PrimeFaces.cw("AccordionPanel","widget_formSmash_responsibleOrgs",{id:"formSmash:responsibleOrgs",widgetVar:"widget_formSmash_responsibleOrgs",multiple:true}); 2016 (English)Licentiate thesis, comprehensive summary (Other academic)Alternative title
##### Abstract [en]

##### Place, publisher, year, edition, pages

Umeå: Umeå universitet , 2016. , 18 p.
##### Series

Report / UMINF, ISSN 0348-0542 ; 16.11
##### National Category

Computer Science
##### Research subject

Computer and Information Science
##### Identifiers

URN: urn:nbn:se:umu:diva-119439ISBN: 978-91-7601-491-2OAI: oai:DiVA.org:umu-119439DiVA: diva2:920846
##### Presentation

2016-05-27, MC313, Umeå universitet, Umeå, 10:00 (English)
#####

PrimeFaces.cw("AccordionPanel","widget_formSmash_j_idt388",{id:"formSmash:j_idt388",widgetVar:"widget_formSmash_j_idt388",multiple:true});
##### Supervisors

PrimeFaces.cw("AccordionPanel","widget_formSmash_j_idt394",{id:"formSmash:j_idt394",widgetVar:"widget_formSmash_j_idt394",multiple:true});
#####

PrimeFaces.cw("AccordionPanel","widget_formSmash_j_idt400",{id:"formSmash:j_idt400",widgetVar:"widget_formSmash_j_idt400",multiple:true});
Available from: 2016-04-19 Created: 2016-04-19 Last updated: 2016-05-04Bibliographically approved
##### List of papers

Parallella algoritmer och biblioteksprogramvara för det generaliserade egenvärdesproblemet på datorsystem med distribuerat minne (Swedish)

We present and discuss algorithms and library software for solving the generalized non-symmetric eigenvalue problem (GNEP) on high performance computing (HPC) platforms with distributed memory. Such problems occur frequently in computational science and engineering, and our contributions make it possible to solve GNEPs fast and accurate in parallel using state-of-the-art HPC systems. A generalized eigenvalue problem corresponds to finding scalars y and vectors x such that Ax = yBx, where A and B are real square matrices. A nonzero x that satisfies the GNEP equation is called an eigenvector of the ordered pair (A,B), and the scalar y is the associated eigenvalue. Our contributions include parallel algorithms for transforming a matrix pair (A,B) to a generalized Schur form (S,T), where S is quasi upper triangular and T is upper triangular. The eigenvalues are revealed from the diagonals of S and T. Moreover, for a specified set of eigenvalues an associated pair of deflating subspaces can be computed, which typically is requested in various applications. In the first stage the matrix pair (A,B) is reduced to a Hessenberg-triangular form (H,T), where H is upper triangular with one nonzero subdiagonal and T is upper triangular, in a finite number of steps. The second stage reduces the matrix pair further to generalized Schur form (S,T) using an iterative QZ-based method. Outgoing from a one-stage method for the reduction from (A,B) to (H,T), a novel parallel algorithm is developed. In brief, a delayed update technique is applied to several partial steps, involving low level operations, before associated accumulated transformations are applied in a blocked fashion which together with a wave-front task scheduler makes the algorithm scale when running in a parallel setting. The potential presence of infinite eigenvalues makes a generalized eigenvalue problem ill-conditioned. Therefore the parallel algorithm for the second stage, reduction to (S,T) form, continuously scan for and robustly deflate infinite eigenvalues. This will reduce the impact so that they do not interfere with other real eigenvalues or are misinterpreted as real eigenvalues. In addition, our parallel iterative QZ-based algorithm makes use of multiple implicit shifts and an aggressive early deflation (AED) technique, which radically speeds up the convergence. The multi-shift strategy is based on independent chains of so called coupled bulges and computational windows which is an important source of making the algorithm scalable. The parallel algorithms have been implemented in state-of-the-art library software. The performance is demonstrated and evaluated using up to 1600 CPU cores for problems with matrices as large as 100000 x 100000. Our library software is described in a User Guide. The software is, optionally, tunable via a set of parameters for various thresholds and buffer sizes etc. These parameters are discussed, and recommended values are specified which should result in reasonable performance on HPC systems similar to the ones we have been running on.

1. A parallel QZ algorithm for distributed memory HPC systems$(function(){PrimeFaces.cw("OverlayPanel","overlay779112",{id:"formSmash:j_idt437:0:j_idt441",widgetVar:"overlay779112",target:"formSmash:j_idt437:0:partsLink",showEvent:"mousedown",hideEvent:"mousedown",showEffect:"blind",hideEffect:"fade",appendToBody:true});});

2. Distributed one-stage Hessenberg-triangular reduction with wavefront scheduling$(function(){PrimeFaces.cw("OverlayPanel","overlay926156",{id:"formSmash:j_idt437:1:j_idt441",widgetVar:"overlay926156",target:"formSmash:j_idt437:1:partsLink",showEvent:"mousedown",hideEvent:"mousedown",showEffect:"blind",hideEffect:"fade",appendToBody:true});});

3. PDHGEQZ user guide$(function(){PrimeFaces.cw("OverlayPanel","overlay926165",{id:"formSmash:j_idt437:2:j_idt441",widgetVar:"overlay926165",target:"formSmash:j_idt437:2:partsLink",showEvent:"mousedown",hideEvent:"mousedown",showEffect:"blind",hideEffect:"fade",appendToBody:true});});

References$(function(){PrimeFaces.cw("TieredMenu","widget_formSmash_lower_j_idt1106",{id:"formSmash:lower:j_idt1106",widgetVar:"widget_formSmash_lower_j_idt1106",autoDisplay:true,overlay:true,my:"left top",at:"left bottom",trigger:"formSmash:lower:referencesLink",triggerEvent:"click"});}); $(function(){PrimeFaces.cw("OverlayPanel","widget_formSmash_lower_j_idt1107_j_idt1109",{id:"formSmash:lower:j_idt1107:j_idt1109",widgetVar:"widget_formSmash_lower_j_idt1107_j_idt1109",target:"formSmash:lower:j_idt1107:permLink",showEffect:"blind",hideEffect:"fade",my:"right top",at:"right bottom",showCloseIcon:true});});