ScalES-PPM
Loading...
Searching...
No Matches
Data Types | Functions/Subroutines
ppm_sparse_mask_index Module Reference

ppm_sparse_mask_index supposing you have a mask array and use it in something like a WHERE, then it can be beneficial to only visit those indices of the array expression with the condition evaluating to .TRUE., in case this is relatively sparse or the ensuing conditional is expensive in comparison to the WHERE/FORALL body More...

Data Types

interface  fold_mask
 
interface  index_from_mask
 
type  index_sparse_nd
 

Functions/Subroutines

pure subroutine, public build_ranges_1d (mask, ofs, d_ranges, d_ranges_base, rcount)
 construct ranges to represent true elements of mask
 
pure integer function, public count_ranges_1d (mask)
 
pure subroutine index_from_mask_1d (idx, mask, offsets)
 
pure subroutine fold_mask_2d (mask, dim, reduction)
 
pure subroutine fold_mask_3d (mask, dim, reduction)
 
pure subroutine build_ranges_2d (mask, subscript_sequence, offsets, d_ranges, num_tl_ranges, d_ranges_base, rcount)
 
pure integer function count_ranges_2d (mask, subscript_sequence)
 
pure subroutine index_from_mask_2d (idx, mask, offsets, sseq)
 
pure subroutine build_ranges_3d (mask, subscript_sequence, offsets, d_ranges, num_tl_ranges, rcount)
 
pure integer function count_ranges_3d (mask, subscript_sequence)
 
pure subroutine index_from_mask_3d (idx, mask, offsets, sseq)
 

Detailed Description

ppm_sparse_mask_index supposing you have a mask array and use it in something like a WHERE, then it can be beneficial to only visit those indices of the array expression with the condition evaluating to .TRUE., in case this is relatively sparse or the ensuing conditional is expensive in comparison to the WHERE/FORALL body

Function/Subroutine Documentation

◆ count_ranges_1d()

pure integer function, public ppm_sparse_mask_index::count_ranges_1d ( logical, dimension(:), intent(in) mask)
Returns
number of ranges required to represent true values in mask

Das diesem Bericht zugrundeliegende Vorhaben wurde mit Mitteln des Bundesministeriums für Bildung, und Forschung unter dem Förderkennzeichen 01IH08004E gefördert. Die Verantwortung für den Inhalt dieser Veröffentlichung liegt beim Autor.