Giter VIP home page Giter VIP logo

neuroh5's Introduction

neuroh5

A parallel HDF5-based library for storage and processing of large-scale graphs and neural cell model attributes.

Introduction

The neuroh5 library implements an HDF5-based format for storing neuronal morphology information, synaptic and connectivity information of large neural networks, and perform parallel graph partitioning and analysis.

neuroh5 assumes that synaptic connectivity between neurons in neuronal network models is represented as directed graphs stored as adjacency lists, where the vertices represent the neurons in the network and are identified by unsigned integers called unique global identifiers (gid).

Installation

Building and installing NeuroH5

NeuroH5 requires parallel HDF5, MPI, cmake. The Python module requires Python 3 and numpy.

To build the NeuroH5 C++ library and applications:

git clone https://github.com/iraikov/neuroh5.git
cd neuroh5
cmake .
make 

To build the python module:

git clone https://github.com/iraikov/neuroh5.git
cd neuroh5
CMAKE_BUILD_PARALLEL_LEVEL=8 \
  CMAKE_MPI_C_COMPILER=$(which mpicc) \
  CMAKE_MPI_CXX_COMPILER=$(which mpicxx) \
  pip install .

Basic concepts and terminology

Connectivity between neurons is described in terms of vertices and directed edges, where each vertex has an integer id associated with it, which corresponds to the id of the respective neuron in the network simulation. Each edge is identified by source and destination vertex, and a number of additional attributes, such as distance and synaptic weight. In addition, the vertices are organized in populations of neurons, where each population is comprised of the set of neurons that belong to the same biological type of neuron (such as granule cell or basket cell). Connectivity is organized in projections, where a projection is the set of connections between two populations, or withing the same population. A projection is identified by its source and destination populations, and all edges between those two populations.

Graph representation

An adjacency matrix is a square matrix where the elements of the matrix indicate whether pairs of vertices are connected or not in the graph. A sparse adjacency matrix representation explicitly stores only the source or only the destination vertices, and uses range data structures to indicate which vertices are connected. For example, in one type of sparse format the source dataset will contain only how many destination vertices are associated with a given source, but will not explicitly store the source vertex ids.

Our initial implementation of an HDF5-based graph representation includes two types of representation. The first one is a direct edge-list-type representation where source and destination indices are explicitly represented as HDF5 datasets. The second one is what we refer to as Destination Block Sparse format, which is a type of sparse adjacency matrix representation where the connectivity is additionally divided into blocks of contiguous indices to account for potential gaps in connectivity (i.e. ranges of indices that are not connected). In the next section, we present the Destination Block Sparse format, and present details of the implementation and initial performance metrics.

Destination Block Sparse connectivity format

In the Destination Block Sparse format the destination indices are stored in blocks (of destinations). The following invariants hold:

  1. The destination indices in a block are contiguous.
  2. The number of destinations per block may vary from block to block.

The Destination Block Sparse format consists of the following datasets:

  • Source Index : This array holds the indices of all source vertices in the projection. It's length is equal to the number of edges in the projection.

  • Destination Index : This array holds the first destination index in each block. Its length is equal to the number of blocks.

  • Destination Block Pointer : This array holds offsets into the Destination Pointer array. Its length is equal to the number of blocks plus one. The number of destinations in block i equals: Destination Block Pointer[i + 1] – Destination Block Pointer[i] The destination index of destination j in block i is Destination Index[i] + j.

  • Destination Pointer : This array holds offsets into the Source Index and edge attribute datasets. Its length is equal to the sum of the destination counts in all blocks plus one. For each destination block, Destination Pointer stores one offset per destination in the block. The number of source entries for destination j of block i equals:

    Destination Pointer[Destination Block Pointer[i] + j + 1] - estination Pointer[Destination Block Pointer[i] + j]

Edge Attributes

Several datasets are defined that hold the non-zero edge attributes of a projection. Each edge attribute dataset is of the same length as the Source Index datasets (i.e. the number of edges in the projection).

neuroh5's People

Contributors

bendichter avatar frthjf avatar gheber avatar iraikov avatar neurosutras avatar skim0119 avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

neuroh5's Issues

Issue in setting H5Pset_dxpl_mpio

Description

For small network cases, I'm consistently getting the error like below:

append_edge_attribute: error in H5Pset_dxpl_mpio: Assertion 'status >= 0' failed in file '/opt/neuroh5/include/hdf5/hdf5_edge_attributes.hh' line 126
terminate called after throwing an instance of 'AssertionFailureException'
  what():  append_edge_attribute: error in H5Pset_dxpl_mpio: Assertion 'status >= 0' failed in file '/opt/neuroh5/include/hdf5/hdf5_edge_attributes.hh' line 126

I believe the bug is when size=1, because H5Pset_dxpl_mpio will not be called while throw_assert will still check uninitialized status >= 0.

Location

if (size > 1)
{
status = H5Pset_dxpl_mpio (wapl, H5FD_MPIO_COLLECTIVE);
}
throw_assert(status >= 0,
"append_edge_attribute: error in H5Pset_dxpl_mpio");

Suggestion

Move throw_assert inside the if block, or initialize status beforehand. I believe the purpose of throw_assert is to check if H5Pset_dxpl_mpio is correctly set, so it only needs to check inside the if-block.

make fails due to invalid template value

To reproduce, clone the repo and use module load phdf5/1.10.4

