Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
42 commits
Select commit Hold shift + click to select a range
09815c2
Fixing in situ visualization
incardon Dec 5, 2018
8e5ec9f
Fixing insitu when PETSC not available
incardon Dec 5, 2018
05bd067
insitu now is merged with 2.0.0
incardon Apr 17, 2019
9f27400
Added shared memory support
incardon Apr 18, 2019
8b660cc
Adding shared memory files
incardon Aug 13, 2019
13cca27
restructures distributed run to launch 1 vis process per node
aryaman-gupta Mar 9, 2020
119178c
makes comm_split calls collective
aryaman-gupta May 11, 2020
4111610
adds functionality for calling scenery-based visualization classes di…
aryaman-gupta May 22, 2020
85ab4cd
gets classpath from directory
aryaman-gupta Jun 11, 2020
f8e9622
adds function to return rank on node
aryaman-gupta Jun 16, 2020
69de43a
changes rendering mode to headless
aryaman-gupta Jun 16, 2020
f848aa8
adds overloads for send and recv that use vector_ofp data
aryaman-gupta Jun 23, 2020
38953fd
adds overloads for send and recv for data based on vector_ofp
aryaman-gupta Jun 23, 2020
a881dae
delays PetscInitialize call till after MPI_init
aryaman-gupta Jun 23, 2020
22aac10
creates InVisVolume class for in situ vis of volume data
aryaman-gupta Jun 23, 2020
b09551e
adds links to InVisVolume.cpp
aryaman-gupta Jun 23, 2020
8cbc376
configures for VDI rendering testing
aryaman-gupta Jun 30, 2020
89e0327
removes call to updateVolumes
aryaman-gupta Jun 30, 2020
5fc2c50
testing on cluster
aryaman-gupta Jul 5, 2020
9e54ba0
enables writing the VDI to file
aryaman-gupta Jul 9, 2020
a86e132
adds code for benchmarking
aryaman-gupta Jul 11, 2020
e7fc2b0
adds commsize to op VDI file name
aryaman-gupta Jul 11, 2020
0d6048d
changes to file writing, error logging
aryaman-gupta Jul 11, 2020
44334a1
refactors for using single buffer for color and depth
aryaman-gupta Jul 11, 2020
61ba0d4
unifies code path for particles and grid, and changes MPI communicato…
aryaman-gupta Aug 23, 2020
7cda426
adds support for streaming and for the master process of the insitu s…
aryaman-gupta Aug 28, 2020
caba528
enables interaction with vis
aryaman-gupta Aug 31, 2020
9461dee
removes print statements and saving of files
aryaman-gupta Aug 31, 2020
b65d785
changes in benchmarking code
aryaman-gupta Aug 31, 2020
73af646
removes vis interaction bcast from thread
aryaman-gupta Sep 1, 2020
9d90fff
adds thread for testing
aryaman-gupta Sep 1, 2020
0d0f177
adds enums for vis properties
aryaman-gupta Sep 1, 2020
b34393a
removes thread created for testing
aryaman-gupta Sep 1, 2020
0da9fb8
removes some memory leaks and caches jni refs
aryaman-gupta Sep 2, 2020
07198f5
reverts bcast to thread
aryaman-gupta Sep 2, 2020
ff4e51b
removes bug: call malloc with correct size
aryaman-gupta Sep 2, 2020
4404e23
reduces rate of streaming for recording video
aryaman-gupta Oct 9, 2020
f716e72
adds profiling of communication times
aryaman-gupta Oct 16, 2020
b5d9a97
omits first iteration for network benchmark
aryaman-gupta Oct 16, 2020
362ecf4
changes for img texture without end-depth
aryaman-gupta Nov 4, 2020
7fed6dd
use separate 2D textures for col and depth, instead of 1 3D texture
aryaman-gupta Nov 5, 2020
bea88ae
generalizes for VDI or plain image generation
aryaman-gupta Apr 12, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
322 changes: 160 additions & 162 deletions INSTALL

Large diffs are not rendered by default.

14 changes: 12 additions & 2 deletions src/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ if (CUDA_FOUND)
set(CUDA_SOURCES ../../openfpm_devices/src/memory/CudaMemory.cu VCluster/cuda/VCluster_semantic_unit_cuda_tests.cu VCluster/cuda/VCluster_unit_tests.cu )
endif()

