Hi Matt
Yes - I did manage to get it to work with Intel compilers on Windows -
both serial and parallel builds. What compilers are you using?
Instructions for the Intel compilers are below.
Attached is a new CTestScript.cmake file. Replace the one you are
currently using with this one.
Also, you will need to edit the HDF5config.cmake file and add this
line to it. Change its value to match your Intel compiler:
set(CMAKE_GENERATOR_TOOLSET "Intel C++ Compiler 17.0")
(the name changes depending on what version of Intel compiler you are using
- e.g. for XE2015 it is ""Intel C++ Compiler XE 15.0").
Also in the config file to build parallel add the following to the config
file (this is on the HDF5 web page as well)
set(ADD_BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DHDF5_ENABLE_PARALLEL:BOOL=ON")
set(ADD_BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DMPIEXEC_MAX_NUMPROCS:STRING=
4")
With Intel compilers I could not build the C++ library, so I added
set(ADD_BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DHDF5_BUILD_CPP_LIB:BOOL=OFF"
)
after the line
### uncomment/comment and change the following lines for other
configuration options
in the config file.
I hope this helps. I have not built the parallel version with VS, only
Intel, but I believe you should be OK with VS as long as you have MS MPI.
Regards,
Tony
CTestScript.cmake
<https://drive.google.com/a/ansys.com/file/d/0B648F0KbCdBTaFNKck5PaUxyamNac2ZwT2Y3MzJfYjg4UjZ3/view?usp=drive_web>
···
On Wed, Mar 22, 2017 at 6:25 PM, Matt Peterson <wmattpeterson@gmail.com> wrote:
Hi Tony,
Were you able to get this set up?
The HDF Cmake file continues to be a mystery to me and I've no time to
figure it out right now. As an alternative, I've compiled the serial
version on Windows using only the command line shell, without Visual
Studio. However, if the parallel version compiled for you, I might give it
another go.
Thanks,
MP
On Sun, Feb 26, 2017 at 2:11 PM, Tony Garratt <tony.garratt@ansys.com> > wrote:
Thank you. This link also refers to using the -T option that I have used
(with some partial success with Intel XE2015). I tried the suggestion on
the page but it did not work for me. However, I think the way forward is to
use -T option and then manually open the overall VS project and build
manually.
Regards,
Tony
On Tue, Feb 21, 2017 at 7:35 PM, David Brooks <d.brooks@auckland.ac.nz> >> wrote:
Hi Tony,
You might have already explored this approach but have you seen
http://stackoverflow.com/questions/27623110/how-to-generate-
a-visual-studio-project-that-uses-the-intel-compiler-using-cmake ??
Regards,
Dave
On 22/02/17 1:06 AM, Tony Garratt wrote:
Thank you for your reply. What I am wanting to do is build CGNS (
https://cgns.github.io/WhatIsCGNS.html) in parallel to get parallel
I/O, which requires HDF5 to be built in parallel - its not just thread
safety I am after.
Everything works fine on Linux, since there I can still use configure to
build HDF5 and even Intel give advice on how to build it with their
compilers at https://software.intel.com/en-us/articles/performance-too
ls-for-software-developers-building-hdf5-with-intel-compilers.
The problem is that the move to cmake has left me in the dark now. If
configure was still supported on Windows for HDF5, then I the path forward
is known. cmake appears to be very VS centric, which is fine if you are OK
with MS compilers and not clear to me how I can switch to Intel compilers.
Regards,
Tony
On Tue, Feb 21, 2017 at 11:58 AM, Samer Afach <samer@afach.de> wrote:
Hi Tony:
I don't know what the features of hdf5 with parallel are, but if all
you want to achieve is have thread safety, I recommend that you use mutexes
manually. Just wrap every call to hdf5 with std::lock_guard() or
std::unique_lock(). If you can't use C++11, then you can get the same
features from the boost library. This will make your code work independent
of the build settings of hdf5.
I do this to avoid the obvious mistake of running a program in parallel
with a version of hdf5 that is built for serial. It's much cleaner.
Cheers,
Sam
On February 21, 2017 12:23:03 PM GMT+01:00, Tony Garratt < >>>> tony.garratt@ansys.com> wrote:
Following on my previous post, I notice that at
https://support.hdfgroup.org/HDF5/release/platforms5.html
you have built with Intel Fortran. How would one use cmake to build
parallel HDF5 on Windows with both Intel C++ and Intel Fortran please?
Regards,
Tony
--
*Dr Tony Garratt*
Tel: +44 7624 309933 <+44%2076%202430%209933>
--
Sent from my Android device.
_______________________________________________
Hdf-forum is for HDF software users discussion.
Hdf-forum@lists.hdfgroup.org
http://lists.hdfgroup.org/mailman/listinfo/hdf-forum_lists.hdfgroup.org
Twitter: https://twitter.com/hdf5
--
*Dr Tony Garratt*
Tel: +44 7624 309933
_______________________________________________
Hdf-forum is for HDF software users discussion.Hdf-forum@lists.hdfgroup.orghttp://lists.hdfgroup.org/mailman/listinfo/hdf-forum_lists.hdfgroup.org
Twitter: https://twitter.com/hdf5
_______________________________________________
Hdf-forum is for HDF software users discussion.
Hdf-forum@lists.hdfgroup.org
http://lists.hdfgroup.org/mailman/listinfo/hdf-forum_lists.hdfgroup.org
Twitter: https://twitter.com/hdf5
--
*Dr Tony Garratt*
Tel: +44 7624 309933 <+44%2076%202430%209933>
_______________________________________________
Hdf-forum is for HDF software users discussion.
Hdf-forum@lists.hdfgroup.org
http://lists.hdfgroup.org/mailman/listinfo/hdf-forum_lists.hdfgroup.org
Twitter: https://twitter.com/hdf5
_______________________________________________
Hdf-forum is for HDF software users discussion.
Hdf-forum@lists.hdfgroup.org
http://lists.hdfgroup.org/mailman/listinfo/hdf-forum_lists.hdfgroup.org
Twitter: https://twitter.com/hdf5
--
*Dr Tony Garratt*
Tel: +44 7624 309933 <+44%2076%202430%209933>