[gmx-users] gromacs binaries for windows (Cygwin 64)

Tatsuro MATSUOKA tmacchant3 at yahoo.co.jp
Thu Sep 12 01:51:59 CEST 2019


>>  As in message in the cmake configure process, gcc on 64 bit windows is 
> buggy
>>  for AVX simd instruction.
> 
> Correct. But that is a GCC bug 
> (https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54412 ) 
> With ICC, MSVC, and Clang the problem doesn't exist.
I also noticed that.
I tried build using Clang on Cygwin. Build itself was passed but executable crashed.
But that was the first time to use Clang and something might wrong for my setting.  

>>  2. With AVX I could  Gromacs 2018 or later but binary are broken.
>>  With SSE simd instruction, Gromacs works all versions Usable binary with 
> AVX
>>  can be build on Gromacs 2016 or before.
> Are you referring to AVX with GCC on Win64? Or do you have issues with AVX with 
> any other compiler or OS?

Yes. AVX with GCC with Win64 (Cygwin 64). 
With 32 bit GCC on Cygwin with AVX, build and execute does not have problem.

As you said, with MSVC, Gromacs with AVX on Win64 works. 
BTW, at least VC 2017, MSVC supports AVX2 later, bur Gromacs 2019.3 does not support AVX2 or later.


I tried to attach the below

--- a/cmake/gmxSimdFlags.cmake    2019-05-29 16:16:15.000000000 +0900
+++ b/cmake/gmxSimdFlags.cmake    2019-09-10 15:18:47.782352000 +0900
@@ -245,7 +245,7 @@
         int main(){__m256i x=_mm256_set1_epi32(5);x=_mm256_add_epi32(x,x);return _mm256_movemask_epi8(x);}"
         TOOLCHAIN_C_FLAGS TOOLCHAIN_CXX_FLAGS
         SIMD_AVX2_C_FLAGS SIMD_AVX2_CXX_FLAGS
-        "-march=core-avx2" "-mavx2" "/arch:AVX" "-hgnu") # no AVX2-specific flag for MSVC yet
+        "-march=core-avx2" "-mavx2" "/arch:AVX2" "-hgnu") # no AVX2-specific flag for MSVC yet
 
     if(${SIMD_AVX2_C_FLAGS_RESULT})
         set(${C_FLAGS_VARIABLE} "${TOOLCHAIN_C_FLAGS} ${SIMD_AVX2_C_FLAGS}" CACHE INTERNAL "C flags required for AVX2 instructions")

The patch enables AVX2 detection, but built systyem compiles AVX 256 sources but not AVX2 256.
Further modification should be required.


Tatsuro  



