19,433 research outputs found
SCDM-k: Localized orbitals for solids via selected columns of the density matrix
The recently developed selected columns of the density matrix (SCDM) method
[J. Chem. Theory Comput. 11, 1463, 2015] is a simple, robust, efficient and
highly parallelizable method for constructing localized orbitals from a set of
delocalized Kohn-Sham orbitals for insulators and semiconductors with
point sampling of the Brillouin zone. In this work we generalize the SCDM
method to Kohn-Sham density functional theory calculations with k-point
sampling of the Brillouin zone, which is needed for more general electronic
structure calculations for solids. We demonstrate that our new method, called
SCDM-k, is by construction gauge independent and is a natural way to describe
localized orbitals. SCDM-k computes localized orbitals without the use of an
optimization procedure, and thus does not suffer from the possibility of being
trapped in a local minimum. Furthermore, the computational complexity of using
SCDM-k to construct orthogonal and localized orbitals scales as O(N log N )
where N is the total number of k-points in the Brillouin zone. SCDM-k is
therefore efficient even when a large number of k-points are used for Brillouin
zone sampling. We demonstrate the numerical performance of SCDM-k using systems
with model potentials in two and three dimensions.Comment: 25 pages, 7 figures; added more background sections, clarified
presentation of the algorithm, revised the presentation of previous work,
added a more high level overview of the new algorithm, and mildly clarified
the presentation of the results (there were no changes to the numerical
results themselves
Cache-aware Performance Modeling and Prediction for Dense Linear Algebra
Countless applications cast their computational core in terms of dense linear
algebra operations. These operations can usually be implemented by combining
the routines offered by standard linear algebra libraries such as BLAS and
LAPACK, and typically each operation can be obtained in many alternative ways.
Interestingly, identifying the fastest implementation -- without executing it
-- is a challenging task even for experts. An equally challenging task is that
of tuning each routine to performance-optimal configurations. Indeed, the
problem is so difficult that even the default values provided by the libraries
are often considerably suboptimal; as a solution, normally one has to resort to
executing and timing the routines, driven by some form of parameter search. In
this paper, we discuss a methodology to solve both problems: identifying the
best performing algorithm within a family of alternatives, and tuning
algorithmic parameters for maximum performance; in both cases, we do not
execute the algorithms themselves. Instead, our methodology relies on timing
and modeling the computational kernels underlying the algorithms, and on a
technique for tracking the contents of the CPU cache. In general, our
performance predictions allow us to tune dense linear algebra algorithms within
few percents from the best attainable results, thus allowing computational
scientists and code developers alike to efficiently optimize their linear
algebra routines and codes.Comment: Submitted to PMBS1
Towards Distributed Two-Stage Stochastic Optimization
The weighted vertex cover problem is concerned with selecting a subset of the vertices that covers a target set of edges with the objective of minimizing the total cost of the selected vertices. We consider a variant of this classic combinatorial optimization problem where the target edge set is not fully known; rather, it is characterized by a probability distribution. Adhering to the model of two-stage stochastic optimization, the execution is divided into two stages so that in the first stage, the decision maker selects some of the vertices based on the probabilistic forecast of the target edge set. Then, in the second stage, the edges in the target set are revealed and in order to cover them, the decision maker can augment the vertex subset selected in the first stage with additional vertices. However, in the second stage, the vertex cost increases by some inflation factor, so the second stage selection becomes more expensive.
The current paper studies the two-stage stochastic vertex cover problem in the realm of distributed graph algorithms, where the decision making process (in both stages) is distributed among the vertices of the graph. By combining the stochastic optimization toolbox with recent advances in distributed algorithms for weighted vertex cover, we develop an algorithm that runs in time O(log (?) / ?), sends O(m) messages in total, and guarantees to approximate the optimal solution within a (3 + ?)-ratio, where m is the number of edges in the graph, ? is its maximum degree, and 0 < ? < 1 is a performance parameter
- …