[Paraview-developers] OSPRay render

ƦOB COASTN robertpancoast77 at gmail.com
Tue Jun 7 14:23:09 EDT 2016


Hello David,

I compiled for the host using cmake:
LIB_OSPRAY=/home/ospray/build/libospray.so.0.10.1
LIB_OSPRAY_COMMON=/home/ospray/build/libospray_common.so.0.10.1
LIB_OSPRAY_EMBREE=/home/ospray/ospray/embree-2.9.0/lib/libembree.so.2
LIB_OSPRAY0=/home/ospray/build/libospray.so.0
LIB_OSPRAY_COMMON0=/home/ospray/build/libospray_common.so.0

cd $BUILDTREE && \
CC="mpiicc" \
CXX="mpiicpc" \
F77="mpiifort" \
FC="mpiifort" \
cmake \
-DBUILD_TESTING=OFF \
-DPARAVIEW_USE_OSPRAY=TRUE \
-DBUILD_USER_DEFINED_LIBS=TRUE \
-DPARAVIEW_BUILD_PLUGIN_GMVReader:BOOL=FALSE \
-DPARAVIEW_BUILD_PLUGIN_SciberQuestToolKit:BOOL=FALSE \
-DPARAVIEW_BUILD_PLUGIN_EyeDomeLighting:BOOL=FALSE \
-DPARAVIEW_BUILD_PLUGIN_SurfaceLIC:BOOL=FALSE \
-DPARAVIEW_USE_MPI=ON \
-DOSPRAY_BUILD_DIR=/home/ospray/build \
-DLIB_OSPRAY=$LIB_OSPRAY \
-DLIB_OSPRAY_COMMON=$LIB_OSPRAY_COMMON \
-DLIB_OSPRAY_EMBREE=$LIB_OSPRAY_EMBREE \
$PARAVIEW_SRC_DIR

cd $BUILDTREE && \
make -j12 VERBOSE=1



The cross-compilation for the KNC using cmake:
PARAVIEW_HOST_BUILD_DIR=$BUILDTREE
BUILDTREE=$SRC/build-mic
LIB_OSPRAY=/home/ospray/build/libospray_mic.so.0.10.1
LIB_OSPRAY_COMMON=/home/ospray/build/libospray_common_mic.so.0.10.1
LIB_OSPRAY_EMBREE=/home/ospray/ospray/embree-2.9.0/lib/libembree_xeonphi.so.2
LIB_OSPRAY0=/home/ospray/build/libospray_mic.so.0
LIB_OSPRAY_COMMON0=/home/ospray/build/libospray_common_mic.so.0

MESA_INSTALL_DIR=/home/Mesa-10.1.1/install