----- Original Message -----
> From: "Schulz, Roland" <roland.schulz at intel.com>
> To: "gmx-users at gromacs.org" <gmx-users at gromacs.org>; Tatsuro MATSUOKA <tmacchant3 at yahoo.co.jp>; Szilárd Páll <pall.szilard at gmail.com>
> Cc: "gromacs.org_gmx-users at maillist.sys.kth.se" <gromacs.org_gmx-users at maillist.sys.kth.se>
> Date: 2019/9/12, Thu 04:08
> Subject: RE: [gmx-users] gromacs binaries for windows (Cygwin 64)
> 
> 
> 
>>  -----Original Message-----
>>  From: gromacs.org_gmx-users-bounces at maillist.sys.kth.se
>>  [mailto:gromacs.org_gmx-users-bounces at maillist.sys.kth.se] On Behalf Of
>>  Tatsuro MATSUOKA
>>  Sent: Tuesday, September 10, 2019 8:26 PM
>>  To: gmx-users at gromacs.org; Szilárd Páll <pall.szilard at gmail.com>;
>>  tmacchant3 at yahoo.co.jp
>>  Cc: gromacs.org_gmx-users at maillist.sys.kth.se
>>  Subject: Re: [gmx-users] gromacs binaries for windows (Cygwin 64)
>> 
>>  Sorry I wrote the previous mail without revise.
>> 
>> 
>>  Thank you for your comments.
>>  As in message in the cmake configure process, gcc on 64 bit windows is 
> buggy
>>  for AVX simd instruction.
> 
> Correct. But that is a GCC bug 
> (https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54412 ) 
> With ICC, MSVC, and Clang the problem doesn't exist.
> 
>>  1. I cannot use -DGMX_BUILD_OWN_FFTW=ON. I used FFTW on Cygwin
>>  repo.
> Correct. This option isn't intended for anything other than Linux.
> 
>>  2. With AVX I could  Gromacs 2018 or later but binary are broken.
>>  With SSE simd instruction, Gromacs works all versions Usable binary with 
> AVX
>>  can be build on Gromacs 2016 or before.
> Are you referring to AVX with GCC on Win64? Or do you have issues with AVX with 
> any other compiler or OS?
> 
>>  Please also see Notes for Cygwin build
>>  (http://tmacchant3.starfree.jp/gromacs/win/notes_cygwin.html ) on my
> 
> Roland
> 
>>  web site.
>> 
>>  Now I added MSVC binary (http://tmacchant3.starfree.jp/gromacs/win ) and
>>  Notes for MSVC build
>>  (http://tmacchant3.starfree.jp/gromacs/win/notes_MSVC.html ).
>> 
>>  Tatsuro
>> 
>> 
>> 
>>  ----- Original Message -----
>>  > From: Tatsuro MATSUOKA <tmacchant3 at yahoo.co.jp>
>>  > To: Szilárd Páll <pall.szilard at gmail.com>; Discussion list for 
> GROMACS
>>  > users <gmx-users at gromacs.org>
>>  > Cc: "gromacs.org_gmx-users at maillist.sys.kth.se"
>>  > <gromacs.org_gmx-users at maillist.sys.kth.se>
>>  > Date: 2019/9/11, Wed 11:54
>>  > Subject: Re: [gmx-users] gromacs binaries for windows (Cygwin 64)
>>  >
>>  >T hank you for your comments.
>>  > As in cmake configure process, gcc on 64 bit windows is buggy for AVX
>>  >simd  instruction.
>>  >
>>  >
>>  > 1. I cannot use -DGMX_BUILD_OWN_FFTW=ON. I used FFTW on Cygwin
>>  repo.
>>  > 2. With AVX I could  Gromacs 2018 or later but binary are broken 
> before.
>>  > Usable binary can be Gromacs 2016 or before.
>>  >
>>  > Please also SEE Notes on my web site.
>>  >
>>  > Now I adde MSVC binary.
>>  >
>>  >
>>  > Tatsuro
>>  >
>>  >
>>  >
>>  >
>>  > ----- Original Message -----
>>  >>  From: Szilárd Páll <pall.szilard at gmail.com>
>>  >>  To: Discussion list for GROMACS users 
> <gmx-users at gromacs.org>;
>>  > Tatsuro MATSUOKA <tmacchant3 at yahoo.co.jp>
>>  >>  Cc: "gromacs.org_gmx-users at maillist.sys.kth.se"
>>  > <gromacs.org_gmx-users at maillist.sys.kth.se>
>>  >>  Date: 2019/9/10, Tue 18:21
>>  >>  Subject: Re: [gmx-users] gromacs binaries for windows (Cygwin 64)
>>  >>
>>  >>  Dear Tatsuro,
>>  >>
>>  >>  Thanks for the contributions!
>>  >>
>>  >>  Do the builds work out cleanly on cygwin? Are there any 
> additional
>>  >> instructions we should consider including in our installation 
> guide?
>>  >>
>>  >>  Cheers,
>>  >>  --
>>  >>  Szilárd
>>  >>
>>  >>  On Fri, Sep 6, 2019 at 5:46 AM Tatsuro MATSUOKA
>>  > <tmacchant3 at yahoo.co.jp>
>>  >>  wrote:
>>  >>>
>>  >>>   I have prepared gromacs binaries for windows (Cygwin 64) on 
> my own
>>  >>> web
>>  >
>>  >>  site.
>>  >>>   (For testing purpose.)
>>  >>>
>>  >>>   http://tmacchant3.starfree.jp/gromacs/win/ 
>>  >>>
>>  >>>   Tatsuro
>>  >>>
>>  >>>   --
>>  >>>   Gromacs Users mailing list
>>  >>>
>>  >>>   * Please search the archive at
>>  >>  http://www.gromacs.org/Support/Mailing_Lists/GMX-Users_List 
> before
>>  posting!
>>  >>>
>>  >>>   * Can't post? Read 
> http://www.gromacs.org/Support/Mailing_Lists 
>>  >>>
>>  >>>   * For (un)subscribe requests visit
>>  >>>   
> https://maillist.sys.kth.se/mailman/listinfo/gromacs.org_gmx-users 
>>  >>> or
>>  > send
>>  >>  a mail to gmx-users-request at gromacs.org.
>>  >>
>>  >
>>  > --
>>  > Gromacs Users mailing list
>>  >
>>  > * Please search the archive at
>>  > http://www.gromacs.org/Support/Mailing_Lists/GMX-Users_List before
>>  posting!
>>  >
>>  > * Can't post? Read http://www.gromacs.org/Support/Mailing_Lists 
>>  >
>>  > * For (un)subscribe requests visit
>>  > https://maillist.sys.kth.se/mailman/listinfo/gromacs.org_gmx-users or
>>  > send a mail to gmx-users-request at gromacs.org.
>>  >
>> 
>>  --
>>  Gromacs Users mailing list
>> 
>>  * Please search the archive at
>>  http://www.gromacs.org/Support/Mailing_Lists/GMX-Users_List before
>>  posting!
>> 
>>  * Can't post? Read http://www.gromacs.org/Support/Mailing_Lists 
>> 
>>  * For (un)subscribe requests visit
>>  https://maillist.sys.kth.se/mailman/listinfo/gromacs.org_gmx-users or send
>>  a mail to gmx-users-request at gromacs.org.
> 



More information about the gromacs.org_gmx-users mailing list