George,

i was unable to reproduce the hang with icc 14.0.3.174 and greater on a
RHEL6 like distro.

i was able to reproduce the opal_tree failure and found two possible
workarounds :
a) manually compile opal/class/opal_tree.lo *without* the
-finline-functions flag
b) update deserialize_add_tree_item and declare curr_delim as volatile
char * (see the patch below)

this function is recursive, and the compiler could generate some
incorrect code.

Cheers,

Gilles

diff --git a/opal/class/opal_tree.c b/opal/class/opal_tree.c
index e8964e0..492e8dc 100644
--- a/opal/class/opal_tree.c
+++ b/opal/class/opal_tree.c
@@ -465,7 +465,7 @@ int opal_tree_serialize(opal_tree_item_t
*start_item, opal_buffer_t *buffer)
 static int deserialize_add_tree_item(opal_buffer_t *data,
                                      opal_tree_item_t *parent_item,
                                      opal_tree_item_deserialize_fn_t
deserialize,
-                                     char *curr_delim,
+                                     volatile char *curr_delim,
                                      int depth)
 {
     int idx = 1, rc;

On 2015/01/16 8:57, George Bosilca wrote:
> Today's trunk compiled with icc fails to complete the check on 2 tests:
> opal_lifo and opal_tree.
>
> For opal_tree the output is:
> OPAL dss:unpack: got type 9 when expecting type 3
>  Failure :  failed tree deserialization size compare
> SUPPORT: OMPI Test failed: opal_tree_t (1 of 12 failed)
>
> and opal_lifo gets stuck forever in the single threaded call to thread_test
> in a 128 bits atomic CAS. Unfortunately I lack the time to dig deep enough
> to see what is the root cause, but a quick look at the opal_config.h file
> indicates that our configure detects that __int128 is a supported type when
> it should not be.
>
>   George
>
> Open MPI git d13c14e configured with --enable-debug
> icc (ICC) 14.0.0 20130728
>
>
>
> _______________________________________________
> devel mailing list
> de...@open-mpi.org
> Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/devel
> Link to this post: 
> http://www.open-mpi.org/community/lists/devel/2015/01/16789.php

Reply via email to