FWIW, I think we imported your patch a while ago.  Here it is on the trunk:

https://svn.open-mpi.org/trac/ompi/browser/trunk/opal/mca/memory/linux/malloc.c#L3933

And here it is on v1.6:

https://svn.open-mpi.org/trac/ompi/browser/branches/v1.6/opal/mca/memory/linux/malloc.c#L3933



On May 24, 2012, at 2:06 PM, Larry Baker wrote:

> Terry,
> 
> What you are seeing is a bug in the vectorizer in the Intel 2011.6.233 
> release.  We've talked about this before.  You should probably remove that 
> compiler from your system(s).  I think the new release of OpenMPI describes 
> this problem, but does not stop if from occurring.  I write a patch for 
> ptmalloc2/malloc.c for OpenMPI 1.4.3 which automatically adjusts the 
> optimization level for _int_malloc(), which is where the bug occurs.
> 
> Larry Baker
> US Geological Survey
> 650-329-5608
> ba...@usgs.gov
> 
> ---------- Start of Patch ----------
> --- opal/mca/memory/ptmalloc2/malloc.c.original       2010-04-13 
> 10:30:26.000000000 -0700
> +++ opal/mca/memory/ptmalloc2/malloc.c        2011-11-04 15:01:37.000000000 
> -0700
> @@ -2,6 +2,17 @@
>  /* Copyright (c) 2010      Cisco Systems, Inc.  All rights reserved.
>   */
>  
> +/* With Intel Composer XE V12.1.0, release 2011.6.233, any launch   */
> +/* fails, even before main(), due to a bug in the vectorizer (see   */
> +/* https://svn.open-mpi.org/trac/ompi/changeset/25290).  The fix is */
> +/* to disable vectorization by reducing the optimization level to   */
> +/* -O1 for _int_malloc().  The only reliable method to identify     */
> +/* release 2011.6.233 is the predefined __INTEL_COMPILER_BUILD_DATE */
> +/* macro, which will have the value 20110811 (Linux, Windows, and   */
> +/* Mac OS X).  (The predefined __INTEL_COMPILER macro is nonsense,  */
> +/* 9999, and both the 2011.6.233 and 2011.7.256 releases identify   */
> +/* themselves as V12.1.0 from the -v command line option.)          */
> +
>  #define OPAL_DISABLE_ENABLE_MEM_DEBUG 1
>  #include "opal_config.h"
>  
> @@ -3945,6 +3956,12 @@
>    ------------------------------ malloc ------------------------------
>  */
>  
> +#ifdef __INTEL_COMPILER_BUILD_DATE
> +#if __INTEL_COMPILER_BUILD_DATE == 20110811
> +#pragma GCC optimization_level 1
> +#endif
> +#endif
> +
>  Void_t*
>  _int_malloc(mstate av, size_t bytes)
>  {
> ---------- End of Patch ----------
> 
> On 24 May 2012, at 6:54 AM, TERRY DONTJE wrote:
> 
>> I am seeing several Cart Fortran tests (like MPI_Cart_coords_f) segv in 
>> opal_memory_ptmalloc2_int_free when OMPI trunk is compiled with icc 12.1.0 
>> for 64 bit on linux.   Just wondering if anyone has seen anything similar to 
>> this with a different version of icc.  Other non-Intel compilers seem to not 
>> exhibit this issue.
>> 
>> -- 
>> Terry D. Dontje | Principal Software Engineer
>> Developer Tools Engineering | +1.781.442.2631
>> Oracle - Performance Technologies
>> 95 Network Drive, Burlington, MA 01803
>> Email terry.don...@oracle.com
>> 
>> 
>> 
>> _______________________________________________
>> devel mailing list
>> de...@open-mpi.org
>> http://www.open-mpi.org/mailman/listinfo.cgi/devel
> 
> _______________________________________________
> devel mailing list
> de...@open-mpi.org
> http://www.open-mpi.org/mailman/listinfo.cgi/devel


-- 
Jeff Squyres
jsquy...@cisco.com
For corporate legal information go to: 
http://www.cisco.com/web/about/doing_business/legal/cri/


Reply via email to