Blocking and LM mapping

blocking.f90

Description

Module containing blocking information

Quick access

Variables:

llm, llmmag, lm2, lm22l, lm22lm, lm22m, lm2l, lm2lma, lm2lms, lm2m, lm_balance, lo_map, lo_sub_map, nlmbs2, sizelmb2, st_map, st_sub_map, ulm, ulmmag

Routines:

finalize_blocking(), get_lorder_lm_blocking(), get_snake_lm_blocking(), get_standard_lm_blocking(), get_subblocks(), initialize_blocking()

Needed modules

Variables

  • blocking/llm [integer,public]
  • blocking/llmmag [integer,public]
  • blocking/lm2 (*,*) [integer,pointer/public]
  • blocking/lm22l (*,*,*) [integer,pointer/public]
  • blocking/lm22lm (*,*,*) [integer,pointer/public]
  • blocking/lm22m (*,*,*) [integer,pointer/public]
  • blocking/lm2l (*) [integer,pointer/public]
  • blocking/lm2lma (*) [integer,pointer/public]
  • blocking/lm2lms (*) [integer,pointer/public]
  • blocking/lm2m (*) [integer,pointer/public]
  • blocking/lm_balance (*) [load,allocatable/public]
  • blocking/lo_map [mappings,target/public]
  • blocking/lo_sub_map [subblocks_mappings,target/public]
  • blocking/nlmbs2 (*) [integer,pointer/public]
  • blocking/sizelmb2 (*,*) [integer,pointer/public]
  • blocking/st_map [mappings,target/public]
  • blocking/st_sub_map [subblocks_mappings,target/public]
  • blocking/ulm [integer,public]
  • blocking/ulmmag [integer,public]

Subroutines and functions

subroutine  blocking/initialize_blocking()
Called from:

magic

Call to:

allocate_mappings(), abortrun(), getblocks(), get_standard_lm_blocking(), get_snake_lm_blocking(), get_lorder_lm_blocking(), allocate_subblocks_mappings(), get_subblocks(), memwrite()

subroutine  blocking/finalize_blocking()
Called from:

magic

Call to:

deallocate_mappings(), deallocate_subblocks_mappings()

subroutine  blocking/get_subblocks(map, sub_map)
Parameters:
  • map [mappings ,in]

  • sub_map [subblocks_mappings ,inout]

Called from:

initialize_blocking()

Call to:

abortrun()

subroutine  blocking/get_standard_lm_blocking(map, minc)
Parameters:
  • map [mappings ,inout]

  • minc [integer ,in]

Called from:

initialize_blocking()

Call to:

abortrun()

subroutine  blocking/get_lorder_lm_blocking(map, minc)
Parameters:
  • map [mappings ,inout]

  • minc [integer ,in]

Called from:

initialize_blocking()

Call to:

abortrun()

subroutine  blocking/get_snake_lm_blocking(map, minc, lm_balance)
Parameters:
  • map [mappings ,inout]

  • minc [integer ,in]

  • lm_balance (n_procs) [load ,inout]

Called from:

initialize_blocking()

Call to:

abortrun()

LMmapping.f90

Quick access

Types:

mappings, subblocks_mappings

Routines:

allocate_mappings(), allocate_subblocks_mappings(), deallocate_mappings(), deallocate_subblocks_mappings()

Needed modules

Types

  • type  lmmapping/mappings
    Type fields:
    • % l_max [integer ]

    • % lm2 (*,*) [integer ,allocatable]

    • % lm2l (*) [integer ,allocatable]

    • % lm2lma (*) [integer ,allocatable]

    • % lm2lms (*) [integer ,allocatable]

    • % lm2m (*) [integer ,allocatable]

    • % lm_max [integer ]

    • % m_max [integer ]

    • % m_min [integer ]

  • type  lmmapping/subblocks_mappings
    Type fields:
    • % l_max [integer ]

    • % lm22l (*,*,*) [integer ,allocatable]

    • % lm22lm (*,*,*) [integer ,allocatable]

    • % lm22m (*,*,*) [integer ,allocatable]

    • % m_max [integer ]

    • % m_min [integer ]

    • % nlmbs [integer ]

    • % nlmbs2 (*) [integer ,allocatable]

    • % sizelmb2 (*,*) [integer ,allocatable]

    • % sizelmb2max [integer ]

Variables

Subroutines and functions

subroutine  lmmapping/allocate_mappings(self, l_max, m_min, m_max, lm_max)
Parameters:
  • self [mappings ]

  • l_max [integer ,in]

  • m_min [integer ,in]

  • m_max [integer ,in]

  • lm_max [integer ,in]

Called from:

initialize_blocking()

subroutine  lmmapping/deallocate_mappings(self)
Parameters:

self [mappings ]

Called from:

finalize_blocking()

subroutine  lmmapping/allocate_subblocks_mappings(self, map, nlmbs, l_max, m_min, m_max, lm_balance)
Parameters:
  • self [subblocks_mappings ]

  • map [mappings ,in]

  • nlmbs [integer ,in,]

  • l_max [integer ,in]

  • m_min [integer ,in]

  • m_max [integer ,in]

  • lm_balance (nlmbs) [load ,in]

Called from:

initialize_blocking()

subroutine  lmmapping/deallocate_subblocks_mappings(self)
Parameters:

self [subblocks_mappings ]

Called from:

finalize_blocking()