cd $BUILDTREE && \
TBB_ROOT="/opt/intel/compilers_and_libraries/linux/tbb/" \
TBB_ARCH_PLATFORM="mic" \
CC="mpiicc -mmic" \
CXX="mpiicpc -mmic" \
F77="mpiifort -mmic" \
FC="mpiifort -mmic" \
cmake \
-DTBB_LIBRARY_RELEASE=/opt/intel/compilers_and_libraries/linux/tbb/lib/intel64_lin_mic/libtbb.so.2
\
-DTBB_LIBRARY_DEBUG=/opt/intel/compilers_and_libraries/linux/tbb/lib/intel64_lin_mic/libtbb_debug.so.2
\
-DTBB_INCLUDE_DIR=/opt/intel/compilers_and_libraries/linux/tbb/include \
-DCMAKE_SYSTEM_NAME=Linux \
-DCMAKE_SYSTEM_PROCESSOR=k1om \
-DBUILD_TESTING=OFF \
-DPARAVIEW_USE_OSPRAY=TRUE \
-DBUILD_USER_DEFINED_LIBS=TRUE \
-DPARAVIEW_BUILD_PLUGIN_GMVReader:BOOL=FALSE \
-DPARAVIEW_BUILD_PLUGIN_SciberQuestToolKit:BOOL=FALSE \
-DPARAVIEW_BUILD_PLUGIN_EyeDomeLighting:BOOL=FALSE \
-DPARAVIEW_BUILD_PLUGIN_SurfaceLIC:BOOL=FALSE \
-DPARAVIEW_USE_MPI=ON \
-DCMAKE_FIND_ROOT_PATH=/opt/mpss/3.7/sysroots/k1om-mpss-linux/ \
-DCMAKE_FIND_ROOT_PATH_MODE_PROGRAM=NEVER \
-DCMAKE_FIND_ROOT_PATH_MODE_LIBRARY=ONLY \
-DCMAKE_FIND_ROOT_PATH_MODE_INCLUDE=ONLY \
-DParaViewCompileTools_DIR=$PARAVIEW_HOST_BUILD_DIR \
-DPARAVIEW_BUILD_QT_GUI=OFF \
-DVTK_USE_X=OFF -DVTK_OPENGL_HAS_OSMESA=ON -DVTK_USE_OFFSCREEN=ON \
-DVTK_USE_OSMESA=TRUE \
-DOSMESA_INCLUDE_DIR=$MESA_INSTALL_DIR/include \
-DOSMESA_LIBRARY=$MESA_INSTALL_DIR/lib/libOSMesa.so \
-DOPENGL_INCLUDE_DIR=$MESA_INSTALL_DIR/include \
-C$PARAVIEW_SRC_DIR/coast-TryRunResults.cmake \
-DOPENGL_gl_LIBRARY=NOTFOUND \
-DOPENGL_glu_LIBRARY=NOTFOUND \
-DGLUT_INCLUDE_DIR=NOTFOUND \
-DGLUT_glut_LIBRARY=NOTFOUND \
-DVTK_SMP_IMPLEMENTATION_TYPE:STRING=TBB \
-DPARAVIEW_USE_MPI=ON \
-DOSPRAY_BUILD_DIR=/home/ospray/build \
-DLIB_OSPRAY=$LIB_OSPRAY \
-DLIB_OSPRAY_COMMON=$LIB_OSPRAY_COMMON \
-DLIB_OSPRAY_EMBREE=$LIB_OSPRAY_EMBREE \
$PARAVIEW_SRC_DIR
cd $BUILDTREE && \
make -j12 VERBOSE=1
#Generating H5lib_settings.c
ssh mic0 "cd $BUILDTREE/VTK/ThirdParty/hdf5/vtkhdf5 &&
$BUILDTREE/bin/vtkH5make_libsettings >
$BUILDTREE/VTK/ThirdParty/hdf5/vtkhdf5/H5lib_settings.c"
cd $BUILDTREE && \
make -j12 VERBOSE=1
#Generating H5Tinit.c
ssh mic0 "cd $BUILDTREE/VTK/ThirdParty/hdf5/vtkhdf5/src &&
$BUILDTREE/bin/vtkH5detect >
$BUILDTREE/VTK/ThirdParty/hdf5/vtkhdf5/H5Tinit.c"
cd $BUILDTREE && \
make -j12 VERBOSE=1

Paraview does not crash when using just the host and OSPRay.
It appears that something is wrong, specifically with OSPRay rendering.
Paraview operates normally via MPI with host and MIC using OpenGL.
It specifically crashes when I enabled OSPRay and MPI for KNC.

I am curious, is there any option for using the COI builds of OSPRay
with Paraview instead of native KNC binaries+MPI?

Thanks,
Rob

