Hi, 

Thanks for your helping me to understand the problem.
I think now I understand the problem correctly. 

Rafael Asenjo and Rafael Larrosa.
I'm pretty sure my assignment have involved a contiguous block and 
useBulkTransfer is active and useBulkTransferStride is not active in my chapel 
compiler.
I just wanted to make both sure my code (useBulkTransfer) and Rafaerl Larrosa's 
code (useBulkTransferStride) can fail due to the ibv-conduit bug 
(https://upc-bugs.lbl.gov/bugzilla/show_bug.cgi?id=495).

Brad,
I also now understand we don't need to prepare C+GASNet test case because 
GASNet  community knows the problem.

Best,

Akihiro

On Jan 30, 2014, at 11:38 AM, Brad Chamberlain wrote:

> 
> Thanks for clarifying this Rafa -- I haven't done a good job of keeping this 
> clear myself.
> 
> I think we're now in a position where we no longer need to generate a 
> C+GASNet test case since GASNet already knows about the problem (sorry if I 
> didn't make that clear in my previous mail).
> 
> But, we do need to think about how to implement a workaround in Chapel, 
> perhaps one specific to using the ibv conduit (which we could make available 
> to the module and runtime code if we don't already).  I haven't had a chance 
> to review the GASNet bug and workarounds yet and am not sure I'd be the best 
> person to process that and make a recommendation anyway. Has anyone else?  Is 
> there a clear way we should proceed here?
> 
> Thanks,
> -Brad
> 
> 
> 
> 
> On Thu, 30 Jan 2014, Rafael Asenjo Plaza wrote:
> 
>> Hi,
>> 
>> Let me clarify something. There are two bulkTransfer optimizations. The 
>> useBulkTransfer is active by default and only deals with contiguous chunks 
>> of data. This is the one Akihiro is using and the one that fails in his 
>> code. Then, we have useBulkTransferStride that is off by default and that 
>> deal with strided arrays. I guess Akihiro did not enable that one, but is 
>> the one used by Rafael Larrosa and it fails in his code. So both, 
>> useBulkTransfer and useBulkTransferStride, can fail due to ibv-conduit bug.
>> 
>> Akihiro, if your assignment had involved a non-contiguous block of memory, 
>> Chapel would have not triggered the BulkTransfer function. If you set 
>> -useBultTransferStride=true, then the assignments that can benefit from 
>> strided communications will rely on bulkTransferStride runtime functions.
>> 
>> Thanks,
>> 
>> Rafa.
>> 
>> El 30/01/2014, a las 11:39, rafael <[email protected]> escribió:
>> 
>>> Hi,
>>> 
>>>> Hi, Brad and Rafael,
>>>> 
>>>> Brad, thanks for your sending message to GASNet community.That's very 
>>>> helpful.
>>>> I'm going to try the work-arounds.
>>>> 
>>>> Let me ask a question about "stride" issue.
>>>> Here is part of my problematic code. If you want to see whole code, please 
>>>> take a look at my previous mail.
>>>> 
>>>> const zero: int(32) = 0;
>>>> var tile_array_indices = {zero..tileSize-1,zero..tileSize-1};
>>>> class Tile {
>>>> var tile_array: [tile_array_indices] real;
>>>> }
>>>> 
>>>> var temp = lkji_tiles(i,j,zero).tile_array;
>>>> 
>>>> I would like to make sure there is no stride code in my program.
>>> 
>>> If you disable the bulkComms optimization no strided comms are used, it was 
>>> point 1 in the list from Rafael Asenjo :
>>> 
>>> 1.- Not using bulkComms optimization (-suseBulkTransferStride=false 
>>> -suseBulkTransfer=false). —> Slower comms.
>>> 
>>> That is the faster solution, but as it said, the comms will be a lot 
>>> slower. You only need to put those arguments :
>>> 
>>> -suseBulkTransferStride=false -suseBulkTransfer=false
>>> 
>>> when compiling with chpl.
>>> 
>>>> Am I right to thinking the Chapel compiler compiles "var temp = 
>>>> lkji_tiles(i,j,zero).tile_array;" to just one contiguous bulk transfer?
>> 
>> __
>> Rafael Asenjo Plaza
>> Dept. Arquitectura de Computadores
>> Complejo Tecnologico Campus de Teatinos
>> E-29071 MALAGA (SPAIN)
>> Tel: +34 95 213 27 91
>> Fax: +34 95 213 27 90
>> http://www.ac.uma.es/~asenjo
>> 
>> 
>> ------------------------------------------------------------------------------
>> WatchGuard Dimension instantly turns raw network data into actionable
>> security intelligence. It gives you real-time visual feedback on key
>> security issues and trends.  Skip the complicated setup - simply import
>> a virtual appliance and go from zero to informed in seconds.
>> http://pubads.g.doubleclick.net/gampad/clk?id=123612991&iu=/4140/ostg.clktrk
>> _______________________________________________
>> Chapel-developers mailing list
>> [email protected]
>> https://lists.sourceforge.net/lists/listinfo/chapel-developers


------------------------------------------------------------------------------
WatchGuard Dimension instantly turns raw network data into actionable 
security intelligence. It gives you real-time visual feedback on key
security issues and trends.  Skip the complicated setup - simply import
a virtual appliance and go from zero to informed in seconds.
http://pubads.g.doubleclick.net/gampad/clk?id=123612991&iu=/4140/ostg.clktrk
_______________________________________________
Chapel-developers mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/chapel-developers

Reply via email to