Skip to content

Commit 5f0a673

Browse files
ParU 0.1.0: version update, various fixes
1 parent 8934550 commit 5f0a673

File tree

12 files changed

+33
-26
lines changed

12 files changed

+33
-26
lines changed

ParU/CMakeLists.txt

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,9 @@
1313
# cmake 3.22 is required to find the BLAS in SuiteSparse_config
1414
cmake_minimum_required ( VERSION 3.22 )
1515

16-
set ( PARU_DATE "Dec 20, 2022" ) # FIXME: pick a date
17-
set ( PARU_VERSION_MAJOR 1 CACHE STRING "" FORCE )
18-
set ( PARU_VERSION_MINOR 0 CACHE STRING "" FORCE )
16+
set ( PARU_DATE "Dec 30, 2023" )
17+
set ( PARU_VERSION_MAJOR 0 CACHE STRING "" FORCE )
18+
set ( PARU_VERSION_MINOR 1 CACHE STRING "" FORCE )
1919
set ( PARU_VERSION_UPDATE 0 CACHE STRING "" FORCE )
2020

2121
message ( STATUS "Building PARU version: v"
@@ -71,22 +71,22 @@ else ( )
7171
endif ( )
7272

7373
if ( NOT SUITESPARSE_ROOT_CMAKELISTS )
74-
find_package ( SuiteSparse_config 7.3.0
74+
find_package ( SuiteSparse_config 7.4.0
7575
PATHS ${CMAKE_SOURCE_DIR}/../SuiteSparse_config/build NO_DEFAULT_PATH )
7676
if ( NOT TARGET SuiteSparse::SuiteSparseConfig )
77-
find_package ( SuiteSparse_config 7.3.0 REQUIRED )
77+
find_package ( SuiteSparse_config 7.4.0 REQUIRED )
7878
endif ( )
7979

80-
find_package ( CHOLMOD 5.0.0
80+
find_package ( CHOLMOD 5.1.0
8181
PATHS ${CMAKE_SOURCE_DIR}/../CHOLMOD/build NO_DEFAULT_PATH )
8282
if ( NOT CHOLMOD_FOUND )
83-
find_package ( CHOLMOD 5.0.0 REQUIRED )
83+
find_package ( CHOLMOD 5.1.0 REQUIRED )
8484
endif ( )
8585

86-
find_package ( UMFPACK 6.2.2
86+
find_package ( UMFPACK 6.3.0
8787
PATHS ${CMAKE_SOURCE_DIR}/../UMFPACK/build NO_DEFAULT_PATH )
8888
if ( NOT CAMD_FOUND )
89-
find_package ( UMFPACK 6.2.2 REQUIRED )
89+
find_package ( UMFPACK 6.3.0 REQUIRED )
9090
endif ( )
9191
endif ( )
9292

ParU/Doc/ChangeLog

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
Dec 30, 2023: version 0.1.0
2+
3+
* first release: in SuiteSparse 7.4.0
4+
File renamed without changes.

ParU/Doc/paru_user_guide.pdf

6.57 KB
Binary file not shown.

ParU/Doc/paru_user_guide.tex

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
\documentclass[12pt]{article}
2+
\batchmode
23
\usepackage{hyperref}
34
\usepackage{minted}
45

ParU/Doc/paru_version.tex

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
11
% version of SuiteSparse/ParU
2-
\date{VERSION 1.0.0, Dec 20, 2022}
2+
\date{VERSION 0.1.0, Dec 30, 2023}

ParU/Include/ParU_definitions.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,9 +25,9 @@ typedef enum ParU_Ret
2525

2626
#define PARU_MEM_CHUNK (1024*1024)
2727

28-
#define PARU_DATE "Dec 20, 2022"
29-
#define PARU_VERSION_MAJOR 1
30-
#define PARU_VERSION_MINOR 0
28+
#define PARU_DATE "Dec 30, 2023"
29+
#define PARU_VERSION_MAJOR 0
30+
#define PARU_VERSION_MINOR 1
3131
#define PARU_VERSION_UPDATE 0
3232

3333
// the same values as UMFPACK_STRATEGY defined in UMFPACK/Include/umfpack.h

ParU/MATLAB/paru.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,8 @@
22
// ParU/MATLAB/paru: MATLAB interface to ParU x=A\b
33
//------------------------------------------------------------------------------
44

5-
// ParU Copyright (c) FIXME
5+
// ParU Copyright (c) 2023, Mohsen Aznaveh and Timothy A. Davis,
6+
// All Rights Reserved.
67
// SPDX-License-Identifier: GPL-3.0+
78

89
//------------------------------------------------------------------------------

ParU/README.md

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,24 @@
11
# SuiteSparse:ParU
22

3-
ParU, Copyright (c) 2022, Mohsen Aznaveh and Timothy A. Davis,
3+
ParU, Copyright (c) 2022-2023, Mohsen Aznaveh and Timothy A. Davis,
44
All Rights Reserved.
55
SPDX-License-Identifier: GNU GPL 3.0
66

77
--------------------------------------------------------------------------------
88

9+
## NOTE: This is a pre-release of ParU, not yet version 1.0.
10+
11+
There are several FIXME's and TODO's in the code we need to resolv for the
12+
final version, and the API may change in the final stable v1.0 version.
13+
14+
Stay tuned.
15+
916
## Introduction
1017

1118
ParU: is a set of routings for solving sparse linear system via parallel
1219
multifrontal LU factorization algorithms. Requires OpenMP 4.0+, BLAS, CHOLMOD,
13-
UMFPACK, AMD, COLAMD, CAMD, CCOLAMD, and METIS.
20+
UMFPACK, AMD, COLAMD, CAMD, CCOLAMD, and METIS (in particular, the
21+
CHOLMOD/SuiteSparse_metis variant; see the CHOLMOD documentation for details).
1422

1523
## How to install
1624

@@ -39,7 +47,7 @@ See Demo for more examples.
3947

4048
--------------------------------------------------------------------------------
4149
## License
42-
Copyright (C) 2022 Mohsen Aznaveh and Timothy A. Davis
50+
Copyright (C) 2022-2023 Mohsen Aznaveh and Timothy A. Davis
4351

4452
This program is free software: you can redistribute it and/or modify it under
4553
the terms of the GNU General Public License as published by the Free Software

ParU/Source/paru_factorize.cpp

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,6 @@ ParU_Ret paru_exec_tasks_seq(int64_t t, int64_t *task_num_child, paru_work *Work
9494
ParU_Ret paru_exec_tasks(int64_t t, int64_t *task_num_child, int64_t &chain_task,
9595
paru_work *Work, ParU_Numeric *Num)
9696
{
97-
DEBUGLEVEL(0); // FIXME
9897
ParU_Symbolic *Sym = Work->Sym;
9998
int64_t *task_parent = Sym->task_parent;
10099
int64_t daddy = task_parent[t];
@@ -193,7 +192,6 @@ ParU_Ret paru_exec_tasks(int64_t t, int64_t *task_num_child, int64_t &chain_task
193192
ParU_Ret ParU_Factorize(cholmod_sparse *A, ParU_Symbolic *Sym,
194193
ParU_Numeric **Num_handle, ParU_Control *user_Control)
195194
{
196-
DEBUGLEVEL(0); // FIXME
197195
PARU_DEFINE_PRLEVEL;
198196
#ifndef NTIME
199197
double my_start_time = PARU_OPENMP_GET_WTIME;
@@ -348,7 +346,6 @@ ParU_Ret ParU_Factorize(cholmod_sparse *A, ParU_Symbolic *Sym,
348346
// Use the sequential factorization unconditionally in that case.
349347
if (task_Q.size() * 2 > Control->paru_max_threads)
350348
{
351-
printf ("Parallel:\n") ; // FIXME
352349
PRLEVEL(1, ("Parallel\n"));
353350
// chekcing user input
354351
PRLEVEL(1, ("Control: max_th=" LD " scale=" LD " piv_toler=%lf "
@@ -373,13 +370,11 @@ ParU_Ret ParU_Factorize(cholmod_sparse *A, ParU_Symbolic *Sym,
373370
int64_t start = 0;
374371
PRLEVEL(
375372
1, ("%% size=" LD ", steps =" LD ", stages =" LD "\n", size, steps, stages));
376-
printf ("stages " LD "\n", stages) ; // FIXME
377373

378374
for (int64_t ii = 0; ii < stages; ii++)
379375
{
380376
if (start >= size) break;
381377
int64_t end = start + steps > size ? size : start + steps;
382-
printf ("stage " LD "\n", ii) ; // FIXME
383378
PRLEVEL(1, ("%% doing Queue tasks <" LD "," LD ">\n", start, end));
384379
#pragma omp parallel proc_bind(spread) \
385380
num_threads(Control->paru_max_threads)
@@ -417,7 +412,6 @@ ParU_Ret ParU_Factorize(cholmod_sparse *A, ParU_Symbolic *Sym,
417412
{
418413
#pragma omp atomic write
419414
Work->naft = 1;
420-
printf ("remaining " LD "\n", chain_task) ; // FIXME
421415
PRLEVEL(1, ("Chain_taskd " LD " has remained\n", chain_task));
422416
info = paru_exec_tasks_seq(chain_task, task_num_child, Work, Num);
423417
}
@@ -461,7 +455,6 @@ ParU_Ret ParU_Factorize(cholmod_sparse *A, ParU_Symbolic *Sym,
461455
// finalize the permutation
462456
//--------------------------------------------------------------------------
463457

464-
printf ("finalize permutation\n") ; // FIXME
465458
PRLEVEL(1, ("finalize permutation\n"));
466459
info = paru_finalize_perm(Sym, Num); // to form the final permutation
467460
paru_free_work(Sym, Work); // free the work DS

0 commit comments

Comments
 (0)