CSC/ECE 506 Fall 2007/wiki 11 e4: Difference between revisions

From Expertiza_Wiki
Jump to navigation Jump to search
Line 2: Line 2:
== '''Sections 1.3.1 and 1.3.2: Communication and programming model.''' ==
== '''Sections 1.3.1 and 1.3.2: Communication and programming model.''' ==
   
   
== How have reordering strategies evolved to accommodate larger multicomputers? ==
Strategies in the book include:


'''How have reordering strategies evolved to accommodate larger multicomputers?'''  
''Implicit ordering'' – Operations in a thread are in program order. When multiple threads access the same data, there is no guarantee that they will not reach the data too late/too soon.


Strategies in the book include:
''Mutual Exclusion'' – Certain operations on certain data are performed by only one thread/process at a time. Sequential without the specific order or events.


''Implicit ordering''
''Events'' – Specific events allow other processes to start. “Events may be point to point, involving a pair of processes, or they may be global,” involving all or a group of processes.


''Mutual Exclusion''
Updated information


''Events''
'''Process Ordering'''
 
''Explicit Reordering'' – Avoid overhead by explicitly assigning and ordering to take advantage of data locality. Complicated Data Dependency
 
'''Data Reordering''':
 
''Reverse Cuthill-McKee (RCM) Reordering'' -  Typical level set reordering method.  Elements of a level set are traversed from the nodes of the highest degree to those of the lowest degree, according to dependency relationships. Degree refers to the number of nodes connected to each node.
 
''Multicoloring reordering'' –
 
''DJDS reordering''- “For efficient vector processing, producing 1D arrays of coefficients with continuous memory access and sufficient length of innermost loops.”
    Descending-order jagged diagonal storage (DJDS) involves permuting rows into an order of decreasing number of non-zeros. Can be modified to split and permute arrays to be distributed across an SMP node (parallel DJDS or PDJDS)
 
[http://geofem.tokyo.rist.or.jp/report_common/GeoFEM03_003.pdf] provides a good explanation and comparison of RCM/CM/PDJDS re-ordering techniques.


*Will add more detail on Tues*


'''Have new kinds of synchronization operations been developed?'''  
'''Have new kinds of synchronization operations been developed?'''  


'''I doubt that other topics covered in these sections have changed much, but do check.'''
'''I doubt that other topics covered in these sections have changed much, but do check.'''

Revision as of 02:27, 5 September 2007

Sections 1.3.1 and 1.3.2: Communication and programming model.

How have reordering strategies evolved to accommodate larger multicomputers?

Strategies in the book include:

Implicit ordering – Operations in a thread are in program order. When multiple threads access the same data, there is no guarantee that they will not reach the data too late/too soon.

Mutual Exclusion – Certain operations on certain data are performed by only one thread/process at a time. Sequential without the specific order or events.

Events – Specific events allow other processes to start. “Events may be point to point, involving a pair of processes, or they may be global,” involving all or a group of processes.

Updated information

Process Ordering

Explicit Reordering – Avoid overhead by explicitly assigning and ordering to take advantage of data locality. Complicated Data Dependency

Data Reordering:

Reverse Cuthill-McKee (RCM) Reordering - Typical level set reordering method. Elements of a level set are traversed from the nodes of the highest degree to those of the lowest degree, according to dependency relationships. Degree refers to the number of nodes connected to each node.

Multicoloring reordering

DJDS reordering- “For efficient vector processing, producing 1D arrays of coefficients with continuous memory access and sufficient length of innermost loops.”

    Descending-order jagged diagonal storage (DJDS) involves permuting rows into an order of decreasing number of non-zeros. Can be modified to split and permute arrays to be distributed across an SMP node (parallel DJDS or PDJDS)

[1] provides a good explanation and comparison of RCM/CM/PDJDS re-ordering techniques.


Have new kinds of synchronization operations been developed?

I doubt that other topics covered in these sections have changed much, but do check.