3
0
mirror of https://github.com/triqs/dft_tools synced 2024-12-25 13:53:40 +01:00
dft_tools/triqs/utility
Olivier Parcollet 2cca9584b9 mpi: first draft for #12
- a thin layer, using a bit boost::mpi (for the communicator mostly ...)
  along the lines discussed in #12.
- implemented reduce, allreduce, bcast for arrays, simple scalars,
and any custom type that support boost serialization.
- Custom types :  the operations are done recursively on members.
  No change is needed in the class to use this mpi routine, as long as
  serialize function is defined.
- For arrays of basic types (int, double...), a direct call to MPI C API, which works also for views
  (as long as they are contiguous).
- For arrays of more complex types, we revert to boost::mpi.
- Added a simple test.
- Work still in progress :
   - missing a simple scatter/gather for the arrays
   - need more tests & API thinking.
   - dispatch array code to array lib
   - reduce is "sum" only, but do we need more.
2013-09-13 09:20:21 +02:00
..
draft arrays: rm has_view_type_tag & add_views 2013-08-27 13:43:57 +02:00
python First commit : triqs libs version 1.0 alpha1 2013-07-17 19:24:07 +02:00
c14.hpp add c14 details in std::c14 2013-09-11 20:22:38 +02:00
callbacks.cpp First commit : triqs libs version 1.0 alpha1 2013-07-17 19:24:07 +02:00
callbacks.hpp First commit : triqs libs version 1.0 alpha1 2013-07-17 19:24:07 +02:00
CMakeLists.txt First commit : triqs libs version 1.0 alpha1 2013-07-17 19:24:07 +02:00
compiler_details.hpp clef : new version using lvalues and moving rvalues 2013-09-08 15:04:12 +02:00
complex_ops.hpp utility : tuple, complex_ops 2013-07-19 13:27:03 +02:00
concept_tools.hpp arrays : revised version of map & fold 2013-09-11 18:39:25 +02:00
count_type_occurrence.hpp First commit : triqs libs version 1.0 alpha1 2013-07-17 19:24:07 +02:00
crash_logger.hpp First commit : triqs libs version 1.0 alpha1 2013-07-17 19:24:07 +02:00
dressed_iterator.hpp First commit : triqs libs version 1.0 alpha1 2013-07-17 19:24:07 +02:00
exceptions.hpp First commit : triqs libs version 1.0 alpha1 2013-07-17 19:24:07 +02:00
expression_template_tools.hpp First commit : triqs libs version 1.0 alpha1 2013-07-17 19:24:07 +02:00
factory.hpp First commit : triqs libs version 1.0 alpha1 2013-07-17 19:24:07 +02:00
first_include.hpp First commit : triqs libs version 1.0 alpha1 2013-07-17 19:24:07 +02:00
formatted_output.hpp First commit : triqs libs version 1.0 alpha1 2013-07-17 19:24:07 +02:00
fortran_mangling.hpp First commit : triqs libs version 1.0 alpha1 2013-07-17 19:24:07 +02:00
function_arg_ret_type.hpp First commit : triqs libs version 1.0 alpha1 2013-07-17 19:24:07 +02:00
has_traits.hpp First commit : triqs libs version 1.0 alpha1 2013-07-17 19:24:07 +02:00
legendre.hpp First commit : triqs libs version 1.0 alpha1 2013-07-17 19:24:07 +02:00
macros.hpp clef : new version using lvalues and moving rvalues 2013-09-08 15:04:12 +02:00
mini_vector.hpp arrays: workaround a bug in clang 3.3 release ? 2013-08-27 11:37:21 +02:00
mpi.hpp mpi: first draft for #12 2013-09-13 09:20:21 +02:00
pade_approximants.hpp First commit : triqs libs version 1.0 alpha1 2013-07-17 19:24:07 +02:00
report_stream.hpp First commit : triqs libs version 1.0 alpha1 2013-07-17 19:24:07 +02:00
scope_guard.hpp First commit : triqs libs version 1.0 alpha1 2013-07-17 19:24:07 +02:00
serialization.hpp changing non_view_type to regular_type 2013-08-27 13:43:57 +02:00
signal_handler.cpp First commit : triqs libs version 1.0 alpha1 2013-07-17 19:24:07 +02:00
signal_handler.hpp First commit : triqs libs version 1.0 alpha1 2013-07-17 19:24:07 +02:00
stack_trace.cpp First commit : triqs libs version 1.0 alpha1 2013-07-17 19:24:07 +02:00
stack_trace.hpp First commit : triqs libs version 1.0 alpha1 2013-07-17 19:24:07 +02:00
std_vector_expr_template.hpp First commit : triqs libs version 1.0 alpha1 2013-07-17 19:24:07 +02:00
time_pt.hpp First commit : triqs libs version 1.0 alpha1 2013-07-17 19:24:07 +02:00
timer.hpp First commit : triqs libs version 1.0 alpha1 2013-07-17 19:24:07 +02:00
tuple_serialize.hpp changing non_view_type to regular_type 2013-08-27 13:43:57 +02:00
tuple_tools.hpp gcc 4.6: correction 2013-09-08 15:17:18 +02:00
typeid_name.hpp First commit : triqs libs version 1.0 alpha1 2013-07-17 19:24:07 +02:00
view_tools.hpp arrays: rm has_view_type_tag & add_views 2013-08-27 13:43:57 +02:00