On Tue, Jun 7, 2016 at 1:10 PM, David E DeMarle
<dave.demarle at kitware.com> wrote:
> Nice to meet you Rob and thanks for trying it out.
>
> I have to confess I have not yet tried the KNC.
> Checking, did you cross compile paraview itself? What I would do is to
> compile paraview and ospray once for the host, and then cross compile
> pvserver and ospray for the phi. Then you will be assured of a consistant
> executable on both sides.
>
>
> On Monday, June 6, 2016, ƦOB COASTN <robertpancoast77 at gmail.com> wrote:
>>
>> Greetings!
>>
>> This is first message to the developers list
>> The recent integration of OSPRay as a module sparks interest.
>>
>> I am trying to run ParaView with OSPRay as VTK module.
>> I want to utilize Xeon Phi KNC.
>>
>> The compilation from source needs host binaries for x86_64
>> architecture, and mic binaries for k1om.
>>
>> ParaView master branch was linked with OSPRay release v0.10.1.
>> This source was linked with the pre-compiled embree-2.9.0 release
>> libraries for each k1om and x86_64. *build log linked
>>
>> https://github.com/mancoast/logs/blob/master/paraview-build_bot-20160606150234.txt
>> (~50mb)
>>
>> ParaView correctly renders with both legacy OpenGL and OSPRay without
>> issue when using the host x86_64 build. *screenshots linked
>> https://raw.githubusercontent.com/mancoast/img/master/paraview_5opengl.png
>> https://raw.githubusercontent.com/mancoast/img/master/paraview_5ospr.png
>>
>> The issue occurs after MPI launch of PVserver.
>> The MPI execution produces errors exactly when the OSPRay rendering is
>> enabled. *screenshot linked
>>
>> https://raw.githubusercontent.com/mancoast/img/master/paraview_5_knc_ospr.png
>>
>>
>>
>> [root at coast77 ParaView]# mpirun -env
>>
>> LD_LIBRARY_PATH=/opt/intel/compilers_and_libraries/linux/lib/mic:/opt/intel/impi/5.1.3.210/mic/lib:/opt/intel/compilers_and_libraries_2016.3.210/linux/compiler/lib/intel64_lin_mic/
>> -iface mic0 -host mic0 -n 1 /home/ParaView/build-mic/bin/pvserver
>> Waiting for client...
>> Connection URL: cs://coast77-mic0.mancoast.int:11111
>> Accepting connection(s): coast77-mic0.mancoast.int:11111
>> Client connected.
>>
>>
>> ===================================================================================
>> =   BAD TERMINATION OF ONE OF YOUR APPLICATION PROCESSES
>> =   PID 21651 RUNNING AT mic0
>> =   EXIT CODE: 11
>> =   CLEANING UP REMAINING PROCESSES
>> =   YOU CAN IGNORE THE BELOW CLEANUP MESSAGES
>>
>> ===================================================================================
>>
>>
>> ===================================================================================
>> =   BAD TERMINATION OF ONE OF YOUR APPLICATION PROCESSES
>> =   PID 21651 RUNNING AT mic0
>> =   EXIT CODE: 11
>> =   CLEANING UP REMAINING PROCESSES
>> =   YOU CAN IGNORE THE BELOW CLEANUP MESSAGES
>>
>> ===================================================================================
>> [root at coast77 ParaView]#
>>
>>
>>
>> I concurrently see these messages in another terminal:
>>
>>
>> [coast at coast77 ~]$ /home/ParaView/build-host/bin/paraview
>> Generic Warning: In
>> /home/ParaView/VTK/Rendering/Parallel/vtkSynchronizedRenderers.cxx,
>> line 743
>> Only 3 or 4 component images are handled.
>>
>>
>> ERROR: In /home/ParaView/VTK/Common/System/vtkSocket.cxx, line 572
>> vtkClientSocket (0x2406210): Socket error in call to send. Broken pipe.
>>
>>
>>
>> Any recommendations?
>>
>> Thanks,
>> Rob
>> _______________________________________________
>> Powered by www.kitware.com
>>
>> Visit other Kitware open-source projects at
>> http://www.kitware.com/opensource/opensource.html
>>
>> Search the list archives at:
>> http://markmail.org/search/?q=Paraview-developers
>>
>> Follow this link to subscribe/unsubscribe:
>> http://public.kitware.com/mailman/listinfo/paraview-developers
>
>
>
> --
> David E DeMarle
> Kitware, Inc.
> R&D Engineer
> 21 Corporate Drive
> Clifton Park, NY 12065-8662
> Phone: 518-881-4909


More information about the Paraview-developers mailing list