Skip to content
This repository has been archived by the owner on Dec 18, 2020. It is now read-only.

Commit

Permalink
Merge branch 'devel'
Browse files Browse the repository at this point in the history
  • Loading branch information
Twinklebear committed Sep 21, 2020
2 parents de460cb + 80c76ac commit ee44450
Show file tree
Hide file tree
Showing 22 changed files with 644 additions and 352 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -30,3 +30,4 @@ readme.pdf
.idea/
premake.local.*
cmake-build*/
cmake-superbuild/
16 changes: 12 additions & 4 deletions .gitlab-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,11 +37,13 @@ build-centos7-intel:
- if [[ "$CI_COMMIT_REF_NAME" == "master" ]]; then
export BUILD_OSPRAY_VERSION=master;
export BUILD_OPENVKL_VERSION=master;
export BUILD_RKCOMMON_VERSION=master;
else
export BUILD_OSPRAY_VERSION=devel;
export BUILD_OPENVKL_VERSION=devel;
export BUILD_RKCOMMON_VERSION=devel;
fi
- scripts/build_gitlab/linux.sh -DBUILD_OSPRAY_VERSION=$BUILD_OSPRAY_VERSION -DBUILD_OPENVKL_VERSION=$BUILD_OPENVKL_VERSION
- scripts/build_gitlab/linux.sh -DBUILD_OSPRAY_VERSION=$BUILD_OSPRAY_VERSION -DBUILD_OPENVKL_VERSION=$BUILD_OPENVKL_VERSION -DBUILD_RKCOMMON_VERSION=$BUILD_RKCOMMON_VERSION

build-centos7-openmpi:
<<: *build_job_docker_modules
Expand All @@ -52,11 +54,13 @@ build-centos7-openmpi:
- if [[ "$CI_COMMIT_REF_NAME" == "master" ]]; then
export BUILD_OSPRAY_VERSION=master;
export BUILD_OPENVKL_VERSION=master;
export BUILD_RKCOMMON_VERSION=master;
else
export BUILD_OSPRAY_VERSION=devel;
export BUILD_OPENVKL_VERSION=devel;
export BUILD_RKCOMMON_VERSION=devel;
fi
- scripts/build_gitlab/linux.sh -DBUILD_OSPRAY_VERSION=$BUILD_OSPRAY_VERSION -DBUILD_OPENVKL_VERSION=$BUILD_OPENVKL_VERSION
- scripts/build_gitlab/linux.sh -DBUILD_OSPRAY_VERSION=$BUILD_OSPRAY_VERSION -DBUILD_OPENVKL_VERSION=$BUILD_OPENVKL_VERSION -DBUILD_RKCOMMON_VERSION=$BUILD_RKCOMMON_VERSION

build-centos8-mpich:
<<: *build_job_docker
Expand All @@ -66,12 +70,14 @@ build-centos8-mpich:
- if [[ "$CI_COMMIT_REF_NAME" == "master" ]]; then
export BUILD_OSPRAY_VERSION=master;
export BUILD_OPENVKL_VERSION=master;
export BUILD_RKCOMMON_VERSION=master;
else
export BUILD_OSPRAY_VERSION=devel;
export BUILD_OPENVKL_VERSION=devel;
export BUILD_RKCOMMON_VERSION=devel;
fi
- export PATH=$PATH:/usr/lib64/mpich/bin/
- scripts/build_gitlab/linux.sh -DBUILD_OSPRAY_VERSION=$BUILD_OSPRAY_VERSION -DBUILD_OPENVKL_VERSION=$BUILD_OPENVKL_VERSION
- scripts/build_gitlab/linux.sh -DBUILD_OSPRAY_VERSION=$BUILD_OSPRAY_VERSION -DBUILD_OPENVKL_VERSION=$BUILD_OPENVKL_VERSION -DBUILD_RKCOMMON_VERSION=$BUILD_RKCOMMON_VERSION