add_executable(vcluster_test main.cpp VCluster/VCluster.cpp ../../openfpm_devices/src/memory/HeapMemory.cpp ../../openfpm_devices/src/memory/PtrMemory.cpp ../../openfpm_devices/src/Memleak_check.cpp VCluster/VCluster_unit_tests.cpp VCluster/VCluster_semantic_unit_tests.cpp ${CUDA_SOURCES})
add_executable(vcluster_test main.cpp VCluster/VCluster.cpp VCluster/InVis.cpp VCluster/InVisVolume.cpp ../../openfpm_devices/src/memory/ShmAllocator_manager.cpp ../../openfpm_devices/src/memory/SemManager.cpp ../../openfpm_devices/src/memory/ShmAllocator.cpp ../../openfpm_devices/src/memory/ShmBuffer.cpp ../../openfpm_devices/src/memory/HeapMemory.cpp ../../openfpm_devices/src/memory/PtrMemory.cpp ../../openfpm_devices/src/Memleak_check.cpp VCluster/VCluster_unit_tests.cpp VCluster/VCluster_semantic_unit_tests.cpp ${CUDA_SOURCES})

if ( CMAKE_COMPILER_IS_GNUCC )
target_compile_options(vcluster_test PRIVATE "-Wno-deprecated-declarations")
Expand All @@ -15,7 +15,7 @@ if ( CMAKE_COMPILER_IS_GNUCC )
endif()
endif()

add_library(vcluster STATIC VCluster/VCluster.cpp)
add_library(vcluster STATIC VCluster/VCluster.cpp VCluster/InVis.cpp VCluster/InVisVolume.cpp)

###########################

Expand All @@ -27,6 +27,8 @@ if(CUDA_FOUND)
endif()
endif()

set(JAVA_HOME /usr/lib/jvm/adoptopenjdk-11-hotspot-amd64)

