-
Notifications
You must be signed in to change notification settings - Fork 47
Open
Description
Hi,
I am testing the HDF5 support in DASH. It reports compile error for 1D data at compile time.
Could you help to look at it ? See below for the code and error output.
Bests,
Bin
Code:
#include <libdash.h>
#include <iostream>
using dash::io::hdf5::hdf5_options;
using dash::io::hdf5::StoreHDF;
int main(int argc, char *argv[])
{
dash::init(&argc, &argv);
dash::Matrix<int, 1> *h5matrix = new dash::Matrix<int, 1>(dash::SizeSpec<1>(8));
StoreHDF::write(*h5matrix, "testf.h5", "testg/testd");
//2D works
//dash::Matrix<int, 2> *h5matrix = new dash::Matrix<int, 2>(dash::SizeSpec<2>(8, 8));
//StoreHDF::write(*h5matrix, "testf.h5", "testg/testd");
dash::finalize();
return EXIT_SUCCESS;
}
Error info:
In file included from h5-test.cpp:8:
In file included from /Users/dbin/opt/dash-0.4.0/include/libdash.h:71:
In file included from /Users/dbin/opt/dash-0.4.0/include/dash/io/HDF5.h:4:
/Users/dbin/opt/dash-0.4.0/include/dash/io/hdf5/StorageDriver.h:477:39: error:
no member named 'local_blockspec' in 'dash::TilePattern<1,
dash::ROW_MAJOR, long>'
const auto & lblockspec = pattern.local_blockspec();
~~~~~~~ ^
/Users/dbin/opt/dash-0.4.0/include/dash/io/hdf5/StorageDriver.h:582:12: note:
in instantiation of function template specialization
'dash::io::hdf5::StoreHDF::_get_hdf_slab_body<dash::TilePattern<1,
dash::ROW_MAJOR, long> >' requested here
1, _get_hdf_slab_body(pattern, {}));
^
/Users/dbin/opt/dash-0.4.0/include/dash/io/hdf5/internal/DriverImplZeroCopy.h:32:21: note:
in instantiation of function template specialization
'dash::io::hdf5::StoreHDF::_get_hdf_slabs<dash::TilePattern<1,
dash::ROW_MAJOR, long> >' requested here
auto hyperslabs = _get_hdf_slabs(container.pattern());
^
/Users/dbin/opt/dash-0.4.0/include/dash/io/hdf5/StorageDriver.h:733:5: note: in
instantiation of function template specialization
'dash::io::hdf5::StoreHDF::_process_dataset_impl_zero_copy<dash::Matrix<int,
1, long, dash::TilePattern<1, dash::ROW_MAJOR, long>, dash::HostSpace> >'
requested here
_process_dataset_impl_zero_copy(StoreHDF::Mode::WRITE, container, h5dset,
^
/Users/dbin/opt/dash-0.4.0/include/dash/io/hdf5/StorageDriver.h:234:5: note: in
instantiation of function template specialization
'dash::io::hdf5::StoreHDF::_write_dataset_impl<dash::Matrix<int, 1, long,
dash::TilePattern<1, dash::ROW_MAJOR, long>, dash::HostSpace> >' requested
here
_write_dataset_impl(array, h5dset, internal_type);
^
h5-test.cpp:26:12: note: in instantiation of function template specialization
'dash::io::hdf5::StoreHDF::write<dash::Matrix<int, 1, long,
dash::TilePattern<1, dash::ROW_MAJOR, long>, dash::HostSpace> >' requested
here
StoreHDF::write(*h5matrix, "testf.h5", "testg/testd");
^
1 error generated.
#include <libdash.h>
#include <iostream>
using dash::io::hdf5::hdf5_options;
using dash::io::hdf5::StoreHDF;
int main(int argc, char *argv[])
{
dash::init(&argc, &argv);
dash::Matrix<int, 1> *h5matrix = new dash::Matrix<int, 1>(dash::SizeSpec<1>(8));
StoreHDF::write(*h5matrix, "testf.h5", "testg/testd");
//2D works
//dash::Matrix<int, 2> *h5matrix = new dash::Matrix<int, 2>(dash::SizeSpec<2>(8, 8));
//StoreHDF::write(*h5matrix, "testf.h5", "testg/testd");
dash::finalize();
return EXIT_SUCCESS;
}
./h5-test.compile
In file included from h5-test.cpp:8:
In file included from /Users/dbin/opt/dash-0.4.0/include/libdash.h:71:
In file included from /Users/dbin/opt/dash-0.4.0/include/dash/io/HDF5.h:4:
/Users/dbin/opt/dash-0.4.0/include/dash/io/hdf5/StorageDriver.h:477:39: error:
no member named 'local_blockspec' in 'dash::TilePattern<1,
dash::ROW_MAJOR, long>'
const auto & lblockspec = pattern.local_blockspec();
~~~~~~~ ^
/Users/dbin/opt/dash-0.4.0/include/dash/io/hdf5/StorageDriver.h:582:12: note:
in instantiation of function template specialization
'dash::io::hdf5::StoreHDF::_get_hdf_slab_body<dash::TilePattern<1,
dash::ROW_MAJOR, long> >' requested here
1, _get_hdf_slab_body(pattern, {}));
^
/Users/dbin/opt/dash-0.4.0/include/dash/io/hdf5/internal/DriverImplZeroCopy.h:32:21: note:
in instantiation of function template specialization
'dash::io::hdf5::StoreHDF::_get_hdf_slabs<dash::TilePattern<1,
dash::ROW_MAJOR, long> >' requested here
auto hyperslabs = _get_hdf_slabs(container.pattern());
^
/Users/dbin/opt/dash-0.4.0/include/dash/io/hdf5/StorageDriver.h:733:5: note: in
instantiation of function template specialization
'dash::io::hdf5::StoreHDF::_process_dataset_impl_zero_copy<dash::Matrix<int,
1, long, dash::TilePattern<1, dash::ROW_MAJOR, long>, dash::HostSpace> >'
requested here
_process_dataset_impl_zero_copy(StoreHDF::Mode::WRITE, container, h5dset,
^
/Users/dbin/opt/dash-0.4.0/include/dash/io/hdf5/StorageDriver.h:234:5: note: in
instantiation of function template specialization
'dash::io::hdf5::StoreHDF::_write_dataset_impl<dash::Matrix<int, 1, long,
dash::TilePattern<1, dash::ROW_MAJOR, long>, dash::HostSpace> >' requested
here
_write_dataset_impl(array, h5dset, internal_type);
^
h5-test.cpp:26:12: note: in instantiation of function template specialization
'dash::io::hdf5::StoreHDF::write<dash::Matrix<int, 1, long,
dash::TilePattern<1, dash::ROW_MAJOR, long>, dash::HostSpace> >' requested
here
StoreHDF::write(*h5matrix, "testf.h5", "testg/testd");
^
1 error generated.
Metadata
Metadata
Assignees
Labels
No labels