build-centos8-openmpi:
<<: *build_job_docker
Expand All @@ -81,12 +87,14 @@ build-centos8-openmpi:
- if [[ "$CI_COMMIT_REF_NAME" == "master" ]]; then
export BUILD_OSPRAY_VERSION=master;
export BUILD_OPENVKL_VERSION=master;
export BUILD_RKCOMMON_VERSION=master;
else
export BUILD_OSPRAY_VERSION=devel;
export BUILD_OPENVKL_VERSION=devel;
export BUILD_RKCOMMON_VERSION=devel;
fi
- export PATH=$PATH:/usr/lib64/openmpi/bin/
- scripts/build_gitlab/linux.sh -DBUILD_OSPRAY_VERSION=$BUILD_OSPRAY_VERSION -DBUILD_OPENVKL_VERSION=$BUILD_OPENVKL_VERSION
- scripts/build_gitlab/linux.sh -DBUILD_OSPRAY_VERSION=$BUILD_OSPRAY_VERSION -DBUILD_OPENVKL_VERSION=$BUILD_OPENVKL_VERSION -DBUILD_RKCOMMON_VERSION=$BUILD_RKCOMMON_VERSION

build-scan-kw:
stage: build
Expand Down
7 changes: 7 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,13 @@
Version History
---------------

### Changes in v2.3.0:

- Significant improvements have been made to loading performance in
the MPI Offload device. Applications which make large numbers of API
calls or create many smaller geometries or volumes should see
substantial load time improvements.

### Changes in v2.2.0:

- Improve parallelism of framebuffer compression & decompression when
Expand Down
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ set(CMAKE_CXX_EXTENSIONS OFF)

set(CMAKE_POSITION_INDEPENDENT_CODE ON)

project(ospray_module_mpi VERSION 2.2.0 LANGUAGES C CXX)
project(ospray_module_mpi VERSION 2.3.0 LANGUAGES C CXX)

configure_file(
${CMAKE_SOURCE_DIR}/ospray/version.h.in
Expand Down
20 changes: 20 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -146,6 +146,26 @@ this port number to the device:
--osp:device-params=mpiMode:mpi-connect,host:<worker rank 0 host>,port:<port printed above>
```

If initializing the `mpiOffload` device manually, or passing parameters through
the command line, the following parameters can be set:


| Type | Name | Default | Description |
|:-------|:------------------------|--------------------:|:------------------------------------------------------------------|
| string | mpiMode | mpi | The mode to communicate with the worker ranks. `mpi` will assume you're launching the application and workers in the same mpi command (or split launch command). `mpi-listen` can be passed to the workers, indicating they should wait and listen for a connection from the application. `mpi-connect` can be passed to the application, indicating it should connect to the first worker at `host` and `port` to connect to the workers |
| string | host | none, optional | On the app rank, specify the host worker 0 is on to connect to in mpi-connect mode |
| int | port | none, optional | On the app rank, specify the port worker 0 is listening on to connect in mpi-connect mode |
| uint | maxCommandBufferEntries | 8192 | Set the max number of commands to buffer before submitting the command buffer to the workers |
| uint | commandBufferSize | 512MiB | Set the max command buffer size to allow. Units are in MiB. Max size is 1.8GiB |
| uint | maxInlineDataSize | 32MiB | Set the max size of an OSPData which can be inline'd into the command buffer instead of being sent separately. Max size is half the commandBufferSize. Units are in MiB |

: Parameters specific to the `mpiOffload` Device.

The `maxCommandBufferEntries`, `commandBufferSize`, and `maxInlineDataSize` can also
be set via the environment variables: `OSPRAY_MPI_MAX_COMMAND_BUFFER_ENTRIES`,
`OSPRAY_MPI_COMMAND_BUFFER_SIZE`, and `OSPRAY_MPI_MAX_INLINE_DATA_SIZE`,
respectively.

MPI Distributed Rendering
-------------------------

Expand Down
6 changes: 1 addition & 5 deletions common/MPICommon.h
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Copyright 2009-2019 Intel Corporation
// Copyright 2009-2020 Intel Corporation
// SPDX-License-Identifier: Apache-2.0

#pragma once
Expand Down Expand Up @@ -40,10 +40,6 @@
throw std::runtime_error( \
"in " + std::string(__PRETTY_FUNCTION__) + " : " + std::string(a))

// Log level at which extremely verbose MPI logging output will
// be written
#define OSPRAY_MPI_VERBOSE_LEVEL 3

#define OSPRAY_WORLD_GROUP_TAG 290374

namespace mpicommon {
Expand Down
Loading

0 comments on commit ee44450

Please sign in to comment.