80,871 research outputs found
Sub-matrix updates for the Continuous-Time Auxiliary Field algorithm
We present a sub-matrix update algorithm for the continuous-time auxiliary
field method that allows the simulation of large lattice and impurity problems.
The algorithm takes optimal advantage of modern CPU architectures by
consistently using matrix instead of vector operations, resulting in a speedup
of a factor of and thereby allowing access to larger systems and
lower temperature. We illustrate the power of our algorithm at the example of a
cluster dynamical mean field simulation of the N\'{e}el transition in the
three-dimensional Hubbard model, where we show momentum dependent self-energies
for clusters with up to 100 sites
Generation of cubic graphs and snarks with large girth
We describe two new algorithms for the generation of all non-isomorphic cubic
graphs with girth at least which are very efficient for
and show how these algorithms can be efficiently restricted to generate snarks
with girth at least .
Our implementation of these algorithms is more than 30, respectively 40 times
faster than the previously fastest generator for cubic graphs with girth at
least 6 and 7, respectively.
Using these generators we have also generated all non-isomorphic snarks with
girth at least 6 up to 38 vertices and show that there are no snarks with girth
at least 7 up to 42 vertices. We present and analyse the new list of snarks
with girth 6.Comment: 27 pages (including appendix
On insertion-deletion systems over relational words
We introduce a new notion of a relational word as a finite totally ordered
set of positions endowed with three binary relations that describe which
positions are labeled by equal data, by unequal data and those having an
undefined relation between their labels. We define the operations of insertion
and deletion on relational words generalizing corresponding operations on
strings. We prove that the transitive and reflexive closure of these operations
has a decidable membership problem for the case of short insertion-deletion
rules (of size two/three and three/two). At the same time, we show that in the
general case such systems can produce a coding of any recursively enumerable
language leading to undecidabilty of reachability questions.Comment: 24 pages, 8 figure
A Non-Blocking Priority Queue for the Pending Event Set
The large diffusion of shared-memory multi-core machines has impacted the way Parallel Discrete Event Simulation (PDES) engines are built. While they were originally conceived as data-partitioned platforms, where each thread is in charge of managing a subset of simulation objects, nowadays the trend is to shift towards share-everything settings. In this scenario, any thread can (in principle) take care of CPU-dispatching pending events bound to whichever simulation object, which helps to fully share the load across the available CPU-cores. Hence, a fundamental aspect to be tackled is to provide an efficient globally-shared pending events’ set from which multiple worker threads can concurrently extract events to be processed, and into which they can concurrently insert new produced events to be processed in the future. To cope with this aspect, we present the design and implementation of a concurrent non-blocking pending events’ set data structure, which can be seen as a variant of a classical calendar queue. Early experimental data collected with a synthetic stress test are reported, showing excellent scalability of our proposal on a machine equipped with 32 CPU-cores
- …