target_include_directories (vcluster_test PUBLIC ${CUDA_INCLUDE_DIRS})
target_include_directories (vcluster_test PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
target_include_directories (vcluster_test PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../../openfpm_devices/src/)
Expand All @@ -35,6 +37,8 @@ target_include_directories (vcluster_test PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../
target_include_directories (vcluster_test PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/config)
target_include_directories (vcluster_test PUBLIC ${Boost_INCLUDE_DIRS})
target_include_directories (vcluster_test PUBLIC ${PETSC_INCLUDES})
target_include_directories (vcluster_test PUBLIC ${JAVA_HOME}/include ${JAVA_HOME}/include/linux)


target_include_directories (vcluster PUBLIC ${CUDA_INCLUDE_DIRS})
target_include_directories (vcluster PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
Expand All @@ -43,7 +47,11 @@ target_include_directories (vcluster PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/config)
target_include_directories (vcluster PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../../openfpm_data/src/)
target_include_directories (vcluster PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../../openfpm_devices/src/)
target_include_directories (vcluster PUBLIC ${Boost_INCLUDE_DIRS})
target_include_directories (vcluster PUBLIC ${JAVA_HOME}/include ${JAVA_HOME}/include/linux)

#target_link_libraries(vcluster ${JAVA_HOME}/lib/server/libjvm.so)

target_link_libraries(vcluster_test ${JAVA_HOME}/lib/server/libjvm.so)
target_link_libraries(vcluster_test ${Boost_LIBRARIES})
target_link_libraries(vcluster_test ${PETSC_LIBRARIES})

Expand All @@ -69,6 +77,8 @@ install(FILES MPI_wrapper/MPI_IallreduceW.hpp
install(FILES VCluster/VCluster_base.hpp
VCluster/VCluster.hpp
VCluster/VCluster_meta_function.hpp
VCluster/InVis.hpp
VCluster/InVisVolume.hpp
DESTINATION openfpm_vcluster/include/VCluster )

install (FILES util/Vcluster_log.hpp
Expand Down
48 changes: 24 additions & 24 deletions src/MPI_wrapper/MPI_IAllGather.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -28,9 +28,9 @@
class MPI_IAllGatherWB
{
public:
static inline void gather(void * sbuf, size_t sz_s ,void * rbuf, size_t sz_r, MPI_Request & req)
static inline void gather(void * sbuf, size_t sz_s ,void * rbuf, size_t sz_r, MPI_Request & req, MPI_Comm ext_comm)
{
MPI_SAFE_CALL(MPI_Iallgather(sbuf,sz_s,MPI_BYTE, rbuf, sz_r, MPI_BYTE, MPI_COMM_WORLD,&req));
MPI_SAFE_CALL(MPI_Iallgather(sbuf,sz_s,MPI_BYTE, rbuf, sz_r, MPI_BYTE, ext_comm,&req));
}
};

Expand All @@ -44,9 +44,9 @@ template<typename T> class MPI_IAllGatherW
{
public:

static inline void gather(void * sbuf, size_t sz_s ,void * rbuf, size_t sz_r, MPI_Request & req)
static inline void gather(void * sbuf, size_t sz_s ,void * rbuf, size_t sz_r, MPI_Request & req, MPI_Comm ext_comm)
{
MPI_SAFE_CALL(MPI_Iallgather(sbuf,sizeof(T) * sz_s,MPI_BYTE, rbuf, sz_r * sizeof(T), MPI_BYTE, MPI_COMM_WORLD,&req));
MPI_SAFE_CALL(MPI_Iallgather(sbuf,sizeof(T) * sz_s,MPI_BYTE, rbuf, sz_r * sizeof(T), MPI_BYTE, ext_comm,&req));
}
};

Expand All @@ -57,9 +57,9 @@ template<typename T> class MPI_IAllGatherW
template<> class MPI_IAllGatherW<int>
{
public:
static inline void gather(void * sbuf, size_t sz_s ,void * rbuf, size_t sz_r, MPI_Request & req)
static inline void gather(void * sbuf, size_t sz_s ,void * rbuf, size_t sz_r, MPI_Request & req, MPI_Comm ext_comm)
{
MPI_SAFE_CALL(MPI_Iallgather(sbuf,sz_s,MPI_INT, rbuf, sz_r, MPI_INT, MPI_COMM_WORLD,&req));
MPI_SAFE_CALL(MPI_Iallgather(sbuf,sz_s,MPI_INT, rbuf, sz_r, MPI_INT, ext_comm,&req));
}
};

Expand All @@ -69,9 +69,9 @@ template<> class MPI_IAllGatherW<int>
template<> class MPI_IAllGatherW<unsigned int>
{
public:
static inline void gather(void * sbuf, size_t sz_s ,void * rbuf, size_t sz_r, MPI_Request & req)
static inline void gather(void * sbuf, size_t sz_s ,void * rbuf, size_t sz_r, MPI_Request & req, MPI_Comm ext_comm)
{
MPI_SAFE_CALL(MPI_Iallgather(sbuf,sz_s,MPI_UNSIGNED, rbuf, sz_r, MPI_UNSIGNED, MPI_COMM_WORLD,&req));
MPI_SAFE_CALL(MPI_Iallgather(sbuf,sz_s,MPI_UNSIGNED, rbuf, sz_r, MPI_UNSIGNED, ext_comm,&req));
}
};

Expand All @@ -81,9 +81,9 @@ template<> class MPI_IAllGatherW<unsigned int>
template<> class MPI_IAllGatherW<short>
{
public:
static inline void gather(void * sbuf, size_t sz_s ,void * rbuf, size_t sz_r, MPI_Request & req)
static inline void gather(void * sbuf, size_t sz_s ,void * rbuf, size_t sz_r, MPI_Request & req, MPI_Comm ext_comm)
{
MPI_SAFE_CALL(MPI_Iallgather(sbuf,sz_s,MPI_SHORT, rbuf, sz_r, MPI_SHORT, MPI_COMM_WORLD,&req));
MPI_SAFE_CALL(MPI_Iallgather(sbuf,sz_s,MPI_SHORT, rbuf, sz_r, MPI_SHORT, ext_comm,&req));
}
};

Expand All @@ -94,9 +94,9 @@ template<> class MPI_IAllGatherW<short>
template<> class MPI_IAllGatherW<unsigned short>
{
public:
static inline void gather(void * sbuf, size_t sz_s ,void * rbuf, size_t sz_r, MPI_Request & req)
static inline void gather(void * sbuf, size_t sz_s ,void * rbuf, size_t sz_r, MPI_Request & req, MPI_Comm ext_comm)
{
MPI_SAFE_CALL(MPI_Iallgather(sbuf,sz_s,MPI_UNSIGNED_SHORT, rbuf, sz_r, MPI_UNSIGNED_SHORT, MPI_COMM_WORLD,&req));
MPI_SAFE_CALL(MPI_Iallgather(sbuf,sz_s,MPI_UNSIGNED_SHORT, rbuf, sz_r, MPI_UNSIGNED_SHORT, ext_comm,&req));
}
};

Expand All @@ -107,9 +107,9 @@ template<> class MPI_IAllGatherW<unsigned short>
template<> class MPI_IAllGatherW<char>
{
public:
static inline void gather(void * sbuf, size_t sz_s ,void * rbuf, size_t sz_r, MPI_Request & req)
static inline void gather(void * sbuf, size_t sz_s ,void * rbuf, size_t sz_r, MPI_Request & req, MPI_Comm ext_comm)
{
MPI_SAFE_CALL(MPI_Iallgather(sbuf,sz_s,MPI_CHAR, rbuf, sz_r, MPI_CHAR, MPI_COMM_WORLD,&req));
MPI_SAFE_CALL(MPI_Iallgather(sbuf,sz_s,MPI_CHAR, rbuf, sz_r, MPI_CHAR, ext_comm,&req));
}
};

Expand All @@ -120,9 +120,9 @@ template<> class MPI_IAllGatherW<char>
template<> class MPI_IAllGatherW<unsigned char>
{
public:
static inline void gather(void * sbuf, size_t sz_s ,void * rbuf, size_t sz_r, MPI_Request & req)
static inline void gather(void * sbuf, size_t sz_s ,void * rbuf, size_t sz_r, MPI_Request & req, MPI_Comm ext_comm)
{
MPI_SAFE_CALL(MPI_Iallgather(sbuf,sz_s,MPI_UNSIGNED_CHAR, rbuf, sz_r, MPI_UNSIGNED_CHAR, MPI_COMM_WORLD,&req));
MPI_SAFE_CALL(MPI_Iallgather(sbuf,sz_s,MPI_UNSIGNED_CHAR, rbuf, sz_r, MPI_UNSIGNED_CHAR, ext_comm,&req));
}
};

Expand All @@ -132,9 +132,9 @@ template<> class MPI_IAllGatherW<unsigned char>
template<> class MPI_IAllGatherW<size_t>
{
public:
static inline void gather(void * sbuf, size_t sz_s ,void * rbuf, size_t sz_r, MPI_Request & req)
static inline void gather(void * sbuf, size_t sz_s ,void * rbuf, size_t sz_r, MPI_Request & req, MPI_Comm ext_comm)
{
MPI_SAFE_CALL(MPI_Iallgather(sbuf,sz_s,MPI_UNSIGNED_LONG, rbuf, sz_r, MPI_UNSIGNED_LONG, MPI_COMM_WORLD,&req));
MPI_SAFE_CALL(MPI_Iallgather(sbuf,sz_s,MPI_UNSIGNED_LONG, rbuf, sz_r, MPI_UNSIGNED_LONG, ext_comm,&req));
}
};

Expand All @@ -144,9 +144,9 @@ template<> class MPI_IAllGatherW<size_t>
template<> class MPI_IAllGatherW<long int>
{
public:
static inline void gather(void * sbuf, size_t sz_s ,void * rbuf, size_t sz_r, MPI_Request & req)
static inline void gather(void * sbuf, size_t sz_s ,void * rbuf, size_t sz_r, MPI_Request & req, MPI_Comm ext_comm)
{
MPI_SAFE_CALL(MPI_Iallgather(sbuf,sz_s,MPI_LONG, rbuf, sz_r, MPI_LONG, MPI_COMM_WORLD,&req));
MPI_SAFE_CALL(MPI_Iallgather(sbuf,sz_s,MPI_LONG, rbuf, sz_r, MPI_LONG, ext_comm,&req));
}
};

Expand All @@ -156,9 +156,9 @@ template<> class MPI_IAllGatherW<long int>
template<> class MPI_IAllGatherW<float>
{
public:
static inline void gather(void * sbuf, size_t sz_s ,void * rbuf, size_t sz_r, MPI_Request & req)
static inline void gather(void * sbuf, size_t sz_s ,void * rbuf, size_t sz_r, MPI_Request & req, MPI_Comm ext_comm)
{
MPI_SAFE_CALL(MPI_Iallgather(sbuf,sz_s,MPI_FLOAT, rbuf, sz_r, MPI_FLOAT, MPI_COMM_WORLD,&req));
MPI_SAFE_CALL(MPI_Iallgather(sbuf,sz_s,MPI_FLOAT, rbuf, sz_r, MPI_FLOAT, ext_comm,&req));
}
};

Expand All @@ -168,9 +168,9 @@ template<> class MPI_IAllGatherW<float>
template<> class MPI_IAllGatherW<double>
{
public:
static inline void gather(void * sbuf, size_t sz_s ,void * rbuf, size_t sz_r, MPI_Request & req)
static inline void gather(void * sbuf, size_t sz_s ,void * rbuf, size_t sz_r, MPI_Request & req, MPI_Comm ext_comm)
{
MPI_SAFE_CALL(MPI_Iallgather(sbuf,sz_s,MPI_DOUBLE, rbuf, sz_r, MPI_DOUBLE, MPI_COMM_WORLD,&req));
MPI_SAFE_CALL(MPI_Iallgather(sbuf,sz_s,MPI_DOUBLE, rbuf, sz_r, MPI_DOUBLE, ext_comm,&req));
}
};

Expand Down
Loading