diff --git a/nestkernel/connection_manager.cpp b/nestkernel/connection_manager.cpp index bc050ff78a..1042b45122 100644 --- a/nestkernel/connection_manager.cpp +++ b/nestkernel/connection_manager.cpp @@ -131,7 +131,7 @@ nest::ConnectionManager::initialize( const bool reset_kernel ) std::vector< DelayChecker > tmp( kernel().vp_manager.get_num_threads() ); delay_checkers_.swap( tmp ); - std::vector> tmp2( kernel().vp_manager.get_num_threads(), aligned_vector() ); + std::vector< aligned_vector< size_t > > tmp2( kernel().vp_manager.get_num_threads(), aligned_vector< size_t >() ); num_connections_.swap( tmp2 ); } diff --git a/nestkernel/connection_manager.h b/nestkernel/connection_manager.h index 84e6516547..fb33d9688b 100644 --- a/nestkernel/connection_manager.h +++ b/nestkernel/connection_manager.h @@ -31,8 +31,8 @@ #include "stopwatch.h" #ifdef HAVE_BOOST -#include #include +#include #endif // Includes from nestkernel: @@ -59,11 +59,12 @@ namespace nest { #ifdef HAVE_BOOST - template - using aligned_vector = std::vector< T, boost::alignment::aligned_allocator >; +template < typename T > +using aligned_vector = + std::vector< T, boost::alignment::aligned_allocator< T, std::hardware_destructive_interference_size > >; #else - template - using aligned_vector = std::vector; +template < typename T > +using aligned_vector = std::vector< T >; #endif class GenericConnBuilderFactory; @@ -648,7 +649,7 @@ class ConnectionManager : public ManagerInterface * type. Arranged in a 2d structure: threads|synapsetypes. */ - std::vector> num_connections_; + std::vector< aligned_vector< size_t > > num_connections_; DictionaryDatum connruledict_; //!< Dictionary for connection rules.