diff --git a/src/sstruct_mv/_hypre_sstruct_mv.h b/src/sstruct_mv/_hypre_sstruct_mv.h index 6ef1e6184..4bbdb2a1e 100644 --- a/src/sstruct_mv/_hypre_sstruct_mv.h +++ b/src/sstruct_mv/_hypre_sstruct_mv.h @@ -1,10 +1,3 @@ -/****************************************************************************** - * Copyright 1998-2019 Lawrence Livermore National Security, LLC and other - * HYPRE Project Developers. See the top-level COPYRIGHT file for details. - * - * SPDX-License-Identifier: (Apache-2.0 OR MIT) - ******************************************************************************/ - /*** DO NOT EDIT THIS FILE DIRECTLY (use 'headers' to generate) ***/ @@ -25,6 +18,13 @@ extern "C" { #endif +/****************************************************************************** + * Copyright 1998-2019 Lawrence Livermore National Security, LLC and other + * HYPRE Project Developers. See the top-level COPYRIGHT file for details. + * + * SPDX-License-Identifier: (Apache-2.0 OR MIT) + ******************************************************************************/ + /****************************************************************************** * * Header info for the hypre_SStructGrid structures @@ -104,8 +104,8 @@ enum hypre_SStructBoxManInfoType typedef struct { HYPRE_Int type; - HYPRE_BigInt offset; - HYPRE_BigInt ghoffset; + HYPRE_BigInt offset; + HYPRE_BigInt ghoffset; } hypre_SStructBoxManInfo; @@ -313,6 +313,13 @@ typedef struct hypre_SStructGrid_struct #endif +/****************************************************************************** + * Copyright 1998-2019 Lawrence Livermore National Security, LLC and other + * HYPRE Project Developers. See the top-level COPYRIGHT file for details. + * + * SPDX-License-Identifier: (Apache-2.0 OR MIT) + ******************************************************************************/ + /****************************************************************************** * * Header info for hypre_SStructStencil data structures @@ -354,6 +361,13 @@ hypre_StructStencilNDim( hypre_SStructStencilSStencil(stencil) ) hypre_StructStencilElement( hypre_SStructStencilSStencil(stencil), i ) #endif +/****************************************************************************** + * Copyright 1998-2019 Lawrence Livermore National Security, LLC and other + * HYPRE Project Developers. See the top-level COPYRIGHT file for details. + * + * SPDX-License-Identifier: (Apache-2.0 OR MIT) + ******************************************************************************/ + /****************************************************************************** * * Header info for the hypre_SStructGraph structures @@ -518,6 +532,13 @@ typedef struct hypre_SStructGraph_struct #define hypre_SStructGraphEntryToVar(g) ((g) -> to_var) #endif +/****************************************************************************** + * Copyright 1998-2019 Lawrence Livermore National Security, LLC and other + * HYPRE Project Developers. See the top-level COPYRIGHT file for details. + * + * SPDX-License-Identifier: (Apache-2.0 OR MIT) + ******************************************************************************/ + /****************************************************************************** * * Header info for the hypre_SStructMatrix structures @@ -639,6 +660,13 @@ hypre_SStructPGridNDim(hypre_SStructPMatrixPGrid(pmat)) #define hypre_SStructPMatrixRefCount(pmat) ((pmat) -> ref_count) #endif +/****************************************************************************** + * Copyright 1998-2019 Lawrence Livermore National Security, LLC and other + * HYPRE Project Developers. See the top-level COPYRIGHT file for details. + * + * SPDX-License-Identifier: (Apache-2.0 OR MIT) + ******************************************************************************/ + /****************************************************************************** * * Header info for the hypre_SStructVector structures @@ -741,6 +769,13 @@ typedef struct hypre_SStructVector_struct #define hypre_SStructPVectorDataSize(pvec) ((pvec) -> datasize ) #endif +/****************************************************************************** + * Copyright 1998-2019 Lawrence Livermore National Security, LLC and other + * HYPRE Project Developers. See the top-level COPYRIGHT file for details. + * + * SPDX-License-Identifier: (Apache-2.0 OR MIT) + ******************************************************************************/ + /* HYPRE_sstruct_graph.c */ HYPRE_Int HYPRE_SStructGraphCreate ( MPI_Comm comm , HYPRE_SStructGrid grid , HYPRE_SStructGraph *graph_ptr ); HYPRE_Int HYPRE_SStructGraphDestroy ( HYPRE_SStructGraph graph ); diff --git a/src/sstruct_mv/protos.h b/src/sstruct_mv/protos.h index 3fb843cf4..40c78aa97 100644 --- a/src/sstruct_mv/protos.h +++ b/src/sstruct_mv/protos.h @@ -89,7 +89,7 @@ HYPRE_Int hypre_SStructCopy ( hypre_SStructVector *x , hypre_SStructVector *y ); /* sstruct_graph.c */ HYPRE_Int hypre_SStructGraphRef ( hypre_SStructGraph *graph , hypre_SStructGraph **graph_ref ); -HYPRE_Int hypre_SStructGraphGetUVEntryRank( hypre_SStructGraph *graph , HYPRE_Int part , HYPRE_Int var , hypre_Index index, HYPRE_Int *rank ); +HYPRE_Int hypre_SStructGraphGetUVEntryRank( hypre_SStructGraph *graph , HYPRE_Int part , HYPRE_Int var , hypre_Index index, HYPRE_BigInt *rank ); HYPRE_Int hypre_SStructGraphFindBoxEndpt ( hypre_SStructGraph *graph , HYPRE_Int part , HYPRE_Int var , HYPRE_Int proc , HYPRE_Int endpt , HYPRE_Int boxi ); HYPRE_Int hypre_SStructGraphFindSGridEndpts ( hypre_SStructGraph *graph , HYPRE_Int part , HYPRE_Int var , HYPRE_Int proc , HYPRE_Int endpt , HYPRE_Int *endpts ); @@ -111,8 +111,8 @@ HYPRE_Int hypre_SStructGridFindNborBoxManEntry ( hypre_SStructGrid *grid , HYPRE HYPRE_Int hypre_SStructGridBoxProcFindBoxManEntry ( hypre_SStructGrid *grid , HYPRE_Int part , HYPRE_Int var , HYPRE_Int box , HYPRE_Int proc , hypre_BoxManEntry **entry_ptr ); HYPRE_Int hypre_SStructBoxManEntryGetCSRstrides ( hypre_BoxManEntry *entry , hypre_Index strides ); HYPRE_Int hypre_SStructBoxManEntryGetGhstrides ( hypre_BoxManEntry *entry , hypre_Index strides ); -HYPRE_Int hypre_SStructBoxManEntryGetGlobalCSRank ( hypre_BoxManEntry *entry , hypre_Index index , HYPRE_Int *rank_ptr ); -HYPRE_Int hypre_SStructBoxManEntryGetGlobalGhrank ( hypre_BoxManEntry *entry , hypre_Index index , HYPRE_Int *rank_ptr ); +HYPRE_Int hypre_SStructBoxManEntryGetGlobalCSRank ( hypre_BoxManEntry *entry , hypre_Index index , HYPRE_BigInt *rank_ptr ); +HYPRE_Int hypre_SStructBoxManEntryGetGlobalGhrank ( hypre_BoxManEntry *entry , hypre_Index index , HYPRE_BigInt *rank_ptr ); HYPRE_Int hypre_SStructBoxManEntryGetProcess ( hypre_BoxManEntry *entry , HYPRE_Int *proc_ptr ); HYPRE_Int hypre_SStructBoxManEntryGetBoxnum ( hypre_BoxManEntry *entry , HYPRE_Int *id_ptr ); HYPRE_Int hypre_SStructBoxManEntryGetPart ( hypre_BoxManEntry *entry , HYPRE_Int part , HYPRE_Int *part_ptr ); @@ -122,7 +122,7 @@ HYPRE_Int hypre_SStructNborIndexToIndex( hypre_Index nbor_index , hypre_Index ro HYPRE_Int hypre_SStructNborBoxToBox ( hypre_Box *nbor_box , hypre_Index root , hypre_Index nbor_root , hypre_Index coord , hypre_Index dir ); HYPRE_Int hypre_SStructVarToNborVar ( hypre_SStructGrid *grid , HYPRE_Int part , HYPRE_Int var , HYPRE_Int *coord , HYPRE_Int *nbor_var_ptr ); HYPRE_Int hypre_SStructGridSetNumGhost ( hypre_SStructGrid *grid , HYPRE_Int *num_ghost ); -HYPRE_Int hypre_SStructBoxManEntryGetGlobalRank ( hypre_BoxManEntry *entry , hypre_Index index , HYPRE_Int *rank_ptr , HYPRE_Int type ); +HYPRE_Int hypre_SStructBoxManEntryGetGlobalRank ( hypre_BoxManEntry *entry , hypre_Index index , HYPRE_BigInt *rank_ptr , HYPRE_Int type ); HYPRE_Int hypre_SStructBoxManEntryGetStrides ( hypre_BoxManEntry *entry , hypre_Index strides , HYPRE_Int type ); HYPRE_Int hypre_SStructBoxNumMap ( hypre_SStructGrid *grid , HYPRE_Int part , HYPRE_Int boxnum , HYPRE_Int **num_varboxes_ptr , HYPRE_Int ***map_ptr ); HYPRE_Int hypre_SStructCellGridBoxNumMap ( hypre_SStructGrid *grid , HYPRE_Int part , HYPRE_Int ***num_varboxes_ptr , HYPRE_Int ****map_ptr ); diff --git a/src/sstruct_mv/sstruct_graph.h b/src/sstruct_mv/sstruct_graph.h index 9f2f56ff2..8cf70e917 100644 --- a/src/sstruct_mv/sstruct_graph.h +++ b/src/sstruct_mv/sstruct_graph.h @@ -36,7 +36,7 @@ typedef struct HYPRE_Int to_var; HYPRE_Int to_boxnum; /* local box number */ HYPRE_Int to_proc; - HYPRE_BigInt to_rank; + HYPRE_Int to_rank; } hypre_SStructUEntry; @@ -45,7 +45,7 @@ typedef struct HYPRE_Int part; hypre_Index index; HYPRE_Int var; - HYPRE_BigInt rank; + HYPRE_Int rank; HYPRE_Int nUentries; hypre_SStructUEntry *Uentries; diff --git a/src/sstruct_mv/sstruct_matrix.h b/src/sstruct_mv/sstruct_matrix.h index e5e5533ca..d0fe8c630 100644 --- a/src/sstruct_mv/sstruct_matrix.h +++ b/src/sstruct_mv/sstruct_matrix.h @@ -66,7 +66,7 @@ typedef struct hypre_SStructMatrix_struct HYPRE_Complex *tmp_coeffs; HYPRE_Int ns_symmetric; /* Non-stencil entries symmetric? */ - HYPRE_BigInt global_size; /* Total number of nonzero coeffs */ + HYPRE_Int global_size; /* Total number of nonzero coeffs */ HYPRE_Int ref_count; diff --git a/src/sstruct_mv/sstruct_vector.h b/src/sstruct_mv/sstruct_vector.h index f5c658ce5..47bc97265 100644 --- a/src/sstruct_mv/sstruct_vector.h +++ b/src/sstruct_mv/sstruct_vector.h @@ -63,7 +63,7 @@ typedef struct hypre_SStructVector_struct of vector data for the part=partx */ HYPRE_Int datasize ; /* GEC1002 size of all data = ghlocalsize */ - HYPRE_BigInt global_size; /* Total number coefficients */ + HYPRE_Int global_size; /* Total number coefficients */ HYPRE_Int ref_count; diff --git a/src/struct_mv/_hypre_struct_mv.h b/src/struct_mv/_hypre_struct_mv.h index 30d032118..28fc7ca39 100644 --- a/src/struct_mv/_hypre_struct_mv.h +++ b/src/struct_mv/_hypre_struct_mv.h @@ -1,10 +1,3 @@ -/****************************************************************************** - * Copyright 1998-2019 Lawrence Livermore National Security, LLC and other - * HYPRE Project Developers. See the top-level COPYRIGHT file for details. - * - * SPDX-License-Identifier: (Apache-2.0 OR MIT) - ******************************************************************************/ - /*** DO NOT EDIT THIS FILE DIRECTLY (use 'headers' to generate) ***/ @@ -20,6 +13,13 @@ #include "_hypre_utilities.h" #if defined(HYPRE_USING_RAJA) +/****************************************************************************** + * Copyright 1998-2019 Lawrence Livermore National Security, LLC and other + * HYPRE Project Developers. See the top-level COPYRIGHT file for details. + * + * SPDX-License-Identifier: (Apache-2.0 OR MIT) + ******************************************************************************/ + /****************************************************************************** * * Header info for the BoxLoop @@ -344,6 +344,13 @@ hypre_CheckErrorDevice(cudaDeviceSynchronize()); #endif #elif defined(HYPRE_USING_KOKKOS) +/****************************************************************************** + * Copyright 1998-2019 Lawrence Livermore National Security, LLC and other + * HYPRE Project Developers. See the top-level COPYRIGHT file for details. + * + * SPDX-License-Identifier: (Apache-2.0 OR MIT) + ******************************************************************************/ + /****************************************************************************** * * Header info for the BoxLoop @@ -708,6 +715,13 @@ struct ColumnSums #define hypre_BasicBoxLoop2Begin hypre_newBasicBoxLoop2Begin #endif #elif defined(HYPRE_USING_CUDA) +/****************************************************************************** + * Copyright 1998-2019 Lawrence Livermore National Security, LLC and other + * HYPRE Project Developers. See the top-level COPYRIGHT file for details. + * + * SPDX-License-Identifier: (Apache-2.0 OR MIT) + ******************************************************************************/ + /****************************************************************************** * * Header info for the BoxLoop @@ -1138,6 +1152,13 @@ else \ #endif #elif defined(HYPRE_USING_DEVICE_OPENMP) +/****************************************************************************** + * Copyright 1998-2019 Lawrence Livermore National Security, LLC and other + * HYPRE Project Developers. See the top-level COPYRIGHT file for details. + * + * SPDX-License-Identifier: (Apache-2.0 OR MIT) + ******************************************************************************/ + /****************************************************************************** * * Header info for the BoxLoop @@ -1706,6 +1727,13 @@ hypre__J = hypre__thread; i1 = i2 = 0; \ #endif #else +/****************************************************************************** + * Copyright 1998-2019 Lawrence Livermore National Security, LLC and other + * HYPRE Project Developers. See the top-level COPYRIGHT file for details. + * + * SPDX-License-Identifier: (Apache-2.0 OR MIT) + ******************************************************************************/ + /****************************************************************************** * * Header info for the BoxLoop @@ -1983,6 +2011,13 @@ typedef struct hypre_Boxloop_struct #ifdef __cplusplus extern "C" { #endif +/****************************************************************************** + * Copyright 1998-2019 Lawrence Livermore National Security, LLC and other + * HYPRE Project Developers. See the top-level COPYRIGHT file for details. + * + * SPDX-License-Identifier: (Apache-2.0 OR MIT) + ******************************************************************************/ + /****************************************************************************** * * Header info for the Box structures @@ -2666,6 +2701,13 @@ for (J = 0; J < N; J++) } #endif +/****************************************************************************** + * Copyright 1998-2019 Lawrence Livermore National Security, LLC and other + * HYPRE Project Developers. See the top-level COPYRIGHT file for details. + * + * SPDX-License-Identifier: (Apache-2.0 OR MIT) + ******************************************************************************/ + /****************************************************************************** * * Header info for the struct assumed partition @@ -2717,6 +2759,13 @@ typedef struct #define hypre_StructAssumedPartMyPartitionProcId(apart, i) ((apart)->my_partition_proc_ids[i]) #define hypre_StructAssumedPartMyPartitionBoxnum(apart, i) ((apart)->my_partition_boxnums[i]) #endif +/****************************************************************************** + * Copyright 1998-2019 Lawrence Livermore National Security, LLC and other + * HYPRE Project Developers. See the top-level COPYRIGHT file for details. + * + * SPDX-License-Identifier: (Apache-2.0 OR MIT) + ******************************************************************************/ + #ifndef hypre_BOX_MANAGER_HEADER #define hypre_BOX_MANAGER_HEADER @@ -2902,6 +2951,13 @@ typedef struct #define hypre_BoxManEntryBoxMan(entry) ((entry) -> boxman) #endif +/****************************************************************************** + * Copyright 1998-2019 Lawrence Livermore National Security, LLC and other + * HYPRE Project Developers. See the top-level COPYRIGHT file for details. + * + * SPDX-License-Identifier: (Apache-2.0 OR MIT) + ******************************************************************************/ + /****************************************************************************** * * Header info for the hypre_StructGrid structures @@ -2988,6 +3044,13 @@ hypre_ForBoxI(i, hypre_StructGridBoxes(grid)) #endif +/****************************************************************************** + * Copyright 1998-2019 Lawrence Livermore National Security, LLC and other + * HYPRE Project Developers. See the top-level COPYRIGHT file for details. + * + * SPDX-License-Identifier: (Apache-2.0 OR MIT) + ******************************************************************************/ + /****************************************************************************** * * Header info for hypre_StructStencil data structures @@ -3022,6 +3085,13 @@ typedef struct hypre_StructStencil_struct #define hypre_StructStencilElement(stencil, i) hypre_StructStencilShape(stencil)[i] #endif +/****************************************************************************** + * Copyright 1998-2019 Lawrence Livermore National Security, LLC and other + * HYPRE Project Developers. See the top-level COPYRIGHT file for details. + * + * SPDX-License-Identifier: (Apache-2.0 OR MIT) + ******************************************************************************/ + #ifndef hypre_COMMUNICATION_HEADER #define hypre_COMMUNICATION_HEADER @@ -3267,6 +3337,13 @@ typedef struct hypre_CommHandle_struct #define hypre_CommHandleRecvBuffersDevice(comm_handle) (comm_handle -> recv_buffers_data) #endif +/****************************************************************************** + * Copyright 1998-2019 Lawrence Livermore National Security, LLC and other + * HYPRE Project Developers. See the top-level COPYRIGHT file for details. + * + * SPDX-License-Identifier: (Apache-2.0 OR MIT) + ******************************************************************************/ + /****************************************************************************** * * Header info for computation @@ -3333,6 +3410,13 @@ typedef struct hypre_ComputePkg_struct #define hypre_ComputePkgNumValues(compute_pkg) (compute_pkg -> num_values) #endif +/****************************************************************************** + * Copyright 1998-2019 Lawrence Livermore National Security, LLC and other + * HYPRE Project Developers. See the top-level COPYRIGHT file for details. + * + * SPDX-License-Identifier: (Apache-2.0 OR MIT) + ******************************************************************************/ + /****************************************************************************** * * Header info for the hypre_StructMatrix structures @@ -3430,6 +3514,13 @@ hypre_BoxArrayBox(hypre_StructMatrixDataSpace(matrix), b) hypre_CCBoxIndexRank(hypre_StructMatrixBox(matrix, b), index)) #endif +/****************************************************************************** + * Copyright 1998-2019 Lawrence Livermore National Security, LLC and other + * HYPRE Project Developers. See the top-level COPYRIGHT file for details. + * + * SPDX-License-Identifier: (Apache-2.0 OR MIT) + ******************************************************************************/ + /****************************************************************************** * * Header info for the hypre_StructVector structures @@ -3499,6 +3590,13 @@ hypre_BoxArrayBox(hypre_StructVectorDataSpace(vector), b) hypre_BoxIndexRank(hypre_StructVectorBox(vector, b), index)) #endif +/****************************************************************************** + * Copyright 1998-2019 Lawrence Livermore National Security, LLC and other + * HYPRE Project Developers. See the top-level COPYRIGHT file for details. + * + * SPDX-License-Identifier: (Apache-2.0 OR MIT) + ******************************************************************************/ + /* assumed_part.c */ HYPRE_Int hypre_APSubdivideRegion ( hypre_Box *region , HYPRE_Int dim , HYPRE_Int level , hypre_BoxArray *box_array , HYPRE_Int *num_new_boxes ); HYPRE_Int hypre_APFindMyBoxesInRegions ( hypre_BoxArray *region_array , hypre_BoxArray *my_box_array , HYPRE_Int **p_count_array , HYPRE_Real **p_vol_array ); diff --git a/src/utilities/_hypre_utilities.h b/src/utilities/_hypre_utilities.h index 8fe73214a..26955d554 100644 --- a/src/utilities/_hypre_utilities.h +++ b/src/utilities/_hypre_utilities.h @@ -1,10 +1,3 @@ -/****************************************************************************** - * Copyright 1998-2019 Lawrence Livermore National Security, LLC and other - * HYPRE Project Developers. See the top-level COPYRIGHT file for details. - * - * SPDX-License-Identifier: (Apache-2.0 OR MIT) - ******************************************************************************/ - /*** DO NOT EDIT THIS FILE DIRECTLY (use 'headers' to generate) ***/ @@ -22,6 +15,13 @@ extern "C" { #endif +/****************************************************************************** + * Copyright 1998-2019 Lawrence Livermore National Security, LLC and other + * HYPRE Project Developers. See the top-level COPYRIGHT file for details. + * + * SPDX-License-Identifier: (Apache-2.0 OR MIT) + ******************************************************************************/ + /****************************************************************************** * * General structures and values @@ -65,6 +65,13 @@ typedef double hypre_double; #endif +/****************************************************************************** + * Copyright 1998-2019 Lawrence Livermore National Security, LLC and other + * HYPRE Project Developers. See the top-level COPYRIGHT file for details. + * + * SPDX-License-Identifier: (Apache-2.0 OR MIT) + ******************************************************************************/ + /****************************************************************************** * * Fake mpi stubs to generate serial codes without mpi @@ -367,12 +374,26 @@ HYPRE_Int hypre_MPI_Info_free( hypre_MPI_Info *info ); #endif +/****************************************************************************** + * Copyright 1998-2019 Lawrence Livermore National Security, LLC and other + * HYPRE Project Developers. See the top-level COPYRIGHT file for details. + * + * SPDX-License-Identifier: (Apache-2.0 OR MIT) + ******************************************************************************/ + #ifndef HYPRE_SMP_HEADER #define HYPRE_SMP_HEADER #endif #define HYPRE_SMP_SCHEDULE schedule(static) +/****************************************************************************** + * Copyright 1998-2019 Lawrence Livermore National Security, LLC and other + * HYPRE Project Developers. See the top-level COPYRIGHT file for details. + * + * SPDX-License-Identifier: (Apache-2.0 OR MIT) + ******************************************************************************/ + /****************************************************************************** * * Header file for memory management utilities @@ -757,6 +778,13 @@ void hypre_FreeDML( char *ptr , char *file , HYPRE_Int line ); #endif +/****************************************************************************** + * Copyright 1998-2019 Lawrence Livermore National Security, LLC and other + * HYPRE Project Developers. See the top-level COPYRIGHT file for details. + * + * SPDX-License-Identifier: (Apache-2.0 OR MIT) + ******************************************************************************/ + #ifndef hypre_THREADING_HEADER #define hypre_THREADING_HEADER @@ -778,6 +806,13 @@ void hypre_GetSimpleThreadPartition( HYPRE_Int *begin, HYPRE_Int *end, HYPRE_Int #endif +/****************************************************************************** + * Copyright 1998-2019 Lawrence Livermore National Security, LLC and other + * HYPRE Project Developers. See the top-level COPYRIGHT file for details. + * + * SPDX-License-Identifier: (Apache-2.0 OR MIT) + ******************************************************************************/ + /****************************************************************************** * * Header file for doing timing @@ -888,6 +923,13 @@ HYPRE_Int hypre_PrintTiming( const char *heading , MPI_Comm comm ); #endif +/****************************************************************************** + * Copyright 1998-2019 Lawrence Livermore National Security, LLC and other + * HYPRE Project Developers. See the top-level COPYRIGHT file for details. + * + * SPDX-License-Identifier: (Apache-2.0 OR MIT) + ******************************************************************************/ + /****************************************************************************** * * Header file link lists @@ -923,6 +965,13 @@ typedef hypre_ListElement *hypre_LinkList; #endif +/****************************************************************************** + * Copyright 1998-2019 Lawrence Livermore National Security, LLC and other + * HYPRE Project Developers. See the top-level COPYRIGHT file for details. + * + * SPDX-License-Identifier: (Apache-2.0 OR MIT) + ******************************************************************************/ + #ifndef hypre_EXCHANGE_DATA_HEADER #define hypre_EXCHANGE_DATA_HEADER @@ -972,6 +1021,13 @@ HYPRE_Int hypre_DataExchangeList(HYPRE_Int num_contacts, #endif /* end of header */ +/****************************************************************************** + * Copyright 1998-2019 Lawrence Livermore National Security, LLC and other + * HYPRE Project Developers. See the top-level COPYRIGHT file for details. + * + * SPDX-License-Identifier: (Apache-2.0 OR MIT) + ******************************************************************************/ + #ifndef hypre_ERROR_HEADER #define hypre_ERROR_HEADER @@ -998,6 +1054,13 @@ void hypre_error_handler(const char *filename, HYPRE_Int line, HYPRE_Int ierr, c #endif +/****************************************************************************** + * Copyright 1998-2019 Lawrence Livermore National Security, LLC and other + * HYPRE Project Developers. See the top-level COPYRIGHT file for details. + * + * SPDX-License-Identifier: (Apache-2.0 OR MIT) + ******************************************************************************/ + /****************************************************************************** * * Header file for Caliper instrumentation macros @@ -1025,6 +1088,13 @@ void hypre_error_handler(const char *filename, HYPRE_Int line, HYPRE_Int ierr, c #endif /* CALIPER_INSTRUMENTATION_HEADER */ +/****************************************************************************** + * Copyright 1998-2019 Lawrence Livermore National Security, LLC and other + * HYPRE Project Developers. See the top-level COPYRIGHT file for details. + * + * SPDX-License-Identifier: (Apache-2.0 OR MIT) + ******************************************************************************/ + #ifdef USE_NVTX #include "nvToolsExt.h" #include "nvToolsExtCudaRt.h" @@ -1085,6 +1155,13 @@ static const int num_colors = sizeof(colors)/sizeof(uint32_t); #define PUSH_RANGE_DOMAIN(name,cid,domainName) #endif +/****************************************************************************** + * Copyright 1998-2019 Lawrence Livermore National Security, LLC and other + * HYPRE Project Developers. See the top-level COPYRIGHT file for details. + * + * SPDX-License-Identifier: (Apache-2.0 OR MIT) + ******************************************************************************/ + #ifndef hypre_GPU_ERROR_HEADER #define hypre_GPU_ERROR_HEADER @@ -1227,6 +1304,13 @@ inline void cublasAssert(cublasStatus_t code, const char *file, int line) #endif // hypre_GPU_ERROR_HEADER +/****************************************************************************** + * Copyright 1998-2019 Lawrence Livermore National Security, LLC and other + * HYPRE Project Developers. See the top-level COPYRIGHT file for details. + * + * SPDX-License-Identifier: (Apache-2.0 OR MIT) + ******************************************************************************/ + #ifndef __GPUMEM_H__ #define __GPUMEM_H__ @@ -1348,6 +1432,13 @@ HYPRE_Int HYPRE_OMPOffloadStatPrint(); #endif/* __GPUMEM_H__ */ +/****************************************************************************** + * Copyright 1998-2019 Lawrence Livermore National Security, LLC and other + * HYPRE Project Developers. See the top-level COPYRIGHT file for details. + * + * SPDX-License-Identifier: (Apache-2.0 OR MIT) + ******************************************************************************/ + #if !defined(HYPRE_USING_RAJA) && !defined(HYPRE_USING_KOKKOS) && defined(HYPRE_USING_CUDA) #ifndef CUDART_VERSION @@ -1593,6 +1684,13 @@ struct ReduceSum #endif +/****************************************************************************** + * Copyright 1998-2019 Lawrence Livermore National Security, LLC and other + * HYPRE Project Developers. See the top-level COPYRIGHT file for details. + * + * SPDX-License-Identifier: (Apache-2.0 OR MIT) + ******************************************************************************/ + /* amg_linklist.c */ void hypre_dispose_elt ( hypre_LinkList element_ptr ); void hypre_remove_point ( hypre_LinkList *LoL_head_ptr , hypre_LinkList *LoL_tail_ptr , HYPRE_Int measure , HYPRE_Int index , HYPRE_Int *lists , HYPRE_Int *where ); @@ -1857,7 +1955,6 @@ void hypre_big_sort_and_create_inverse_map( HYPRE_BigInt *in, HYPRE_Int len, HYPRE_BigInt **out, hypre_UnorderedBigIntMap *inverse_map); #endif - #ifdef __cplusplus } #endif diff --git a/src/utilities/protos.h b/src/utilities/protos.h index 567abd395..c5ad2ac0c 100644 --- a/src/utilities/protos.h +++ b/src/utilities/protos.h @@ -13,6 +13,7 @@ void hypre_enter_on_lists ( hypre_LinkList *LoL_head_ptr , hypre_LinkList *LoL_t /* binsearch.c */ HYPRE_Int hypre_BinarySearch ( HYPRE_Int *list , HYPRE_Int value , HYPRE_Int list_length ); +HYPRE_Int hypre_BigBinarySearch ( HYPRE_BigInt *list , HYPRE_BigInt value , HYPRE_Int list_length ); HYPRE_Int hypre_BinarySearch2 ( HYPRE_Int *list , HYPRE_Int value , HYPRE_Int low , HYPRE_Int high , HYPRE_Int *spot ); HYPRE_Int *hypre_LowerBound( HYPRE_Int *first, HYPRE_Int *last, HYPRE_Int value ); HYPRE_BigInt *hypre_BigLowerBound( HYPRE_BigInt *first, HYPRE_BigInt *last, HYPRE_BigInt value ); @@ -36,6 +37,7 @@ void HYPRE_Finalize(); /* hypre_printf.c */ // #ifdef HYPRE_BIGINT +HYPRE_Int hypre_ndigits( HYPRE_BigInt number ); HYPRE_Int hypre_printf( const char *format , ... ); HYPRE_Int hypre_fprintf( FILE *stream , const char *format, ... ); HYPRE_Int hypre_sprintf( char *s , const char *format, ... ); @@ -58,7 +60,7 @@ void hypre_BigSwap2 ( HYPRE_BigInt *v , HYPRE_Real *w , HYPRE_Int i , HYPRE_Int void hypre_swap2i ( HYPRE_Int *v , HYPRE_Int *w , HYPRE_Int i , HYPRE_Int j ); void hypre_swap3i ( HYPRE_Int *v , HYPRE_Int *w , HYPRE_Int *z , HYPRE_Int i , HYPRE_Int j ); void hypre_swap3_d ( HYPRE_Real *v , HYPRE_Int *w , HYPRE_Int *z , HYPRE_Int i , HYPRE_Int j ); -void hypre_swap4_d ( HYPRE_Real *v , HYPRE_Int *w , HYPRE_Int *z , HYPRE_Int *y , HYPRE_Int i , HYPRE_Int j ); +void hypre_BigSwap4_d ( HYPRE_Real *v , HYPRE_BigInt *w , HYPRE_Int *z , HYPRE_Int *y , HYPRE_Int i , HYPRE_Int j ); void hypre_swap_d ( HYPRE_Real *v , HYPRE_Int i , HYPRE_Int j ); void hypre_qsort0 ( HYPRE_Int *v , HYPRE_Int left , HYPRE_Int right ); void hypre_qsort1 ( HYPRE_Int *v , HYPRE_Real *w , HYPRE_Int left , HYPRE_Int right ); @@ -67,8 +69,16 @@ void hypre_qsort2i ( HYPRE_Int *v , HYPRE_Int *w , HYPRE_Int left , HYPRE_Int ri void hypre_qsort2 ( HYPRE_Int *v , HYPRE_Real *w , HYPRE_Int left , HYPRE_Int right ); void hypre_qsort3i ( HYPRE_Int *v , HYPRE_Int *w , HYPRE_Int *z , HYPRE_Int left , HYPRE_Int right ); void hypre_qsort3_abs ( HYPRE_Real *v , HYPRE_Int *w , HYPRE_Int *z , HYPRE_Int left , HYPRE_Int right ); -void hypre_qsort4_abs ( HYPRE_Real *v , HYPRE_Int *w , HYPRE_Int *z , HYPRE_Int *y , HYPRE_Int left , HYPRE_Int right ); +void hypre_BigQsort4_abs ( HYPRE_Real *v , HYPRE_BigInt *w , HYPRE_Int *z , HYPRE_Int *y , HYPRE_Int left , HYPRE_Int right ); void hypre_qsort_abs ( HYPRE_Real *w , HYPRE_Int left , HYPRE_Int right ); +void hypre_BigSwapbi(HYPRE_BigInt *v, HYPRE_Int *w, HYPRE_Int i, HYPRE_Int j ); +void hypre_BigQsortbi( HYPRE_BigInt *v, HYPRE_Int *w, HYPRE_Int left, HYPRE_Int right ); +void hypre_BigSwapLoc(HYPRE_BigInt *v, HYPRE_Int *w, HYPRE_Int i, HYPRE_Int j ); +void hypre_BigQsortbLoc( HYPRE_BigInt *v, HYPRE_Int *w, HYPRE_Int left, HYPRE_Int right ); +void hypre_BigSwapb2i(HYPRE_BigInt *v, HYPRE_Int *w, HYPRE_Int *z, HYPRE_Int i, HYPRE_Int j ); +void hypre_BigQsortb2i( HYPRE_BigInt *v, HYPRE_Int *w, HYPRE_Int *z, HYPRE_Int left, HYPRE_Int right ); +void hypre_BigSwap( HYPRE_BigInt *v, HYPRE_Int i, HYPRE_Int j ); +void hypre_BigQsort0( HYPRE_BigInt *v, HYPRE_Int left, HYPRE_Int right ); /* qsplit.c */ HYPRE_Int hypre_DoubleQuickSplit ( HYPRE_Real *values , HYPRE_Int *indices , HYPRE_Int list_length , HYPRE_Int NumberKept ); @@ -137,11 +147,7 @@ HYPRE_Int hypre_merge_sort_unique2(HYPRE_Int *in, HYPRE_Int *temp, HYPRE_Int len void hypre_merge_sort(HYPRE_Int *in, HYPRE_Int *temp, HYPRE_Int len, HYPRE_Int **sorted); -#ifdef HYPRE_CONCURRENT_HOPSCOTCH -void hypre_big_merge_sort(HYPRE_BigInt *in, HYPRE_BigInt *temp, HYPRE_Int len, HYPRE_BigInt **sorted); -#endif - -void hypre_union2(HYPRE_Int n1, HYPRE_Int *arr1, HYPRE_Int n2, HYPRE_Int *arr2, HYPRE_Int *n3, HYPRE_Int *arr3, HYPRE_Int *map1, HYPRE_Int *map2); +void hypre_union2(HYPRE_Int n1, HYPRE_BigInt *arr1, HYPRE_Int n2, HYPRE_BigInt *arr2, HYPRE_Int *n3, HYPRE_BigInt *arr3, HYPRE_Int *map1, HYPRE_Int *map2); /* hypre_hopscotch_hash.c */ @@ -257,3 +263,8 @@ typedef struct */ void hypre_sort_and_create_inverse_map( HYPRE_Int *in, HYPRE_Int len, HYPRE_Int **out, hypre_UnorderedIntMap *inverse_map); +#ifdef HYPRE_CONCURRENT_HOPSCOTCH +void hypre_big_merge_sort(HYPRE_BigInt *in, HYPRE_BigInt *temp, HYPRE_Int len, HYPRE_BigInt **sorted); +void hypre_big_sort_and_create_inverse_map( + HYPRE_BigInt *in, HYPRE_Int len, HYPRE_BigInt **out, hypre_UnorderedBigIntMap *inverse_map); +#endif