2016
DOI: 10.1137/15m1026171
|View full text |Cite
|
Sign up to set email alerts
|

MADNESS: A Multiresolution, Adaptive Numerical Environment for Scientific Simulation

Abstract: MADNESS (multiresolution adaptive numerical environment for scientific simulation) is a high-level software environment for solving integral and differential equations in many dimensions that uses adaptive and fast harmonic analysis methods with guaranteed precision based on multiresolution analysis and separated representations. Underpinning the numerical capabilities is a powerful petascale parallel programming environment that aims to increase both programmer productivity and code scalability. This paper de… Show more

Help me understand this report
View preprint versions

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
104
0
1

Year Published

2018
2018
2024
2024

Publication Types

Select...
4
2
1

Relationship

2
5

Authors

Journals

citations
Cited by 96 publications
(105 citation statements)
references
References 40 publications
0
104
0
1
Order By: Relevance
“…Therefore tensors B and trueB¯ are distributed to make it possible to perform CCSD computations with several thousand basis functions on machines with modest per‐node memory size. Remote tiles of B and trueB¯ are fetched asynchronously so that their communication overlaps with the computation of W via the use of remote messaging layer of the MADNESS parallel runtime that TiledArray is built on. Note that the lazy evaluation of W trades space for time: the memory requirement is reduced at the cost of reconstructing tensor W every CCSD iteration.…”
Section: Methodsmentioning
confidence: 99%
“…Therefore tensors B and trueB¯ are distributed to make it possible to perform CCSD computations with several thousand basis functions on machines with modest per‐node memory size. Remote tiles of B and trueB¯ are fetched asynchronously so that their communication overlaps with the computation of W via the use of remote messaging layer of the MADNESS parallel runtime that TiledArray is built on. Note that the lazy evaluation of W trades space for time: the memory requirement is reduced at the cost of reconstructing tensor W every CCSD iteration.…”
Section: Methodsmentioning
confidence: 99%
“…Assignment in Grafter only allows writing to data fields, and hence tree nodes can not be modified in an assignment statement. Local variables in the body of the traversal can either be data definitions (primitive or objects), or aliases to tree nodes (rules 13,14). Note that an alias variable is a constant pointer to a tree node that can only be assigned once to a descendant tree node and cannot be changed.…”
Section: Languagementioning
confidence: 99%
“…MADNESS (Multiresolution, Adaptive Numerical Environment for Scientific Simulation) [13] uses kd-trees to compactly represent piecewise functions over a multi-dimensional domain. The inner nodes of the tree divide the domain of the function into different sub-domains, while leaf nodes store the coefficients of a polynomial that estimates the function within the node's sub-domain.…”
Section: Case Study 3: Piecewise Functionsmentioning
confidence: 99%
“…Figure 3 shows per process memory consumption versus job size when running the Sequoia AMG benchmark [1] on the prototype with both the eager and lazy VC initialization strategies. The benchmark was configured to solve a Laplace-type problem 4 with two different three-dimensional processor layouts. The first layout was cubic (e.g., 36 processes organized as P x ⇥P y ⇥P z = 6⇥6⇥6).…”
Section: Application Impactmentioning
confidence: 99%
“…Kiki uses dedicated "server processes" that only process such messages but perform no application computation, again wasting some user-defined number of cores for these processes. Applications in other domains, such as MADNESS [4] (computational chemistry), are similarly restricted and emulate AM functionality using MPI SEND / MPI RECV with threads.…”
Section: Data Accessmentioning
confidence: 99%