diff --git a/src/.deps/pdata-HeapMemory.Po b/src/.deps/pdata-HeapMemory.Po index 0706e43c51600c003e028e8c4ed69cf8d0826c70..3267e5443a5969bedabbf93fbef3540b4cd7fcd7 100644 --- a/src/.deps/pdata-HeapMemory.Po +++ b/src/.deps/pdata-HeapMemory.Po @@ -72,9 +72,10 @@ pdata-HeapMemory.o: ../../OpenFPM_devices/src/memory/HeapMemory.cpp \ /usr/include/sys/types.h /usr/include/sys/select.h \ /usr/include/bits/select.h /usr/include/bits/sigset.h \ /usr/include/sys/sysmacros.h /usr/include/alloca.h \ - /usr/include/bits/stdlib-float.h /usr/include/c++/4.8.3/cstdio \ - /usr/include/libio.h /usr/include/_G_config.h \ - /usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \ + /usr/include/bits/stdlib-bsearch.h /usr/include/bits/stdlib-float.h \ + /usr/include/c++/4.8.3/cstdio /usr/include/libio.h \ + /usr/include/_G_config.h /usr/include/bits/stdio_lim.h \ + /usr/include/bits/sys_errlist.h /usr/include/bits/stdio.h \ /usr/include/c++/4.8.3/cerrno /usr/include/errno.h \ /usr/include/bits/errno.h /usr/include/linux/errno.h \ /usr/include/asm/errno.h /usr/include/asm-generic/errno.h \ @@ -303,6 +304,8 @@ config.h: /usr/include/alloca.h: +/usr/include/bits/stdlib-bsearch.h: + /usr/include/bits/stdlib-float.h: /usr/include/c++/4.8.3/cstdio: @@ -315,6 +318,8 @@ config.h: /usr/include/bits/sys_errlist.h: +/usr/include/bits/stdio.h: + /usr/include/c++/4.8.3/cerrno: /usr/include/errno.h: diff --git a/src/.deps/pdata-Memleak_check.Po b/src/.deps/pdata-Memleak_check.Po index e3f40118b47199b47e7f00efae9c6d8ac10fb0a7..06e60b91b08601b6213b8ea1c9b507094f31276d 100644 --- a/src/.deps/pdata-Memleak_check.Po +++ b/src/.deps/pdata-Memleak_check.Po @@ -69,9 +69,10 @@ pdata-Memleak_check.o: ../../OpenFPM_data/src/Memleak_check.cpp \ /usr/include/sys/types.h /usr/include/sys/select.h \ /usr/include/bits/select.h /usr/include/bits/sigset.h \ /usr/include/sys/sysmacros.h /usr/include/alloca.h \ - /usr/include/bits/stdlib-float.h /usr/include/c++/4.8.3/cstdio \ - /usr/include/libio.h /usr/include/_G_config.h \ - /usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \ + /usr/include/bits/stdlib-bsearch.h /usr/include/bits/stdlib-float.h \ + /usr/include/c++/4.8.3/cstdio /usr/include/libio.h \ + /usr/include/_G_config.h /usr/include/bits/stdio_lim.h \ + /usr/include/bits/sys_errlist.h /usr/include/bits/stdio.h \ /usr/include/c++/4.8.3/cerrno /usr/include/errno.h \ /usr/include/bits/errno.h /usr/include/linux/errno.h \ /usr/include/asm/errno.h /usr/include/asm-generic/errno.h \ @@ -295,6 +296,8 @@ config.h: /usr/include/alloca.h: +/usr/include/bits/stdlib-bsearch.h: + /usr/include/bits/stdlib-float.h: /usr/include/c++/4.8.3/cstdio: @@ -307,6 +310,8 @@ config.h: /usr/include/bits/sys_errlist.h: +/usr/include/bits/stdio.h: + /usr/include/c++/4.8.3/cerrno: /usr/include/errno.h: diff --git a/src/.deps/pdata-VCluster.Po b/src/.deps/pdata-VCluster.Po index aae231be0c9ed71bd803a0c45328058ef26c1440..6e74898fd176d858c73288385c98e6e6155271a0 100644 --- a/src/.deps/pdata-VCluster.Po +++ b/src/.deps/pdata-VCluster.Po @@ -75,9 +75,10 @@ pdata-VCluster.o: ../../OpenFPM_vcluster/src/VCluster.cpp \ /usr/include/sys/types.h /usr/include/sys/select.h \ /usr/include/bits/select.h /usr/include/bits/sigset.h \ /usr/include/sys/sysmacros.h /usr/include/alloca.h \ - /usr/include/bits/stdlib-float.h /usr/include/c++/4.8.3/cstdio \ - /usr/include/libio.h /usr/include/_G_config.h \ - /usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \ + /usr/include/bits/stdlib-bsearch.h /usr/include/bits/stdlib-float.h \ + /usr/include/c++/4.8.3/cstdio /usr/include/libio.h \ + /usr/include/_G_config.h /usr/include/bits/stdio_lim.h \ + /usr/include/bits/sys_errlist.h /usr/include/bits/stdio.h \ /usr/include/c++/4.8.3/cerrno /usr/include/errno.h \ /usr/include/bits/errno.h /usr/include/linux/errno.h \ /usr/include/asm/errno.h /usr/include/asm-generic/errno.h \ @@ -788,7 +789,8 @@ pdata-VCluster.o: ../../OpenFPM_vcluster/src/VCluster.cpp \ /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \ /usr/include/bits/inf.h /usr/include/bits/nan.h \ /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \ - /usr/include/c++/4.8.3/sstream /usr/include/c++/4.8.3/bits/sstream.tcc \ + /usr/include/bits/mathinline.h /usr/include/c++/4.8.3/sstream \ + /usr/include/c++/4.8.3/bits/sstream.tcc \ /usr/include/boost/type_traits/is_compound.hpp \ /usr/include/boost/type_traits/is_floating_point.hpp \ /usr/include/boost/type_traits/is_member_object_pointer.hpp \ @@ -1171,6 +1173,8 @@ pdata-VCluster.o: ../../OpenFPM_vcluster/src/VCluster.cpp \ /usr/include/alloca.h: +/usr/include/bits/stdlib-bsearch.h: + /usr/include/bits/stdlib-float.h: /usr/include/c++/4.8.3/cstdio: @@ -1183,6 +1187,8 @@ pdata-VCluster.o: ../../OpenFPM_vcluster/src/VCluster.cpp \ /usr/include/bits/sys_errlist.h: +/usr/include/bits/stdio.h: + /usr/include/c++/4.8.3/cerrno: /usr/include/errno.h: @@ -2689,6 +2695,8 @@ config.h: /usr/include/bits/mathcalls.h: +/usr/include/bits/mathinline.h: + /usr/include/c++/4.8.3/sstream: /usr/include/c++/4.8.3/bits/sstream.tcc: diff --git a/src/.deps/pdata-main.Po b/src/.deps/pdata-main.Po index a45efb54360899b4417ab89034201c0ad4631f40..4b1c8c212fa0324f5f74970a90b65d1d6c52cc48 100644 --- a/src/.deps/pdata-main.Po +++ b/src/.deps/pdata-main.Po @@ -68,9 +68,10 @@ pdata-main.o: main.cpp /usr/include/stdc-predef.h \ /usr/include/sys/types.h /usr/include/sys/select.h \ /usr/include/bits/select.h /usr/include/bits/sigset.h \ /usr/include/sys/sysmacros.h /usr/include/alloca.h \ - /usr/include/bits/stdlib-float.h /usr/include/c++/4.8.3/cstdio \ - /usr/include/libio.h /usr/include/_G_config.h \ - /usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \ + /usr/include/bits/stdlib-bsearch.h /usr/include/bits/stdlib-float.h \ + /usr/include/c++/4.8.3/cstdio /usr/include/libio.h \ + /usr/include/_G_config.h /usr/include/bits/stdio_lim.h \ + /usr/include/bits/sys_errlist.h /usr/include/bits/stdio.h \ /usr/include/c++/4.8.3/cerrno /usr/include/errno.h \ /usr/include/bits/errno.h /usr/include/linux/errno.h \ /usr/include/asm/errno.h /usr/include/asm-generic/errno.h \ @@ -737,7 +738,8 @@ pdata-main.o: main.cpp /usr/include/stdc-predef.h \ /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \ /usr/include/bits/inf.h /usr/include/bits/nan.h \ /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \ - /usr/include/c++/4.8.3/sstream /usr/include/c++/4.8.3/bits/sstream.tcc \ + /usr/include/bits/mathinline.h /usr/include/c++/4.8.3/sstream \ + /usr/include/c++/4.8.3/bits/sstream.tcc \ /usr/include/boost/type_traits/is_compound.hpp \ /usr/include/boost/type_traits/is_floating_point.hpp \ /usr/include/boost/type_traits/is_member_object_pointer.hpp \ @@ -1081,6 +1083,7 @@ pdata-main.o: main.cpp /usr/include/stdc-predef.h \ /usr/include/boost/math/tools/user.hpp \ /usr/include/boost/detail/fenv.hpp /usr/include/c++/4.8.3/fenv.h \ /usr/include/fenv.h /usr/include/bits/fenv.h \ + /usr/include/bits/fenvinline.h \ /usr/include/boost/math/special_functions/math_fwd.hpp \ /usr/include/boost/math/special_functions/detail/round_fwd.hpp \ /usr/include/boost/math/tools/promotion.hpp \ @@ -1294,8 +1297,9 @@ pdata-main.o: main.cpp /usr/include/stdc-predef.h \ ../../metis_install/include/metis.h /usr/include/inttypes.h \ ../../OpenFPM_IO/src/VTKWriter.hpp dec_optimizer.hpp \ ../../OpenFPM_data/src/NN/CellList/CellDecomposer.hpp \ - ../../OpenFPM_data/src/util.hpp Decomposition/ORB_unit_test.hpp \ - Decomposition/ORB.hpp ../../OpenFPM_data/src/data_type/scalar.hpp \ + ../../OpenFPM_data/src/util.hpp unit_test_init_cleanup.hpp \ + Decomposition/ORB_unit_test.hpp Decomposition/ORB.hpp \ + ../../OpenFPM_data/src/data_type/scalar.hpp \ Graph/CartesianGraphFactory_unit_test.hpp \ Graph/CartesianGraphFactory.hpp metis_util_unit_test.hpp metis_util.hpp \ dec_optimizer_unit_test.hpp dec_optimizer.hpp \ @@ -1499,6 +1503,8 @@ pdata-main.o: main.cpp /usr/include/stdc-predef.h \ /usr/include/alloca.h: +/usr/include/bits/stdlib-bsearch.h: + /usr/include/bits/stdlib-float.h: /usr/include/c++/4.8.3/cstdio: @@ -1511,6 +1517,8 @@ pdata-main.o: main.cpp /usr/include/stdc-predef.h \ /usr/include/bits/sys_errlist.h: +/usr/include/bits/stdio.h: + /usr/include/c++/4.8.3/cerrno: /usr/include/errno.h: @@ -2929,6 +2937,8 @@ config.h: /usr/include/bits/mathcalls.h: +/usr/include/bits/mathinline.h: + /usr/include/c++/4.8.3/sstream: /usr/include/c++/4.8.3/bits/sstream.tcc: @@ -3701,6 +3711,8 @@ config.h: /usr/include/bits/fenv.h: +/usr/include/bits/fenvinline.h: + /usr/include/boost/math/special_functions/math_fwd.hpp: /usr/include/boost/math/special_functions/detail/round_fwd.hpp: @@ -4181,6 +4193,8 @@ dec_optimizer.hpp: ../../OpenFPM_data/src/util.hpp: +unit_test_init_cleanup.hpp: + Decomposition/ORB_unit_test.hpp: Decomposition/ORB.hpp: diff --git a/src/Makefile b/src/Makefile index 5caa50694257308cf217eb478314df08c16508f1..978199762b343f0f3dfbf558855ef71d038d4fd0 100644 --- a/src/Makefile +++ b/src/Makefile @@ -186,7 +186,7 @@ CUDA_CFLAGS = -I -I -I/usr/local/cuda-5.5/include CUDA_LIBS = -L -L -L/usr/local/cuda-5.5/lib64 -lcuda -lcudart CXX = mpic++ CXXDEPMODE = depmode=gcc3 -CXXFLAGS = --std=c++11 -mtune=corei7 -g3 -Wall -O0 -mavx -msse4.2 -msse4.1 -msse3 -msse2 -msse -mmmx -Wno-unused-but-set-variable +CXXFLAGS = --std=c++11 -mtune=corei7 -Wall -O3 -g3 -mavx -msse4.2 -msse4.1 -msse3 -msse2 -msse -mmmx -Wno-unused-but-set-variable CYGPATH_W = echo DEFS = -DHAVE_CONFIG_H DEPDIR = .deps @@ -207,7 +207,7 @@ LTLIBOBJS = MAKEINFO = ${SHELL} /home/i-bird/Desktop/MOSAIC/OpenFPM_project/OpenFPM_pdata/missing makeinfo MKDIR_P = /usr/bin/mkdir -p NVCC = /usr/local/cuda-5.5/bin/nvcc -NVCCFLAGS = -g -O0 +NVCCFLAGS = -O3 NVCC_EXIST = yes OBJEXT = o PACKAGE = full-package-name diff --git a/src/SubdomainGraphNodes.hpp b/src/SubdomainGraphNodes.hpp index ce5326820e532e7dce64d7f412534b66ca5ac6ec..b58f94d72efb6212de41c787a7e045b6c4c5cc56 100644 --- a/src/SubdomainGraphNodes.hpp +++ b/src/SubdomainGraphNodes.hpp @@ -134,7 +134,7 @@ struct nm_part_v static const unsigned int max_prop = 2; }; -const std::string nm_part_v::attributes::name[] = {"id"}; +const std::string nm_part_v::attributes::name[] = {"id","sub_id"}; /*! \brief Reduced edge graph node * diff --git a/src/Vector/vector_dist.hpp b/src/Vector/vector_dist.hpp index 930eeba3e0baf9f82a1dd4938303d0a0b486a247..064cc2248ae621abe3b4ba2d664429ca75e01460 100644 --- a/src/Vector/vector_dist.hpp +++ b/src/Vector/vector_dist.hpp @@ -244,7 +244,7 @@ public: recv_cnt = 0; v_cl.sendrecvMultipleMessages(prc_sz_r.size(),&p_map.get(0), &prc_sz_r.get(0), &prc_r.get(0) , &ptr.get(0) , vector_dist::message_alloc, this ,NEED_ALL_SIZE); - // overwrite the outcoming particle with the incoming particle + // overwrite the outcoming particle with the incoming particle and resize the vectors size_t o_p_id = 0; @@ -254,16 +254,16 @@ public: size_t n_ele = v_proc.get(i) / (sizeof(point) + sizeof(prop)); - PtrMemory ptr1(hp_recv.getPointer(),n_ele * sizeof(point)); - PtrMemory ptr2((unsigned char *)hp_recv.getPointer() + n_ele * sizeof(point),n_ele * sizeof(prop)); + PtrMemory * ptr1 = new PtrMemory(hp_recv.getPointer(),n_ele * sizeof(point)); + PtrMemory * ptr2 = new PtrMemory((unsigned char *)hp_recv.getPointer() + n_ele * sizeof(point),n_ele * sizeof(prop)); // create vector representation to a piece of memory already allocated openfpm::vector<point,openfpm::device_cpu<point>,PtrMemory,openfpm::grow_policy_identity> vpos; openfpm::vector<prop,openfpm::device_cpu<prop>,PtrMemory,openfpm::grow_policy_identity> vprp; - vpos.setMemory(ptr1); - vprp.setMemory(ptr2); + vpos.setMemory(*ptr1); + vprp.setMemory(*ptr2); vpos.resize(n_ele); vprp.resize(n_ele); @@ -286,7 +286,10 @@ public: } } - // Add the remaining incoming particle + // remove the hole (out-going particles) in the vector + + v_pos.get(0).remove(opart,o_p_id); + v_prp.get(0).remove(opart,o_p_id); } // Heap memory receiver diff --git a/src/Vector/vector_dist_unit_test.hpp b/src/Vector/vector_dist_unit_test.hpp index 6c0b15e79a41f1f4c368c0041fbf82721fd2154c..748940c02f2e2f0ec7649131c89e9266e4fdc621 100644 --- a/src/Vector/vector_dist_unit_test.hpp +++ b/src/Vector/vector_dist_unit_test.hpp @@ -49,6 +49,8 @@ BOOST_AUTO_TEST_CASE( vector_dist_iterator_test_use ) { auto key = it.get(); + // Check if local otherwise print the particle value + BOOST_REQUIRE_EQUAL(ct.isLocal(vd.template getPos<s::x>(key)),true); ++it; diff --git a/src/main.cpp b/src/main.cpp index f7700ac367089ef37f0149fb13b615acebd5a3d8..fe80dc22a50f03e316e7f7467be967f758e0cd74 100755 --- a/src/main.cpp +++ b/src/main.cpp @@ -15,6 +15,7 @@ #include "Space/Shape/Box.hpp" #include "util.hpp" +#include "unit_test_init_cleanup.hpp" #include "Decomposition/ORB_unit_test.hpp" #include "Graph/CartesianGraphFactory_unit_test.hpp" #include "metis_util_unit_test.hpp"