cmake . 
make
Error log
```sh
shell()$ cd neuroh5/
shell()$ cmake .
-- The C compiler identification is GNU 4.8.5
-- The CXX compiler identification is GNU 4.8.5
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found HDF5: /opt/apps/intel19/impi19_0/phdf5/1.10.4/x86_64/lib/libhdf5.so;/opt/apps/intel19/impi19_0/phdf5/1.10.4/x86_64/lib/libsz.so;/usr/lib64/libz.so;/opt/apps/intel19/impi19_0/phdf5/1.10.4/x86_64/lib/libsz.so;/usr/lib64/libz.so;/usr/lib64/libdl.so;/usr/lib64/libm.so (found version "1.10.4")  
found HDF5 version 1.10.4
-- Found MPI_C: /opt/intel/compilers_and_libraries_2020.4.304/linux/mpi/intel64/lib/release/libmpi.so (found version "3.1") 
CMake Warning (dev) at /opt/apps/cmake/3.24.2/share/cmake-3.24/Modules/FindMPI.cmake:1475 (option):
  Policy CMP0077 is not set: option() honors normal variables.  Run "cmake
  --help-policy CMP0077" for policy details.  Use the cmake_policy command to
  set the policy and suppress this warning.

  For compatibility with older versions of CMake, option is clearing the
  normal variable 'MPI_CXX_SKIP_MPICXX'.
Call Stack (most recent call first):
  CMakeLists.txt:66 (find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Found MPI_CXX: /opt/intel/compilers_and_libraries_2020.4.304/linux/mpi/intel64/lib/libmpicxx.so (found version "3.1") 
-- Found MPI: TRUE (found version "3.1")  
found MPI version: 3.1
MPI libraries: /opt/intel/compilers_and_libraries_2020.4.304/linux/mpi/intel64/lib/release/libmpi.so;/usr/lib64/librt.so;/usr/lib64/libpthread.so;/usr/lib64/libdl.so
-- Found Python: /opt/apps/intel19/python3/3.9.2/bin/python3.9 (found suitable version "3.9.2", minimum required is "3") found components: Interpreter Development Development.Module Development.Embed 
-- Python_EXECUTABLE="/opt/apps/intel19/python3/3.9.2/bin/python3.9"
found NumPy include dir /home1/08818/fg14/.local/lib/python3.9/site-packages/numpy/core/include
found mpi4py include dir /opt/apps/intel19/impi19_0/python3/3.9.2/lib/python3.9/site-packages/mpi4py/include
-- Could NOT find JeMalloc (missing: JEMALLOC_LIBRARIES JEMALLOC_INCLUDE_DIR) 
-- ParMETIS library: PARMETIS_LIBRARY-NOTFOUND
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE  
-- Could NOT find GTest (missing: GTEST_LIBRARY GTEST_INCLUDE_DIR GTEST_MAIN_LIBRARY) 
CMake Warning at CMakeLists.txt:153 (message):
  gtest library not found, tests will not be run


-- Install prefix: /usr/local
-- Build type: RelWithDebInfo
-- Building tests: ON
-- Building documentation: 
-- Building python bindings: ON
-- Configuring done
-- Generating done
-- Build files have been written to: /path/to/neuroh5
shell(1019)$ make
[  1%] Building CXX object CMakeFiles/neuroh5.cell.dir/src/cell/append_tree.cc.o
/path/to/neuroh5/src/cell/append_tree.cc: In function ‘int neuroh5::cell::append_trees(MPI_Comm, MPI_Comm, hid_t, const string&, const CELL_IDX_T&, std::forward_list<std::tuple<unsigned int, std::deque<short unsigned int, std::allocator<short unsigned int> >, std::deque<short unsigned int, std::allocator<short unsigned int> >, std::deque<short unsigned int, std::allocator<short unsigned int> >, std::deque<float, std::allocator<float> >, std::deque<float, std::allocator<float> >, std::deque<float, std::allocator<float> >, std::deque<float, std::allocator<float> >, std::deque<signed char, std::allocator<signed char> >, std::deque<int, std::allocator<int> >, std::deque<signed char, std::allocator<signed char> > > >&, const std::set<long unsigned int>&, neuroh5::CellPtr, size_t, size_t)’:
/path/to/neuroh5/src/cell/append_tree.cc:416:13: warning: unused variable ‘file’ [-Wunused-variable]
       hid_t file;
             ^
In file included from /path/to/neuroh5/include/cell/cell_attributes.hh:15:0,
                 from /path/to/neuroh5/include/cell/append_tree.hh:10,
                 from /path/to/neuroh5/src/cell/append_tree.cc:19:
/path/to/neuroh5/include/mpi/alltoallv_template.hh: In instantiation of ‘int neuroh5::mpi::alltoallv_vector(MPI_Comm, MPI_Datatype, const std::vector<int>&, const std::vector<int>&, const std::vector<_RealType>&, std::vector<int>&, std::vector<int>&, std::vector<_RealType>&) [with T = char; MPI_Comm = int; MPI_Datatype = int]’:
/path/to/neuroh5/src/cell/append_tree.cc:356:9:   required from here
/path/to/neuroh5/include/mpi/alltoallv_template.hh:42:32: warning: variable ‘rank’ set but not used [-Wunused-but-set-variable]
       int srank, ssize; size_t rank, size;
                                ^
[  2%] Building CXX object CMakeFiles/neuroh5.cell.dir/src/cell/cell_attributes.cc.o
/path/to/neuroh5/src/cell/cell_attributes.cc: In function ‘void neuroh5::cell::scatter_read_cell_attribute_selection(MPI_Comm, const string&, int, const string&, const std::set<std::basic_string<char> >&, const string&, const CELL_IDX_T&, const std::vector<unsigned int>&, neuroh5::data::NamedAttrMap&)’:
/path/to/neuroh5/src/cell/cell_attributes.cc:1593:28: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         for (size_t p=0; p<size; p++)
                            ^
/path/to/neuroh5/src/cell/cell_attributes.cc:1608:28: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         for (rank_t p=0; p<size; p++)
                            ^
/path/to/neuroh5/src/cell/cell_attributes.cc:1610:52: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
             for (size_t i = displs[p]; i<displs[p+1]; i++)
                                                    ^
/path/to/neuroh5/src/cell/cell_attributes.cc:1633:26: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
       if (io_data_size > size)
                          ^
/path/to/neuroh5/src/cell/cell_attributes.cc:1707:34: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         if (io_root_data_rank == rank)
                                  ^
/path/to/neuroh5/src/cell/cell_attributes.cc:1714:34: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         if (io_root_data_rank != rank)
                                  ^
/path/to/neuroh5/src/cell/cell_attributes.cc:1720:22: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         if ((rank != io_root_data_rank) && (attr_names_sendbuf.size() > 0))
                      ^
/path/to/neuroh5/src/cell/cell_attributes.cc:1766:30: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
       for (rank_t p = 1; p < size; ++p)
                              ^
/path/to/neuroh5/src/cell/cell_attributes.cc:1567:14: warning: unused variable ‘status’ [-Wunused-variable]
       herr_t status; 
              ^
In file included from /path/to/neuroh5/include/cell/cell_attributes.hh:15:0,
                 from /path/to/neuroh5/src/cell/cell_attributes.cc:15:
/path/to/neuroh5/include/mpi/alltoallv_template.hh: In instantiation of ‘int neuroh5::mpi::alltoallv_vector(MPI_Comm, MPI_Datatype, const std::vector<int>&, const std::vector<int>&, const std::vector<_RealType>&, std::vector<int>&, std::vector<int>&, std::vector<_RealType>&) [with T = char; MPI_Comm = int; MPI_Datatype = int]’:
/path/to/neuroh5/src/cell/cell_attributes.cc:1083:7:   required from here
/path/to/neuroh5/include/mpi/alltoallv_template.hh:42:32: warning: variable ‘rank’ set but not used [-Wunused-but-set-variable]
       int srank, ssize; size_t rank, size;
                                ^
In file included from /path/to/neuroh5/include/cell/cell_attributes.hh:19:0,
                 from /path/to/neuroh5/src/cell/cell_attributes.cc:15:
/path/to/neuroh5/include/hdf5/hdf5_cell_attributes.hh: In instantiation of ‘herr_t neuroh5::hdf5::read_cell_attribute_selection(MPI_Comm, const hid_t&, const string&, neuroh5::CELL_IDX_T, const std::vector<unsigned int>&, const std::vector<unsigned int>&, const std::vector<long unsigned int>&, std::vector<unsigned int>&, std::vector<long unsigned int>&, std::vector<_RealType>&) [with T = unsigned int; herr_t = int; MPI_Comm = int; hid_t = long int; std::string = std::basic_string<char>; neuroh5::CELL_IDX_T = unsigned int]’:
/path/to/neuroh5/src/cell/cell_attributes.cc:1459:84:   required from here
/path/to/neuroh5/include/hdf5/hdf5_cell_attributes.hh:233:13: warning: unused variable ‘value_start’ [-Wunused-variable]
     hsize_t value_start=range.first;
             ^
/path/to/neuroh5/include/hdf5/hdf5_cell_attributes.hh: In instantiation of ‘herr_t neuroh5::hdf5::read_cell_attribute_selection(MPI_Comm, const hid_t&, const string&, neuroh5::CELL_IDX_T, const std::vector<unsigned int>&, const std::vector<unsigned int>&, const std::vector<long unsigned int>&, std::vector<unsigned int>&, std::vector<long unsigned int>&, std::vector<_RealType>&) [with T = short unsigned int; herr_t = int; MPI_Comm = int; hid_t = long int; std::string = std::basic_string<char>; neuroh5::CELL_IDX_T = unsigned int]’:
/path/to/neuroh5/src/cell/cell_attributes.cc:1467:84:   required from here
/path/to/neuroh5/include/hdf5/hdf5_cell_attributes.hh:233:13: warning: unused variable ‘value_start’ [-Wunused-variable]
/path/to/neuroh5/include/hdf5/hdf5_cell_attributes.hh: In instantiation of ‘herr_t neuroh5::hdf5::read_cell_attribute_selection(MPI_Comm, const hid_t&, const string&, neuroh5::CELL_IDX_T, const std::vector<unsigned int>&, const std::vector<unsigned int>&, const std::vector<long unsigned int>&, std::vector<unsigned int>&, std::vector<long unsigned int>&, std::vector<_RealType>&) [with T = unsigned char; herr_t = int; MPI_Comm = int; hid_t = long int; std::string = std::basic_string<char>; neuroh5::CELL_IDX_T = unsigned int]’:
/path/to/neuroh5/src/cell/cell_attributes.cc:1475:83:   required from here
/path/to/neuroh5/include/hdf5/hdf5_cell_attributes.hh:233:13: warning: unused variable ‘value_start’ [-Wunused-variable]
/path/to/neuroh5/include/hdf5/hdf5_cell_attributes.hh: In instantiation of ‘herr_t neuroh5::hdf5::read_cell_attribute_selection(MPI_Comm, const hid_t&, const string&, neuroh5::CELL_IDX_T, const std::vector<unsigned int>&, const std::vector<unsigned int>&, const std::vector<long unsigned int>&, std::vector<unsigned int>&, std::vector<long unsigned int>&, std::vector<_RealType>&) [with T = int; herr_t = int; MPI_Comm = int; hid_t = long int; std::string = std::basic_string<char>; neuroh5::CELL_IDX_T = unsigned int]’:
/path/to/neuroh5/src/cell/cell_attributes.cc:1491:83:   required from here
/path/to/neuroh5/include/hdf5/hdf5_cell_attributes.hh:233:13: warning: unused variable ‘value_start’ [-Wunused-variable]
/path/to/neuroh5/include/hdf5/hdf5_cell_attributes.hh: In instantiation of ‘herr_t neuroh5::hdf5::read_cell_attribute_selection(MPI_Comm, const hid_t&, const string&, neuroh5::CELL_IDX_T, const std::vector<unsigned int>&, const std::vector<unsigned int>&, const std::vector<long unsigned int>&, std::vector<unsigned int>&, std::vector<long unsigned int>&, std::vector<_RealType>&) [with T = short int; herr_t = int; MPI_Comm = int; hid_t = long int; std::string = std::basic_string<char>; neuroh5::CELL_IDX_T = unsigned int]’:
/path/to/neuroh5/src/cell/cell_attributes.cc:1499:83:   required from here
/path/to/neuroh5/include/hdf5/hdf5_cell_attributes.hh:233:13: warning: unused variable ‘value_start’ [-Wunused-variable]
/path/to/neuroh5/include/hdf5/hdf5_cell_attributes.hh: In instantiation of ‘herr_t neuroh5::hdf5::read_cell_attribute_selection(MPI_Comm, const hid_t&, const string&, neuroh5::CELL_IDX_T, const std::vector<unsigned int>&, const std::vector<unsigned int>&, const std::vector<long unsigned int>&, std::vector<unsigned int>&, std::vector<long unsigned int>&, std::vector<_RealType>&) [with T = signed char; herr_t = int; MPI_Comm = int; hid_t = long int; std::string = std::basic_string<char>; neuroh5::CELL_IDX_T = unsigned int]’:
/path/to/neuroh5/src/cell/cell_attributes.cc:1507:82:   required from here
/path/to/neuroh5/include/hdf5/hdf5_cell_attributes.hh:233:13: warning: unused variable ‘value_start’ [-Wunused-variable]
/path/to/neuroh5/include/hdf5/hdf5_cell_attributes.hh: In instantiation of ‘herr_t neuroh5::hdf5::read_cell_attribute_selection(MPI_Comm, const hid_t&, const string&, neuroh5::CELL_IDX_T, const std::vector<unsigned int>&, const std::vector<unsigned int>&, const std::vector<long unsigned int>&, std::vector<unsigned int>&, std::vector<long unsigned int>&, std::vector<_RealType>&) [with T = float; herr_t = int; MPI_Comm = int; hid_t = long int; std::string = std::basic_string<char>; neuroh5::CELL_IDX_T = unsigned int]’:
/path/to/neuroh5/src/cell/cell_attributes.cc:1521:79:   required from here
/path/to/neuroh5/include/hdf5/hdf5_cell_attributes.hh:233:13: warning: unused variable ‘value_start’ [-Wunused-variable]
In file included from /path/to/neuroh5/src/cell/cell_attributes.cc:15:0:
/path/to/neuroh5/include/cell/cell_attributes.hh: In instantiation of ‘void neuroh5::cell::append_cell_attribute_map(MPI_Comm, const hid_t&, const string&, const string&, const CELL_IDX_T&, const string&, const std::map<unsigned int, std::deque<_Tp> >&, neuroh5::data::optional_hid, const std::set<long unsigned int>&, neuroh5::CellIndex, neuroh5::CellPtr, size_t, size_t, size_t) [with T = float; MPI_Comm = int; hid_t = long int; std::string = std::basic_string<char>; neuroh5::CELL_IDX_T = unsigned int; neuroh5::data::optional_hid = compact_optional_ns::compact_optional<neuroh5::data::hid_empty_value>; size_t = long unsigned int]’:
/path/to/neuroh5/src/cell/cell_attributes.cc:1877:91:   required from here
/path/to/neuroh5/include/cell/cell_attributes.hh:520:30: warning: unused variable ‘gid’ [-Wunused-variable]
             const CELL_IDX_T gid = element.first;
                              ^
/path/to/neuroh5/include/cell/cell_attributes.hh: In instantiation of ‘void neuroh5::cell::append_cell_attribute_map(MPI_Comm, const hid_t&, const string&, const string&, const CELL_IDX_T&, const string&, const std::map<unsigned int, std::deque<_Tp> >&, neuroh5::data::optional_hid, const std::set<long unsigned int>&, neuroh5::CellIndex, neuroh5::CellPtr, size_t, size_t, size_t) [with T = unsigned int; MPI_Comm = int; hid_t = long int; std::string = std::basic_string<char>; neuroh5::CELL_IDX_T = unsigned int; neuroh5::data::optional_hid = compact_optional_ns::compact_optional<neuroh5::data::hid_empty_value>; size_t = long unsigned int]’:
/path/to/neuroh5/src/cell/cell_attributes.cc:1885:94:   required from here
/path/to/neuroh5/include/cell/cell_attributes.hh:520:30: warning: unused variable ‘gid’ [-Wunused-variable]
/path/to/neuroh5/include/cell/cell_attributes.hh: In instantiation of ‘void neuroh5::cell::append_cell_attribute_map(MPI_Comm, const hid_t&, const string&, const string&, const CELL_IDX_T&, const string&, const std::map<unsigned int, std::deque<_Tp> >&, neuroh5::data::optional_hid, const std::set<long unsigned int>&, neuroh5::CellIndex, neuroh5::CellPtr, size_t, size_t, size_t) [with T = short unsigned int; MPI_Comm = int; hid_t = long int; std::string = std::basic_string<char>; neuroh5::CELL_IDX_T = unsigned int; neuroh5::data::optional_hid = compact_optional_ns::compact_optional<neuroh5::data::hid_empty_value>; size_t = long unsigned int]’:
/path/to/neuroh5/src/cell/cell_attributes.cc:1893:94:   required from here
/path/to/neuroh5/include/cell/cell_attributes.hh:520:30: warning: unused variable ‘gid’ [-Wunused-variable]
/path/to/neuroh5/include/cell/cell_attributes.hh: In instantiation of ‘void neuroh5::cell::append_cell_attribute_map(MPI_Comm, const hid_t&, const string&, const string&, const CELL_IDX_T&, const string&, const std::map<unsigned int, std::deque<_Tp> >&, neuroh5::data::optional_hid, const std::set<long unsigned int>&, neuroh5::CellIndex, neuroh5::CellPtr, size_t, size_t, size_t) [with T = unsigned char; MPI_Comm = int; hid_t = long int; std::string = std::basic_string<char>; neuroh5::CELL_IDX_T = unsigned int; neuroh5::data::optional_hid = compact_optional_ns::compact_optional<neuroh5::data::hid_empty_value>; size_t = long unsigned int]’:
/path/to/neuroh5/src/cell/cell_attributes.cc:1901:93:   required from here
/path/to/neuroh5/include/cell/cell_attributes.hh:520:30: warning: unused variable ‘gid’ [-Wunused-variable]
/path/to/neuroh5/include/cell/cell_attributes.hh: In instantiation of ‘void neuroh5::cell::append_cell_attribute_map(MPI_Comm, const hid_t&, const string&, const string&, const CELL_IDX_T&, const string&, const std::map<unsigned int, std::deque<_Tp> >&, neuroh5::data::optional_hid, const std::set<long unsigned int>&, neuroh5::CellIndex, neuroh5::CellPtr, size_t, size_t, size_t) [with T = int; MPI_Comm = int; hid_t = long int; std::string = std::basic_string<char>; neuroh5::CELL_IDX_T = unsigned int; neuroh5::data::optional_hid = compact_optional_ns::compact_optional<neuroh5::data::hid_empty_value>; size_t = long unsigned int]’:
/path/to/neuroh5/src/cell/cell_attributes.cc:1909:95:   required from here
/path/to/neuroh5/include/cell/cell_attributes.hh:520:30: warning: unused variable ‘gid’ [-Wunused-variable]
/path/to/neuroh5/include/cell/cell_attributes.hh: In instantiation of ‘void neuroh5::cell::append_cell_attribute_map(MPI_Comm, const hid_t&, const string&, const string&, const CELL_IDX_T&, const string&, const std::map<unsigned int, std::deque<_Tp> >&, neuroh5::data::optional_hid, const std::set<long unsigned int>&, neuroh5::CellIndex, neuroh5::CellPtr, size_t, size_t, size_t) [with T = short int; MPI_Comm = int; hid_t = long int; std::string = std::basic_string<char>; neuroh5::CELL_IDX_T = unsigned int; neuroh5::data::optional_hid = compact_optional_ns::compact_optional<neuroh5::data::hid_empty_value>; size_t = long unsigned int]’:
/path/to/neuroh5/src/cell/cell_attributes.cc:1917:95:   required from here
/path/to/neuroh5/include/cell/cell_attributes.hh:520:30: warning: unused variable ‘gid’ [-Wunused-variable]
/path/to/neuroh5/include/cell/cell_attributes.hh: In instantiation of ‘void neuroh5::cell::append_cell_attribute_map(MPI_Comm, const hid_t&, const string&, const string&, const CELL_IDX_T&, const string&, const std::map<unsigned int, std::deque<_Tp> >&, neuroh5::data::optional_hid, const std::set<long unsigned int>&, neuroh5::CellIndex, neuroh5::CellPtr, size_t, size_t, size_t) [with T = signed char; MPI_Comm = int; hid_t = long int; std::string = std::basic_string<char>; neuroh5::CELL_IDX_T = unsigned int; neuroh5::data::optional_hid = compact_optional_ns::compact_optional<neuroh5::data::hid_empty_value>; size_t = long unsigned int]’:
/path/to/neuroh5/src/cell/cell_attributes.cc:1925:94:   required from here
/path/to/neuroh5/include/cell/cell_attributes.hh:520:30: warning: unused variable ‘gid’ [-Wunused-variable]
In file included from /path/to/neuroh5/src/cell/cell_attributes.cc:12:0:
/path/to/neuroh5/include/hdf5/read_template.hh: In instantiation of ‘herr_t neuroh5::hdf5::read_selection(hid_t, const string&, hid_t, const std::vector<std::pair<long long unsigned int, long long unsigned int> >&, std::vector<_RealType>&, hid_t) [with T = unsigned int; herr_t = int; hid_t = long int; std::string = std::basic_string<char>]’:
/path/to/neuroh5/include/hdf5/hdf5_cell_attributes.hh:259:83:   required from ‘herr_t neuroh5::hdf5::read_cell_attribute_selection(MPI_Comm, const hid_t&, const string&, neuroh5::CELL_IDX_T, const std::vector<unsigned int>&, const std::vector<unsigned int>&, const std::vector<long unsigned int>&, std::vector<unsigned int>&, std::vector<long unsigned int>&, std::vector<_RealType>&) [with T = unsigned int; herr_t = int; MPI_Comm = int; hid_t = long int; std::string = std::basic_string<char>; neuroh5::CELL_IDX_T = unsigned int]’
/path/to/neuroh5/src/cell/cell_attributes.cc:1459:84:   required from here
/path/to/neuroh5/include/hdf5/read_template.hh:93:19: warning: unused variable ‘start’ [-Wunused-variable]
           hsize_t start = range.first;
                   ^
/path/to/neuroh5/include/hdf5/read_template.hh: In instantiation of ‘herr_t neuroh5::hdf5::read_selection(hid_t, const string&, hid_t, const std::vector<std::pair<long long unsigned int, long long unsigned int> >&, std::vector<_RealType>&, hid_t) [with T = short unsigned int; herr_t = int; hid_t = long int; std::string = std::basic_string<char>]’:
/path/to/neuroh5/include/hdf5/hdf5_cell_attributes.hh:259:83:   required from ‘herr_t neuroh5::hdf5::read_cell_attribute_selection(MPI_Comm, const hid_t&, const string&, neuroh5::CELL_IDX_T, const std::vector<unsigned int>&, const std::vector<unsigned int>&, const std::vector<long unsigned int>&, std::vector<unsigned int>&, std::vector<long unsigned int>&, std::vector<_RealType>&) [with T = short unsigned int; herr_t = int; MPI_Comm = int; hid_t = long int; std::string = std::basic_string<char>; neuroh5::CELL_IDX_T = unsigned int]’
/path/to/neuroh5/src/cell/cell_attributes.cc:1467:84:   required from here
/path/to/neuroh5/include/hdf5/read_template.hh:93:19: warning: unused variable ‘start’ [-Wunused-variable]
/path/to/neuroh5/include/hdf5/read_template.hh: In instantiation of ‘herr_t neuroh5::hdf5::read_selection(hid_t, const string&, hid_t, const std::vector<std::pair<long long unsigned int, long long unsigned int> >&, std::vector<_RealType>&, hid_t) [with T = unsigned char; herr_t = int; hid_t = long int; std::string = std::basic_string<char>]’:
/path/to/neuroh5/include/hdf5/hdf5_cell_attributes.hh:259:83:   required from ‘herr_t neuroh5::hdf5::read_cell_attribute_selection(MPI_Comm, const hid_t&, const string&, neuroh5::CELL_IDX_T, const std::vector<unsigned int>&, const std::vector<unsigned int>&, const std::vector<long unsigned int>&, std::vector<unsigned int>&, std::vector<long unsigned int>&, std::vector<_RealType>&) [with T = unsigned char; herr_t = int; MPI_Comm = int; hid_t = long int; std::string = std::basic_string<char>; neuroh5::CELL_IDX_T = unsigned int]’
/path/to/neuroh5/src/cell/cell_attributes.cc:1475:83:   required from here
/path/to/neuroh5/include/hdf5/read_template.hh:93:19: warning: unused variable ‘start’ [-Wunused-variable]
/path/to/neuroh5/include/hdf5/read_template.hh: In instantiation of ‘herr_t neuroh5::hdf5::read_selection(hid_t, const string&, hid_t, const std::vector<std::pair<long long unsigned int, long long unsigned int> >&, std::vector<_RealType>&, hid_t) [with T = int; herr_t = int; hid_t = long int; std::string = std::basic_string<char>]’:
/path/to/neuroh5/include/hdf5/hdf5_cell_attributes.hh:259:83:   required from ‘herr_t neuroh5::hdf5::read_cell_attribute_selection(MPI_Comm, const hid_t&, const string&, neuroh5::CELL_IDX_T, const std::vector<unsigned int>&, const std::vector<unsigned int>&, const std::vector<long unsigned int>&, std::vector<unsigned int>&, std::vector<long unsigned int>&, std::vector<_RealType>&) [with T = int; herr_t = int; MPI_Comm = int; hid_t = long int; std::string = std::basic_string<char>; neuroh5::CELL_IDX_T = unsigned int]’
/path/to/neuroh5/src/cell/cell_attributes.cc:1491:83:   required from here
/path/to/neuroh5/include/hdf5/read_template.hh:93:19: warning: unused variable ‘start’ [-Wunused-variable]
/path/to/neuroh5/include/hdf5/read_template.hh: In instantiation of ‘herr_t neuroh5::hdf5::read_selection(hid_t, const string&, hid_t, const std::vector<std::pair<long long unsigned int, long long unsigned int> >&, std::vector<_RealType>&, hid_t) [with T = short int; herr_t = int; hid_t = long int; std::string = std::basic_string<char>]’:
/path/to/neuroh5/include/hdf5/hdf5_cell_attributes.hh:259:83:   required from ‘herr_t neuroh5::hdf5::read_cell_attribute_selection(MPI_Comm, const hid_t&, const string&, neuroh5::CELL_IDX_T, const std::vector<unsigned int>&, const std::vector<unsigned int>&, const std::vector<long unsigned int>&, std::vector<unsigned int>&, std::vector<long unsigned int>&, std::vector<_RealType>&) [with T = short int; herr_t = int; MPI_Comm = int; hid_t = long int; std::string = std::basic_string<char>; neuroh5::CELL_IDX_T = unsigned int]’
/path/to/neuroh5/src/cell/cell_attributes.cc:1499:83:   required from here
/path/to/neuroh5/include/hdf5/read_template.hh:93:19: warning: unused variable ‘start’ [-Wunused-variable]
/path/to/neuroh5/include/hdf5/read_template.hh: In instantiation of ‘herr_t neuroh5::hdf5::read_selection(hid_t, const string&, hid_t, const std::vector<std::pair<long long unsigned int, long long unsigned int> >&, std::vector<_RealType>&, hid_t) [with T = signed char; herr_t = int; hid_t = long int; std::string = std::basic_string<char>]’:
/path/to/neuroh5/include/hdf5/hdf5_cell_attributes.hh:259:83:   required from ‘herr_t neuroh5::hdf5::read_cell_attribute_selection(MPI_Comm, const hid_t&, const string&, neuroh5::CELL_IDX_T, const std::vector<unsigned int>&, const std::vector<unsigned int>&, const std::vector<long unsigned int>&, std::vector<unsigned int>&, std::vector<long unsigned int>&, std::vector<_RealType>&) [with T = signed char; herr_t = int; MPI_Comm = int; hid_t = long int; std::string = std::basic_string<char>; neuroh5::CELL_IDX_T = unsigned int]’
/path/to/neuroh5/src/cell/cell_attributes.cc:1507:82:   required from here
/path/to/neuroh5/include/hdf5/read_template.hh:93:19: warning: unused variable ‘start’ [-Wunused-variable]
/path/to/neuroh5/include/hdf5/read_template.hh: In instantiation of ‘herr_t neuroh5::hdf5::read_selection(hid_t, const string&, hid_t, const std::vector<std::pair<long long unsigned int, long long unsigned int> >&, std::vector<_RealType>&, hid_t) [with T = float; herr_t = int; hid_t = long int; std::string = std::basic_string<char>]’:
/path/to/neuroh5/include/hdf5/hdf5_cell_attributes.hh:259:83:   required from ‘herr_t neuroh5::hdf5::read_cell_attribute_selection(MPI_Comm, const hid_t&, const string&, neuroh5::CELL_IDX_T, const std::vector<unsigned int>&, const std::vector<unsigned int>&, const std::vector<long unsigned int>&, std::vector<unsigned int>&, std::vector<long unsigned int>&, std::vector<_RealType>&) [with T = float; herr_t = int; MPI_Comm = int; hid_t = long int; std::string = std::basic_string<char>; neuroh5::CELL_IDX_T = unsigned int]’
/path/to/neuroh5/src/cell/cell_attributes.cc:1521:79:   required from here
/path/to/neuroh5/include/hdf5/read_template.hh:93:19: warning: unused variable ‘start’ [-Wunused-variable]
In file included from /path/to/neuroh5/include/cell/cell_attributes.hh:15:0,
                 from /path/to/neuroh5/src/cell/cell_attributes.cc:15:
/path/to/neuroh5/include/mpi/alltoallv_template.hh: In instantiation of ‘int neuroh5::mpi::alltoallv_vector(MPI_Comm, MPI_Datatype, const std::vector<int>&, const std::vector<int>&, const std::vector<_RealType>&, std::vector<int>&, std::vector<int>&, std::vector<_RealType>&) [with T = unsigned int; MPI_Comm = int; MPI_Datatype = int]’:
/path/to/neuroh5/include/cell/cell_attributes.hh:472:9:   required from ‘void neuroh5::cell::append_cell_attribute_map(MPI_Comm, const hid_t&, const string&, const string&, const CELL_IDX_T&, const string&, const std::map<unsigned int, std::deque<_Tp> >&, neuroh5::data::optional_hid, const std::set<long unsigned int>&, neuroh5::CellIndex, neuroh5::CellPtr, size_t, size_t, size_t) [with T = float; MPI_Comm = int; hid_t = long int; std::string = std::basic_string<char>; neuroh5::CELL_IDX_T = unsigned int; neuroh5::data::optional_hid = compact_optional_ns::compact_optional<neuroh5::data::hid_empty_value>; size_t = long unsigned int]’
/path/to/neuroh5/src/cell/cell_attributes.cc:1877:91:   required from here
/path/to/neuroh5/include/mpi/alltoallv_template.hh:42:32: warning: variable ‘rank’ set but not used [-Wunused-but-set-variable]
       int srank, ssize; size_t rank, size;
                                ^
/path/to/neuroh5/include/mpi/alltoallv_template.hh: In instantiation of ‘int neuroh5::mpi::alltoallv_vector(MPI_Comm, MPI_Datatype, const std::vector<int>&, const std::vector<int>&, const std::vector<_RealType>&, std::vector<int>&, std::vector<int>&, std::vector<_RealType>&) [with T = long unsigned int; MPI_Comm = int; MPI_Datatype = int]’:
/path/to/neuroh5/include/cell/cell_attributes.hh:484:9:   required from ‘void neuroh5::cell::append_cell_attribute_map(MPI_Comm, const hid_t&, const string&, const string&, const CELL_IDX_T&, const string&, const std::map<unsigned int, std::deque<_Tp> >&, neuroh5::data::optional_hid, const std::set<long unsigned int>&, neuroh5::CellIndex, neuroh5::CellPtr, size_t, size_t, size_t) [with T = float; MPI_Comm = int; hid_t = long int; std::string = std::basic_string<char>; neuroh5::CELL_IDX_T = unsigned int; neuroh5::data::optional_hid = compact_optional_ns::compact_optional<neuroh5::data::hid_empty_value>; size_t = long unsigned int]’
/path/to/neuroh5/src/cell/cell_attributes.cc:1877:91:   required from here
/path/to/neuroh5/include/mpi/alltoallv_template.hh:42:32: warning: variable ‘rank’ set but not used [-Wunused-but-set-variable]
/path/to/neuroh5/include/mpi/alltoallv_template.hh: In instantiation of ‘int neuroh5::mpi::alltoallv_vector(MPI_Comm, MPI_Datatype, const std::vector<int>&, const std::vector<int>&, const std::vector<_RealType>&, std::vector<int>&, std::vector<int>&, std::vector<_RealType>&) [with T = float; MPI_Comm = int; MPI_Datatype = int]’:
/path/to/neuroh5/include/cell/cell_attributes.hh:531:9:   required from ‘void neuroh5::cell::append_cell_attribute_map(MPI_Comm, const hid_t&, const string&, const string&, const CELL_IDX_T&, const string&, const std::map<unsigned int, std::deque<_Tp> >&, neuroh5::data::optional_hid, const std::set<long unsigned int>&, neuroh5::CellIndex, neuroh5::CellPtr, size_t, size_t, size_t) [with T = float; MPI_Comm = int; hid_t = long int; std::string = std::basic_string<char>; neuroh5::CELL_IDX_T = unsigned int; neuroh5::data::optional_hid = compact_optional_ns::compact_optional<neuroh5::data::hid_empty_value>; size_t = long unsigned int]’
/path/to/neuroh5/src/cell/cell_attributes.cc:1877:91:   required from here
/path/to/neuroh5/include/mpi/alltoallv_template.hh:42:32: warning: variable ‘rank’ set but not used [-Wunused-but-set-variable]
/path/to/neuroh5/include/mpi/alltoallv_template.hh: In instantiation of ‘int neuroh5::mpi::alltoallv_vector(MPI_Comm, MPI_Datatype, const std::vector<int>&, const std::vector<int>&, const std::vector<_RealType>&, std::vector<int>&, std::vector<int>&, std::vector<_RealType>&) [with T = short unsigned int; MPI_Comm = int; MPI_Datatype = int]’:
/path/to/neuroh5/include/cell/cell_attributes.hh:531:9:   required from ‘void neuroh5::cell::append_cell_attribute_map(MPI_Comm, const hid_t&, const string&, const string&, const CELL_IDX_T&, const string&, const std::map<unsigned int, std::deque<_Tp> >&, neuroh5::data::optional_hid, const std::set<long unsigned int>&, neuroh5::CellIndex, neuroh5::CellPtr, size_t, size_t, size_t) [with T = short unsigned int; MPI_Comm = int; hid_t = long int; std::string = std::basic_string<char>; neuroh5::CELL_IDX_T = unsigned int; neuroh5::data::optional_hid = compact_optional_ns::compact_optional<neuroh5::data::hid_empty_value>; size_t = long unsigned int]’
/path/to/neuroh5/src/cell/cell_attributes.cc:1893:94:   required from here
/path/to/neuroh5/include/mpi/alltoallv_template.hh:42:32: warning: variable ‘rank’ set but not used [-Wunused-but-set-variable]
/path/to/neuroh5/include/mpi/alltoallv_template.hh: In instantiation of ‘int neuroh5::mpi::alltoallv_vector(MPI_Comm, MPI_Datatype, const std::vector<int>&, const std::vector<int>&, const std::vector<_RealType>&, std::vector<int>&, std::vector<int>&, std::vector<_RealType>&) [with T = unsigned char; MPI_Comm = int; MPI_Datatype = int]’:
/path/to/neuroh5/include/cell/cell_attributes.hh:531:9:   required from ‘void neuroh5::cell::append_cell_attribute_map(MPI_Comm, const hid_t&, const string&, const string&, const CELL_IDX_T&, const string&, const std::map<unsigned int, std::deque<_Tp> >&, neuroh5::data::optional_hid, const std::set<long unsigned int>&, neuroh5::CellIndex, neuroh5::CellPtr, size_t, size_t, size_t) [with T = unsigned char; MPI_Comm = int; hid_t = long int; std::string = std::basic_string<char>; neuroh5::CELL_IDX_T = unsigned int; neuroh5::data::optional_hid = compact_optional_ns::compact_optional<neuroh5::data::hid_empty_value>; size_t = long unsigned int]’
/path/to/neuroh5/src/cell/cell_attributes.cc:1901:93:   required from here
/path/to/neuroh5/include/mpi/alltoallv_template.hh:42:32: warning: variable ‘rank’ set but not used [-Wunused-but-set-variable]
/path/to/neuroh5/include/mpi/alltoallv_template.hh: In instantiation of ‘int neuroh5::mpi::alltoallv_vector(MPI_Comm, MPI_Datatype, const std::vector<int>&, const std::vector<int>&, const std::vector<_RealType>&, std::vector<int>&, std::vector<int>&, std::vector<_RealType>&) [with T = int; MPI_Comm = int; MPI_Datatype = int]’:
/path/to/neuroh5/include/cell/cell_attributes.hh:531:9:   required from ‘void neuroh5::cell::append_cell_attribute_map(MPI_Comm, const hid_t&, const string&, const string&, const CELL_IDX_T&, const string&, const std::map<unsigned int, std::deque<_Tp> >&, neuroh5::data::optional_hid, const std::set<long unsigned int>&, neuroh5::CellIndex, neuroh5::CellPtr, size_t, size_t, size_t) [with T = int; MPI_Comm = int; hid_t = long int; std::string = std::basic_string<char>; neuroh5::CELL_IDX_T = unsigned int; neuroh5::data::optional_hid = compact_optional_ns::compact_optional<neuroh5::data::hid_empty_value>; size_t = long unsigned int]’
/path/to/neuroh5/src/cell/cell_attributes.cc:1909:95:   required from here
/path/to/neuroh5/include/mpi/alltoallv_template.hh:42:32: warning: variable ‘rank’ set but not used [-Wunused-but-set-variable]
/path/to/neuroh5/include/mpi/alltoallv_template.hh: In instantiation of ‘int neuroh5::mpi::alltoallv_vector(MPI_Comm, MPI_Datatype, const std::vector<int>&, const std::vector<int>&, const std::vector<_RealType>&, std::vector<int>&, std::vector<int>&, std::vector<_RealType>&) [with T = short int; MPI_Comm = int; MPI_Datatype = int]’:
/path/to/neuroh5/include/cell/cell_attributes.hh:531:9:   required from ‘void neuroh5::cell::append_cell_attribute_map(MPI_Comm, const hid_t&, const string&, const string&, const CELL_IDX_T&, const string&, const std::map<unsigned int, std::deque<_Tp> >&, neuroh5::data::optional_hid, const std::set<long unsigned int>&, neuroh5::CellIndex, neuroh5::CellPtr, size_t, size_t, size_t) [with T = short int; MPI_Comm = int; hid_t = long int; std::string = std::basic_string<char>; neuroh5::CELL_IDX_T = unsigned int; neuroh5::data::optional_hid = compact_optional_ns::compact_optional<neuroh5::data::hid_empty_value>; size_t = long unsigned int]’
/path/to/neuroh5/src/cell/cell_attributes.cc:1917:95:   required from here
/path/to/neuroh5/include/mpi/alltoallv_template.hh:42:32: warning: variable ‘rank’ set but not used [-Wunused-but-set-variable]
/path/to/neuroh5/include/mpi/alltoallv_template.hh: In instantiation of ‘int neuroh5::mpi::alltoallv_vector(MPI_Comm, MPI_Datatype, const std::vector<int>&, const std::vector<int>&, const std::vector<_RealType>&, std::vector<int>&, std::vector<int>&, std::vector<_RealType>&) [with T = signed char; MPI_Comm = int; MPI_Datatype = int]’:
/path/to/neuroh5/include/cell/cell_attributes.hh:531:9:   required from ‘void neuroh5::cell::append_cell_attribute_map(MPI_Comm, const hid_t&, const string&, const string&, const CELL_IDX_T&, const string&, const std::map<unsigned int, std::deque<_Tp> >&, neuroh5::data::optional_hid, const std::set<long unsigned int>&, neuroh5::CellIndex, neuroh5::CellPtr, size_t, size_t, size_t) [with T = signed char; MPI_Comm = int; hid_t = long int; std::string = std::basic_string<char>; neuroh5::CELL_IDX_T = unsigned int; neuroh5::data::optional_hid = compact_optional_ns::compact_optional<neuroh5::data::hid_empty_value>; size_t = long unsigned int]’
/path/to/neuroh5/src/cell/cell_attributes.cc:1925:94:   required from here
/path/to/neuroh5/include/mpi/alltoallv_template.hh:42:32: warning: variable ‘rank’ set but not used [-Wunused-but-set-variable]
[  3%] Building CXX object CMakeFiles/neuroh5.cell.dir/src/cell/cell_index.cc.o
/path/to/neuroh5/src/cell/cell_index.cc: In function ‘herr_t neuroh5::cell::create_cell_index(MPI_Comm, const string&, const string&, const string&, size_t)’:
/path/to/neuroh5/src/cell/cell_index.cc:46:38: warning: variable ‘size’ set but not used [-Wunused-but-set-variable]
       int srank, ssize; size_t rank, size;
                                      ^
/path/to/neuroh5/src/cell/cell_index.cc: In function ‘herr_t neuroh5::cell::create_cell_index(MPI_Comm, hid_t, const string&, const string&, size_t)’:
/path/to/neuroh5/src/cell/cell_index.cc:128:32: warning: variable ‘rank’ set but not used [-Wunused-but-set-variable]
       int srank, ssize; size_t rank, size;
                                ^
/path/to/neuroh5/src/cell/cell_index.cc:128:38: warning: variable ‘size’ set but not used [-Wunused-but-set-variable]
       int srank, ssize; size_t rank, size;
                                      ^
/path/to/neuroh5/src/cell/cell_index.cc: In function ‘herr_t neuroh5::cell::append_cell_index(MPI_Comm, const string&, const string&, const CELL_IDX_T&, const string&, const std::vector<unsigned int>&)’:
/path/to/neuroh5/src/cell/cell_index.cc:265:32: warning: variable ‘rank’ set but not used [-Wunused-but-set-variable]
       int srank, ssize; size_t rank, size;
                                ^
/path/to/neuroh5/src/cell/cell_index.cc:265:38: warning: variable ‘size’ set but not used [-Wunused-but-set-variable]
       int srank, ssize; size_t rank, size;
                                      ^
/path/to/neuroh5/src/cell/cell_index.cc: In function ‘herr_t neuroh5::cell::link_cell_index(MPI_Comm, const string&, const string&, const string&, const string&)’:
/path/to/neuroh5/src/cell/cell_index.cc:376:32: warning: variable ‘rank’ set but not used [-Wunused-but-set-variable]
       int srank, ssize; size_t rank, size;
                                ^
/path/to/neuroh5/src/cell/cell_index.cc:376:38: warning: variable ‘size’ set but not used [-Wunused-but-set-variable]
       int srank, ssize; size_t rank, size;
                                      ^
[  4%] Building CXX object CMakeFiles/neuroh5.cell.dir/src/cell/cell_populations.cc.o
[  5%] Building CXX object CMakeFiles/neuroh5.cell.dir/src/cell/contract_tree.cc.o
[  6%] Building CXX object CMakeFiles/neuroh5.cell.dir/src/cell/insert_tree_points.cc.o
[  7%] Building CXX object CMakeFiles/neuroh5.cell.dir/src/cell/read_tree.cc.o
[  8%] Building CXX object CMakeFiles/neuroh5.cell.dir/src/cell/scatter_read_tree.cc.o
/path/to/neuroh5/src/cell/scatter_read_tree.cc: In function ‘int neuroh5::cell::scatter_read_trees(MPI_Comm, const string&, int, const std::vector<std::basic_string<char> >&, const node_rank_map_t&, const string&, neuroh5::CELL_IDX_T, std::map<unsigned int, std::tuple<unsigned int, std::deque<short unsigned int, std::allocator<short unsigned int> >, std::deque<short unsigned int, std::allocator<short unsigned int> >, std::deque<short unsigned int, std::allocator<short unsigned int> >, std::deque<float, std::allocator<float> >, std::deque<float, std::allocator<float> >, std::deque<float, std::allocator<float> >, std::deque<float, std::allocator<float> >, std::deque<signed char, std::allocator<signed char> >, std::deque<int, std::allocator<int> >, std::deque<signed char, std::allocator<signed char> > > >&, std::map<std::basic_string<char>, neuroh5::data::NamedAttrMap>&, size_t, size_t)’:
/path/to/neuroh5/src/cell/scatter_read_tree.cc:75:48: warning: variable ‘io_rank’ set but not used [-Wunused-but-set-variable]
       int srank, ssize; size_t rank=0, size=0, io_rank;
                                                ^
In file included from /path/to/neuroh5/include/cell/cell_attributes.hh:15:0,
                 from /path/to/neuroh5/src/cell/scatter_read_tree.cc:19:
/path/to/neuroh5/include/mpi/alltoallv_template.hh: In instantiation of ‘int neuroh5::mpi::alltoallv_vector(MPI_Comm, MPI_Datatype, const std::vector<int>&, const std::vector<int>&, const std::vector<_RealType>&, std::vector<int>&, std::vector<int>&, std::vector<_RealType>&) [with T = char; MPI_Comm = int; MPI_Datatype = int]’:
/path/to/neuroh5/src/cell/scatter_read_tree.cc:137:9:   required from here
/path/to/neuroh5/include/mpi/alltoallv_template.hh:42:32: warning: variable ‘rank’ set but not used [-Wunused-but-set-variable]
       int srank, ssize; size_t rank, size;
                                ^
[ 10%] Building CXX object CMakeFiles/neuroh5.cell.dir/src/cell/validate_tree.cc.o
[ 10%] Built target neuroh5.cell
[ 11%] Building CXX object CMakeFiles/neuroh5.data.dir/src/data/append_edge_map.cc.o
[ 12%] Building CXX object CMakeFiles/neuroh5.data.dir/src/data/append_edge_map_selection.cc.o
[ 13%] Building CXX object CMakeFiles/neuroh5.data.dir/src/data/append_rank_attr_map.cc.o
[ 14%] Building CXX object CMakeFiles/neuroh5.data.dir/src/data/append_rank_edge_map.cc.o
[ 15%] Building CXX object CMakeFiles/neuroh5.data.dir/src/data/append_rank_edge_map_selection.cc.o
[ 16%] Building CXX object CMakeFiles/neuroh5.data.dir/src/data/append_rank_tree_map.cc.o
[ 17%] Building CXX object CMakeFiles/neuroh5.data.dir/src/data/append_tree_map.cc.o
[ 19%] Building CXX object CMakeFiles/neuroh5.data.dir/src/data/attr_map.cc.o
[ 20%] Building CXX object CMakeFiles/neuroh5.data.dir/src/data/attr_val.cc.o
[ 21%] Building CXX object CMakeFiles/neuroh5.data.dir/src/data/range_sample.cc.o
/path/to/neuroh5/src/data/range_sample.cc: In function ‘void neuroh5::data::range_sample(size_t, size_t, std::set<long unsigned int>&)’:
/path/to/neuroh5/src/data/range_sample.cc:28:14: warning: unused variable ‘val’ [-Wunused-variable]
       size_t val;
              ^
[ 22%] Building CXX object CMakeFiles/neuroh5.data.dir/src/data/serialize_cell_attributes.cc.o
/path/to/neuroh5/src/data/serialize_cell_attributes.cc: In function ‘void neuroh5::data::serialize_rank_attr_map(size_t, size_t, const std::map<unsigned int, neuroh5::data::AttrMap>&, std::vector<int>&, std::vector<char>&, std::vector<int>&)’:
/path/to/neuroh5/src/data/serialize_cell_attributes.cc:55:50: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
       for (int key_rank = start_rank; key_rank < end_rank; key_rank++)
                                                  ^
[ 23%] Building CXX object CMakeFiles/neuroh5.data.dir/src/data/serialize_edge.cc.o
/path/to/neuroh5/src/data/serialize_edge.cc: In function ‘void neuroh5::data::serialize_rank_edge_map(size_t, size_t, const rank_edge_map_t&, size_t&, std::vector<int>&, std::vector<char>&, std::vector<int>&)’:
/path/to/neuroh5/src/data/serialize_edge.cc:56:50: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
       for (int key_rank = start_rank; key_rank < end_rank; key_rank++)
                                                  ^
[ 24%] Building CXX object CMakeFiles/neuroh5.data.dir/src/data/serialize_tree.cc.o
In file included from /path/to/neuroh5/include/data/attr_val.hh:16:0,
                 from /path/to/neuroh5/include/neuroh5_types.hh:34,
                 from /path/to/neuroh5/include/data/serialize_tree.hh:20,
                 from /path/to/neuroh5/src/data/serialize_tree.cc:12:
/path/to/neuroh5/src/data/serialize_tree.cc: In function ‘void neuroh5::data::serialize_rank_tree_map(size_t, size_t, const std::map<unsigned int, std::map<unsigned int, std::tuple<unsigned int, std::deque<short unsigned int, std::allocator<short unsigned int> >, std::deque<short unsigned int, std::allocator<short unsigned int> >, std::deque<short unsigned int, std::allocator<short unsigned int> >, std::deque<float, std::allocator<float> >, std::deque<float, std::allocator<float> >, std::deque<float, std::allocator<float> >, std::deque<float, std::allocator<float> >, std::deque<signed char, std::allocator<signed char> >, std::deque<int, std::allocator<int> >, std::deque<signed char, std::allocator<signed char> > > > >&, std::vector<int>&, std::vector<char>&, std::vector<int>&)’:
/path/to/neuroh5/src/data/serialize_tree.cc:52:33: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
       throw_assert(start_rank < end_rank, "serialize_rank_tree_map: invalid start rank");
                                 ^
/path/to/neuroh5/include/throw_assert.hh:145:48: note: in definition of macro ‘throw_assert’
 #define throw_assert(EXPRESSION, MESSAGE) if(!(EXPRESSION)) { throw AssertionFailureException(#EXPRESSION, __FILE__, __LINE__, (AssertionFailureException::StreamFormatter() << MESSAGE)); }
                                                ^
[ 25%] Building CXX object CMakeFiles/neuroh5.data.dir/src/data/tokenize.cc.o
[ 25%] Built target neuroh5.data
[ 26%] Building CXX object CMakeFiles/neuroh5.graph.dir/src/graph/append_graph.cc.o
/path/to/neuroh5/src/graph/append_graph.cc: In function ‘int neuroh5::graph::append_graph(MPI_Comm, int, const string&, const string&, const string&, const std::map<std::basic_string<char>, std::pair<long unsigned int, neuroh5::data::AttrIndex> >&, const edge_map_t&, hsize_t)’:
/path/to/neuroh5/src/graph/append_graph.cc:282:27: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
       for (int p = 1; p < size; p++)
                           ^
/path/to/neuroh5/src/graph/append_graph.cc:104:41: warning: ‘dst_pop_idx’ may be used uninitialized in this function [-Wmaybe-uninitialized]
       dst_start = pop_ranges[dst_pop_idx].start;
                                         ^
/path/to/neuroh5/src/graph/append_graph.cc:106:41: warning: ‘src_pop_idx’ may be used uninitialized in this function [-Wmaybe-uninitialized]
       src_start = pop_ranges[src_pop_idx].start;
                                         ^
[ 28%] Building CXX object CMakeFiles/neuroh5.graph.dir/src/graph/append_projection.cc.o
[ 29%] Building CXX object CMakeFiles/neuroh5.graph.dir/src/graph/balance_graph_indegree.cc.o
[ 30%] Building CXX object CMakeFiles/neuroh5.graph.dir/src/graph/bcast_graph.cc.o
[ 31%] Building CXX object CMakeFiles/neuroh5.graph.dir/src/graph/compute_vertex_metrics.cc.o
/path/to/neuroh5/src/graph/compute_vertex_metrics.cc: In function ‘void neuroh5::graph::append_vertex_degree_map(MPI_Comm, const node_rank_map_t&, const std::vector<std::pair<std::basic_string<char>, std::basic_string<char> > >&, size_t, const std::vector<std::map<unsigned int, long unsigned int> >&, const string&, const string&, const string&)’:
/path/to/neuroh5/src/graph/compute_vertex_metrics.cc:70:20: warning: variable ‘size’ set but not used [-Wunused-but-set-variable]
       size_t rank, size;
                    ^
/path/to/neuroh5/src/graph/compute_vertex_metrics.cc: In function ‘int neuroh5::graph::compute_vertex_indegree(MPI_Comm, const string&, std::vector<std::pair<std::basic_string<char>, std::basic_string<char> > >, size_t)’:
/path/to/neuroh5/src/graph/compute_vertex_metrics.cc:144:14: warning: variable ‘rank’ set but not used [-Wunused-but-set-variable]
       size_t rank, size;
              ^
/path/to/neuroh5/src/graph/compute_vertex_metrics.cc: In function ‘int neuroh5::graph::compute_vertex_outdegree(MPI_Comm, const string&, std::vector<std::pair<std::basic_string<char>, std::basic_string<char> > >, size_t)’:
/path/to/neuroh5/src/graph/compute_vertex_metrics.cc:213:14: warning: variable ‘rank’ set but not used [-Wunused-but-set-variable]
       size_t rank, size;
              ^
[ 32%] Building CXX object CMakeFiles/neuroh5.graph.dir/src/graph/edge_attributes.cc.o
/path/to/neuroh5/src/graph/edge_attributes.cc: In function ‘herr_t neuroh5::graph::read_edge_attribute_selection(MPI_Comm, const string&, const string&, const string&, const string&, const string&, const DST_PTR_T&, const DST_PTR_T&, const std::vector<unsigned int>&, const std::vector<long unsigned int>&, const std::vector<std::pair<long long unsigned int, long long unsigned int> >&, neuroh5::AttrKind, neuroh5::data::NamedAttrVal&, bool)’:
/path/to/neuroh5/src/graph/edge_attributes.cc:592:19: warning: unused variable ‘start’ [-Wunused-variable]
           hsize_t start = range.first;
                   ^
/path/to/neuroh5/src/graph/edge_attributes.cc:593:19: warning: unused variable ‘count’ [-Wunused-variable]
           hsize_t count = range.second;
                   ^
/path/to/neuroh5/src/graph/edge_attributes.cc:571:15: warning: unused variable ‘block’ [-Wunused-variable]
       hsize_t block = 0;
               ^
In file included from /path/to/neuroh5/include/hdf5/hdf5_edge_attributes.hh:13:0,
                 from /path/to/neuroh5/include/graph/edge_attributes.hh:8,
                 from /path/to/neuroh5/src/graph/edge_attributes.cc:12:
/path/to/neuroh5/include/hdf5/read_template.hh: In instantiation of ‘herr_t neuroh5::hdf5::read_selection(hid_t, const string&, hid_t, const std::vector<std::pair<long long unsigned int, long long unsigned int> >&, std::vector<T>&, hid_t) [with T = unsigned int; herr_t = int; hid_t = long int; std::string = std::basic_string<char>]’:
/path/to/neuroh5/src/graph/edge_attributes.cc:611:81:   required from here
/path/to/neuroh5/include/hdf5/read_template.hh:93:19: warning: unused variable ‘start’ [-Wunused-variable]
           hsize_t start = range.first;
                   ^
/path/to/neuroh5/include/hdf5/read_template.hh: In instantiation of ‘herr_t neuroh5::hdf5::read_selection(hid_t, const string&, hid_t, const std::vector<std::pair<long long unsigned int, long long unsigned int> >&, std::vector<T>&, hid_t) [with T = short unsigned int; herr_t = int; hid_t = long int; std::string = std::basic_string<char>]’:
/path/to/neuroh5/src/graph/edge_attributes.cc:618:81:   required from here
/path/to/neuroh5/include/hdf5/read_template.hh:93:19: warning: unused variable ‘start’ [-Wunused-variable]
/path/to/neuroh5/include/hdf5/read_template.hh: In instantiation of ‘herr_t neuroh5::hdf5::read_selection(hid_t, const string&, hid_t, const std::vector<std::pair<long long unsigned int, long long unsigned int> >&, std::vector<T>&, hid_t) [with T = unsigned char; herr_t = int; hid_t = long int; std::string = std::basic_string<char>]’:
/path/to/neuroh5/src/graph/edge_attributes.cc:625:79:   required from here
/path/to/neuroh5/include/hdf5/read_template.hh:93:19: warning: unused variable ‘start’ [-Wunused-variable]
/path/to/neuroh5/include/hdf5/read_template.hh: In instantiation of ‘herr_t neuroh5::hdf5::read_selection(hid_t, const string&, hid_t, const std::vector<std::pair<long long unsigned int, long long unsigned int> >&, std::vector<T>&, hid_t) [with T = int; herr_t = int; hid_t = long int; std::string = std::basic_string<char>]’:
/path/to/neuroh5/src/graph/edge_attributes.cc:638:79:   required from here
/path/to/neuroh5/include/hdf5/read_template.hh:93:19: warning: unused variable ‘start’ [-Wunused-variable]
/path/to/neuroh5/include/hdf5/read_template.hh: In instantiation of ‘herr_t neuroh5::hdf5::read_selection(hid_t, const string&, hid_t, const std::vector<std::pair<long long unsigned int, long long unsigned int> >&, std::vector<T>&, hid_t) [with T = short int; herr_t = int; hid_t = long int; std::string = std::basic_string<char>]’:
/path/to/neuroh5/src/graph/edge_attributes.cc:645:79:   required from here
/path/to/neuroh5/include/hdf5/read_template.hh:93:19: warning: unused variable ‘start’ [-Wunused-variable]
/path/to/neuroh5/include/hdf5/read_template.hh: In instantiation of ‘herr_t neuroh5::hdf5::read_selection(hid_t, const string&, hid_t, const std::vector<std::pair<long long unsigned int, long long unsigned int> >&, std::vector<T>&, hid_t) [with T = signed char; herr_t = int; hid_t = long int; std::string = std::basic_string<char>]’:
/path/to/neuroh5/src/graph/edge_attributes.cc:652:77:   required from here
/path/to/neuroh5/include/hdf5/read_template.hh:93:19: warning: unused variable ‘start’ [-Wunused-variable]
/path/to/neuroh5/include/hdf5/read_template.hh: In instantiation of ‘herr_t neuroh5::hdf5::read_selection(hid_t, const string&, hid_t, const std::vector<std::pair<long long unsigned int, long long unsigned int> >&, std::vector<T>&, hid_t) [with T = float; herr_t = int; hid_t = long int; std::string = std::basic_string<char>]’:
/path/to/neuroh5/src/graph/edge_attributes.cc:664:75:   required from here
/path/to/neuroh5/include/hdf5/read_template.hh:93:19: warning: unused variable ‘start’ [-Wunused-variable]
[ 33%] Building CXX object CMakeFiles/neuroh5.graph.dir/src/graph/merge_edge_map.cc.o
[ 34%] Building CXX object CMakeFiles/neuroh5.graph.dir/src/graph/node_attributes.cc.o
In file included from /path/to/neuroh5/src/graph/node_attributes.cc:21:0:
/path/to/neuroh5/include/mpi/alltoallv_template.hh: In instantiation of ‘int neuroh5::mpi::alltoallv_vector(MPI_Comm, MPI_Datatype, const std::vector<int>&, const std::vector<int>&, const std::vector<_RealType>&, std::vector<int>&, std::vector<int>&, std::vector<_RealType>&) [with T = char; MPI_Comm = int; MPI_Datatype = int]’:
/path/to/neuroh5/src/graph/node_attributes.cc:582:7:   required from here
/path/to/neuroh5/include/mpi/alltoallv_template.hh:42:32: warning: variable ‘rank’ set but not used [-Wunused-but-set-variable]
       int srank, ssize; size_t rank, size;
                                ^
[ 35%] Building CXX object CMakeFiles/neuroh5.graph.dir/src/graph/projection_names.cc.o
[ 37%] Building CXX object CMakeFiles/neuroh5.graph.dir/src/graph/read_graph.cc.o
[ 38%] Building CXX object CMakeFiles/neuroh5.graph.dir/src/graph/read_graph_info.cc.o
/path/to/neuroh5/src/graph/read_graph_info.cc: In function ‘int neuroh5::graph::read_graph_info(MPI_Comm, const string&, const std::vector<std::basic_string<char> >&, bool, std::vector<std::pair<std::basic_string<char>, std::basic_string<char> > >&, std::vector<std::map<std::basic_string<char>, std::vector<std::vector<std::basic_string<char> > > > >&, std::vector<std::vector<unsigned int> >&)’:
/path/to/neuroh5/src/graph/read_graph_info.cc:56:18: warning: unused variable ‘local_prj_num_nodes’ [-Wunused-variable]
           size_t local_prj_num_nodes;
                  ^
/path/to/neuroh5/src/graph/read_graph_info.cc:38:11: warning: unused variable ‘status’ [-Wunused-variable]
       int status = 0;
           ^
[ 39%] Building CXX object CMakeFiles/neuroh5.graph.dir/src/graph/read_graph_selection.cc.o
[ 40%] Building CXX object CMakeFiles/neuroh5.graph.dir/src/graph/read_projection.cc.o
[ 41%] Building CXX object CMakeFiles/neuroh5.graph.dir/src/graph/read_projection_info.cc.o
/path/to/neuroh5/src/graph/read_projection_info.cc: In function ‘herr_t neuroh5::graph::read_projection_info(MPI_Comm, const string&, const std::vector<std::basic_string<char> >&, bool, const pop_range_map_t&, const std::set<std::pair<short unsigned int, short unsigned int> >&, const string&, const string&, neuroh5::NODE_IDX_T, neuroh5::NODE_IDX_T, std::vector<std::pair<std::basic_string<char>, std::basic_string<char> > >&, std::vector<std::map<std::basic_string<char>, std::vector<std::vector<std::basic_string<char> > > > >&, std::vector<std::vector<unsigned int> >&)’:
/path/to/neuroh5/src/graph/read_projection_info.cc:204:14: warning: unused variable ‘local_prj_num_edges’ [-Wunused-variable]
       size_t local_prj_num_edges=0;
              ^
[ 42%] Building CXX object CMakeFiles/neuroh5.graph.dir/src/graph/read_projection_selection.cc.o
[ 43%] Building CXX object CMakeFiles/neuroh5.graph.dir/src/graph/scatter_read_graph.cc.o
[ 44%] Building CXX object CMakeFiles/neuroh5.graph.dir/src/graph/scatter_read_graph_selection.cc.o
/path/to/neuroh5/src/graph/scatter_read_graph_selection.cc: In function ‘int neuroh5::graph::scatter_read_graph_selection(MPI_Comm, const string&, int, const std::vector<std::basic_string<char> >&, const std::vector<std::pair<std::basic_string<char>, std::basic_string<char> > >&, const std::vector<unsigned int>&, std::vector<std::map<unsigned int, std::tuple<std::vector<unsigned int, std::allocator<unsigned int> >, std::vector<neuroh5::data::AttrVal, std::allocator<neuroh5::data::AttrVal> > > > >&, std::vector<std::map<std::basic_string<char>, std::vector<std::vector<std::basic_string<char> > > > >&, size_t&, size_t&, size_t&)’:
/path/to/neuroh5/src/graph/scatter_read_graph_selection.cc:85:32: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
             for (size_t p=0; p<data_size; p++)
                                ^
/path/to/neuroh5/src/graph/scatter_read_graph_selection.cc:100:32: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
             for (rank_t p=0; p<data_size; p++)
                                ^
/path/to/neuroh5/src/graph/scatter_read_graph_selection.cc:102:56: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
                 for (size_t i = displs[p]; i<displs[p+1]; i++)
                                                        ^
[ 46%] Building CXX object CMakeFiles/neuroh5.graph.dir/src/graph/scatter_read_projection.cc.o
In file included from /path/to/neuroh5/src/graph/scatter_read_projection.cc:19:0:
/path/to/neuroh5/include/mpi/alltoallv_template.hh: In instantiation of ‘int neuroh5::mpi::alltoallv_vector(MPI_Comm, MPI_Datatype, const std::vector<int>&, const std::vector<int>&, const std::vector<_RealType>&, std::vector<int>&, std::vector<int>&, std::vector<_RealType>&) [with T = char; MPI_Comm = int; MPI_Datatype = int]’:
/path/to/neuroh5/src/graph/scatter_read_projection.cc:181:11:   required from here
/path/to/neuroh5/include/mpi/alltoallv_template.hh:42:32: warning: variable ‘rank’ set but not used [-Wunused-but-set-variable]
       int srank, ssize; size_t rank, size;
                                ^
[ 47%] Building CXX object CMakeFiles/neuroh5.graph.dir/src/graph/scatter_read_projection_selection.cc.o
/path/to/neuroh5/src/graph/scatter_read_projection_selection.cc: In function ‘herr_t neuroh5::graph::scatter_read_projection_selection(MPI_Comm, int, const string&, const pop_search_range_map_t&, const std::set<std::pair<short unsigned int, short unsigned int> >&, const string&, const string&, const NODE_IDX_T&, const NODE_IDX_T&, const std::vector<std::basic_string<char> >&, const std::vector<unsigned int>&, const node_rank_map_t&, std::vector<std::map<unsigned int, std::tuple<std::vector<unsigned int, std::allocator<unsigned int> >, std::vector<neuroh5::data::AttrVal, std::allocator<neuroh5::data::AttrVal> > > > >&, std::vector<std::map<std::basic_string<char>, std::vector<std::vector<std::basic_string<char> > > > >&, size_t&, size_t&, size_t&, bool)’:
/path/to/neuroh5/src/graph/scatter_read_projection_selection.cc:111:23: warning: unused variable ‘local_read_blocks’ [-Wunused-variable]
               hsize_t local_read_blocks;
                       ^
In file included from /path/to/neuroh5/src/graph/scatter_read_projection_selection.cc:20:0:
/path/to/neuroh5/include/mpi/alltoallv_template.hh: In instantiation of ‘int neuroh5::mpi::alltoallv_vector(MPI_Comm, MPI_Datatype, const std::vector<int>&, const std::vector<int>&, const std::vector<_RealType>&, std::vector<int>&, std::vector<int>&, std::vector<_RealType>&) [with T = char; MPI_Comm = int; MPI_Datatype = int]’:
/path/to/neuroh5/src/graph/scatter_read_projection_selection.cc:200:11:   required from here
/path/to/neuroh5/include/mpi/alltoallv_template.hh:42:32: warning: variable ‘rank’ set but not used [-Wunused-but-set-variable]
       int srank, ssize; size_t rank, size;
                                ^
[ 48%] Building CXX object CMakeFiles/neuroh5.graph.dir/src/graph/validate_edge_list.cc.o
[ 49%] Building CXX object CMakeFiles/neuroh5.graph.dir/src/graph/validate_selection_edge_list.cc.o
[ 50%] Building CXX object CMakeFiles/neuroh5.graph.dir/src/graph/vertex_degree.cc.o
[ 51%] Building CXX object CMakeFiles/neuroh5.graph.dir/src/graph/write_graph.cc.o
/path/to/neuroh5/src/graph/write_graph.cc: In function ‘int neuroh5::graph::write_graph(MPI_Comm, int, const string&, const string&, const string&, const std::map<std::basic_string<char>, std::pair<long unsigned int, neuroh5::data::AttrIndex> >&, const edge_map_t&, hsize_t)’:
/path/to/neuroh5/src/graph/write_graph.cc:105:41: warning: ‘dst_pop_idx’ may be used uninitialized in this function [-Wmaybe-uninitialized]
       dst_start = pop_ranges[dst_pop_idx].start;
                                         ^
/path/to/neuroh5/src/graph/write_graph.cc:107:41: warning: ‘src_pop_idx’ may be used uninitialized in this function [-Wmaybe-uninitialized]
       src_start = pop_ranges[src_pop_idx].start;
                                         ^
[ 52%] Building CXX object CMakeFiles/neuroh5.graph.dir/src/graph/write_projection.cc.o
[ 52%] Built target neuroh5.graph
[ 53%] Building CXX object CMakeFiles/neuroh5.hdf5.dir/src/hdf5/attr_kind_datatype.cc.o
[ 55%] Building CXX object CMakeFiles/neuroh5.hdf5.dir/src/hdf5/copy_h5types.cc.o
[ 56%] Building CXX object CMakeFiles/neuroh5.hdf5.dir/src/hdf5/create_file_toplevel.cc.o
[ 57%] Building CXX object CMakeFiles/neuroh5.hdf5.dir/src/hdf5/create_group.cc.o
[ 58%] Building CXX object CMakeFiles/neuroh5.hdf5.dir/src/hdf5/dataset_num_elements.cc.o
[ 59%] Building CXX object CMakeFiles/neuroh5.hdf5.dir/src/hdf5/dataset_type.cc.o
[ 60%] Building CXX object CMakeFiles/neuroh5.hdf5.dir/src/hdf5/exists_dataset.cc.o
[ 61%] Building CXX object CMakeFiles/neuroh5.hdf5.dir/src/hdf5/exists_group.cc.o
[ 62%] Building CXX object CMakeFiles/neuroh5.hdf5.dir/src/hdf5/exists_h5types.cc.o
[ 64%] Building CXX object CMakeFiles/neuroh5.hdf5.dir/src/hdf5/file_access.cc.o
/path/to/neuroh5/src/hdf5/file_access.cc: In function ‘int neuroh5::hdf5::what_is_open(hid_t, int)’:
/path/to/neuroh5/src/hdf5/file_access.cc:86:14: warning: variable ‘status’ set but not used [-Wunused-but-set-variable]
       herr_t status;
              ^
[ 65%] Building CXX object CMakeFiles/neuroh5.hdf5.dir/src/hdf5/group_contents.cc.o
[ 66%] Building CXX object CMakeFiles/neuroh5.hdf5.dir/src/hdf5/num_projection_blocks.cc.o
/path/to/neuroh5/src/hdf5/num_projection_blocks.cc: In function ‘hsize_t neuroh5::hdf5::num_projection_blocks(MPI_Comm, const string&, const string&, const string&)’:
/path/to/neuroh5/src/hdf5/num_projection_blocks.cc:23:14: warning: unused variable ‘ierr’ [-Wunused-variable]
       herr_t ierr = 0;
              ^
[ 67%] Building CXX object CMakeFiles/neuroh5.hdf5.dir/src/hdf5/path_names.cc.o
[ 68%] Building CXX object CMakeFiles/neuroh5.hdf5.dir/src/hdf5/read_cell_index_ptr.cc.o
[ 69%] Building CXX object CMakeFiles/neuroh5.hdf5.dir/src/hdf5/read_link_names.cc.o
[ 70%] Building CXX object CMakeFiles/neuroh5.hdf5.dir/src/hdf5/read_projection_dataset_selection.cc.o
/path/to/neuroh5/src/hdf5/read_projection_dataset_selection.cc: In function ‘herr_t neuroh5::hdf5::read_projection_dataset_selection(MPI_Comm, const string&, const string&, const string&, const NODE_IDX_T&, const NODE_IDX_T&, const std::vector<unsigned int>&, neuroh5::DST_PTR_T&, std::vector<unsigned int>&, std::vector<long unsigned int>&, std::vector<std::pair<long long unsigned int, long long unsigned int> >&, std::vector<unsigned int>&, size_t&, bool)’:
/path/to/neuroh5/src/hdf5/read_projection_dataset_selection.cc:279:27: warning: unused variable ‘src_idx_start’ [-Wunused-variable]
                   hsize_t src_idx_start=range.first;
                           ^
In file included from /path/to/neuroh5/src/hdf5/read_projection_dataset_selection.cc:20:0:
/path/to/neuroh5/include/hdf5/read_template.hh: In instantiation of ‘herr_t neuroh5::hdf5::read_selection(hid_t, const string&, hid_t, const std::vector<std::pair<long long unsigned int, long long unsigned int> >&, std::vector<_RealType>&, hid_t) [with T = unsigned int; herr_t = int; hid_t = long int; std::string = std::basic_string<char>]’:
/path/to/neuroh5/src/hdf5/read_projection_dataset_selection.cc:331:16:   required from here
/path/to/neuroh5/include/hdf5/read_template.hh:93:19: warning: unused variable ‘start’ [-Wunused-variable]
           hsize_t start = range.first;
                   ^
[ 71%] Building CXX object CMakeFiles/neuroh5.hdf5.dir/src/hdf5/read_projection_datasets.cc.o
[ 71%] Built target neuroh5.hdf5
[ 73%] Building CXX object CMakeFiles/neuroh5.io.dir/src/io/read_layer_swc.cc.o
[ 74%] Building CXX object CMakeFiles/neuroh5.io.dir/src/io/read_syn_projection.cc.o
[ 75%] Building CXX object CMakeFiles/neuroh5.io.dir/src/io/read_txt_projection.cc.o
[ 75%] Built target neuroh5.io
[ 76%] Building CXX object CMakeFiles/neuroh5.mpi.dir/src/mpi/mpe_seq.cc.o
[ 77%] Building CXX object CMakeFiles/neuroh5.mpi.dir/src/mpi/rank_range.cc.o
[ 77%] Built target neuroh5.mpi
[ 78%] Building CXX object CMakeFiles/neurograph_reader.dir/src/driver/neurograph_reader.cc.o
/path/to/neuroh5/src/driver/neurograph_reader.cc: In function ‘int main(int, char**)’:
/path/to/neuroh5/src/driver/neurograph_reader.cc:143:8: warning: variable ‘opt_attrs’ set but not used [-Wunused-but-set-variable]
   bool opt_attrs = false;
        ^
[ 79%] Linking CXX executable bin/neurograph_reader
[ 79%] Built target neurograph_reader
[ 80%] Building CXX object CMakeFiles/neurograph_scatter_read.dir/src/driver/neurograph_scatter_read.cc.o
/path/to/neuroh5/src/driver/neurograph_scatter_read.cc: In function ‘int main(int, char**)’:
/path/to/neuroh5/src/driver/neurograph_scatter_read.cc:98:5: warning: variable ‘opt_attrs’ set but not used [-Wunused-but-set-variable]
     opt_attrs = false,
     ^
/path/to/neuroh5/src/driver/neurograph_scatter_read.cc:100:5: warning: variable ‘opt_edgemap’ set but not used [-Wunused-but-set-variable]
     opt_edgemap = false;
     ^
[ 82%] Linking CXX executable bin/neurograph_scatter_read
[ 82%] Built target neurograph_scatter_read
[ 83%] Building CXX object CMakeFiles/balance_indegree.dir/src/driver/balance_indegree.cc.o
[ 84%] Linking CXX executable bin/balance_indegree
[ 84%] Built target balance_indegree
[ 85%] Building CXX object CMakeFiles/neurograph_vertex_metrics.dir/src/driver/vertex_metrics.cc.o
/path/to/neuroh5/src/driver/vertex_metrics.cc: In function ‘int main(int, char**)’:
/path/to/neuroh5/src/driver/vertex_metrics.cc:114:5: warning: variable ‘opt_output’ set but not used [-Wunused-but-set-variable]
     opt_output       = false;
     ^
[ 86%] Linking CXX executable bin/neurograph_vertex_metrics
[ 86%] Built target neurograph_vertex_metrics
[ 87%] Building CXX object CMakeFiles/neurograph_import.dir/src/driver/neurograph_import.cc.o
/path/to/neuroh5/src/driver/neurograph_import.cc: In function ‘int main(int, char**)’:
/path/to/neuroh5/src/driver/neurograph_import.cc:549:23: warning: variable ‘dst_pop_idx’ set but not used [-Wunused-but-set-variable]
   size_t src_pop_idx, dst_pop_idx; bool src_pop_set=false, dst_pop_set=false;
                       ^
/path/to/neuroh5/src/driver/neurograph_import.cc:313:8: warning: variable ‘opt_attr_names’ set but not used [-Wunused-but-set-variable]
   bool opt_attr_names = false;
        ^
/path/to/neuroh5/src/driver/neurograph_import.cc:314:8: warning: variable ‘opt_io_size’ set but not used [-Wunused-but-set-variable]
   bool opt_io_size    = false;
        ^
/path/to/neuroh5/src/driver/neurograph_import.cc:317:8: warning: variable ‘opt_dst_offset’ set but not used [-Wunused-but-set-variable]
   bool opt_dst_offset = false,
        ^
/path/to/neuroh5/src/driver/neurograph_import.cc:318:5: warning: variable ‘opt_src_offset’ set but not used [-Wunused-but-set-variable]
     opt_src_offset    = false;
     ^
/path/to/neuroh5/src/driver/neurograph_import.cc:590:40: warning: ‘src_pop_idx’ may be used uninitialized in this function [-Wmaybe-uninitialized]
   src_range[0] = pop_ranges[src_pop_idx].start;
                                        ^
[ 88%] Linking CXX executable bin/neurograph_import
[ 88%] Built target neurograph_import
[ 89%] Building CXX object CMakeFiles/neurotrees_copy.dir/src/driver/neurotrees_copy.cc.o
In file included from /path/to/neuroh5/include/data/attr_val.hh:16:0,
                 from /path/to/neuroh5/include/neuroh5_types.hh:34,
                 from /path/to/neuroh5/src/driver/neurotrees_copy.cc:29:
/path/to/neuroh5/src/driver/neurotrees_copy.cc: In function ‘int main(int, char**)’:
/path/to/neuroh5/src/driver/neurotrees_copy.cc:347:43: error: expected primary-expression before ‘void’
           throw_assert(cell::append_trees<void>(all_comm, output_filename, pop_name, pop_start, output_tree_list) == 0,
                                           ^
/path/to/neuroh5/include/throw_assert.hh:145:48: note: in definition of macro ‘throw_assert’
 #define throw_assert(EXPRESSION, MESSAGE) if(!(EXPRESSION)) { throw AssertionFailureException(#EXPRESSION, __FILE__, __LINE__, (AssertionFailureException::StreamFormatter() << MESSAGE)); }
                                                ^
/path/to/neuroh5/src/driver/neurotrees_copy.cc:347:43: error: expected ‘)’ before ‘void’
           throw_assert(cell::append_trees<void>(all_comm, output_filename, pop_name, pop_start, output_tree_list) == 0,
                                           ^
/path/to/neuroh5/include/throw_assert.hh:145:48: note: in definition of macro ‘throw_assert’
 #define throw_assert(EXPRESSION, MESSAGE) if(!(EXPRESSION)) { throw AssertionFailureException(#EXPRESSION, __FILE__, __LINE__, (AssertionFailureException::StreamFormatter() << MESSAGE)); }
                                                ^
/path/to/neuroh5/src/driver/neurotrees_copy.cc:348:48: error: expected ‘)’ before ‘;’ token
                        "error in append_trees");
                                                ^
In file included from /path/to/neuroh5/include/data/attr_val.hh:16:0,
                 from /path/to/neuroh5/include/neuroh5_types.hh:34,
                 from /path/to/neuroh5/src/driver/neurotrees_copy.cc:29:
/path/to/neuroh5/src/driver/neurotrees_copy.cc:356:39: error: expected primary-expression before ‘void’
       throw_assert(cell::append_trees<void>(all_comm, output_filename, pop_name, pop_start, output_tree_list) == 0,
                                       ^
/path/to/neuroh5/include/throw_assert.hh:145:48: note: in definition of macro ‘throw_assert’
 #define throw_assert(EXPRESSION, MESSAGE) if(!(EXPRESSION)) { throw AssertionFailureException(#EXPRESSION, __FILE__, __LINE__, (AssertionFailureException::StreamFormatter() << MESSAGE)); }
                                                ^
/path/to/neuroh5/src/driver/neurotrees_copy.cc:356:39: error: expected ‘)’ before ‘void’
       throw_assert(cell::append_trees<void>(all_comm, output_filename, pop_name, pop_start, output_tree_list) == 0,
                                       ^
/path/to/neuroh5/include/throw_assert.hh:145:48: note: in definition of macro ‘throw_assert’
 #define throw_assert(EXPRESSION, MESSAGE) if(!(EXPRESSION)) { throw AssertionFailureException(#EXPRESSION, __FILE__, __LINE__, (AssertionFailureException::StreamFormatter() << MESSAGE)); }
                                                ^
/path/to/neuroh5/src/driver/neurotrees_copy.cc:357:44: error: expected ‘)’ before ‘;’ token
                    "error in append_trees");
                                            ^
make[2]: *** [CMakeFiles/neurotrees_copy.dir/src/driver/neurotrees_copy.cc.o] Error 1
make[1]: *** [CMakeFiles/neurotrees_copy.dir/all] Error 2
make: *** [all] Error 2
```

The work around is to downgrade to git checkout 729cb4aee3c543c7e81ff8a2ed314bf812694c0a for which make runs without issues.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.