Skip to content

Commit 5cf40c5

Browse files
committed
Merge remote-tracking branch 'origin/v1.2' into feat/mtx_reach
2 parents 9b0a060 + dc7931b commit 5cf40c5

File tree

155 files changed

+37670
-1476
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

155 files changed

+37670
-1476
lines changed

.github/workflows/build.yml

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ on:
44
workflow_dispatch:
55
push:
66
branches-ignore:
7+
- '**/v1.2*'
78
- '**/*dev2'
89
pull_request:
910

@@ -13,9 +14,8 @@ jobs:
1314
strategy:
1415
matrix:
1516
config:
16-
# if there are multiple items in this list, only use should
17-
# deployit=true for just one of them.
18-
- {grb_version: 9.3.1, deployit: true}
17+
- {grb_version: 7.4.4, conda_grb_package_hash: hcb278e6, conda_extension: conda, vanilla: 0, deploy_test_results: true}
18+
- {grb_version: 7.4.4, conda_grb_package_hash: hcb278e6, conda_extension: conda, vanilla: 1, deploy_test_results: false}
1919
steps:
2020
- name: Checkout
2121
uses: actions/[email protected]
@@ -35,12 +35,12 @@ jobs:
3535
export GRAPHBLAS_INCLUDE_DIR=`pwd`/GraphBLAS/include/suitesparse
3636
export GRAPHBLAS_LIBRARY=`pwd`/GraphBLAS/lib/libgraphblas.so
3737
cd build
38-
cmake .. -DCOVERAGE=1 -DGRAPHBLAS_INCLUDE_DIR=${GRAPHBLAS_INCLUDE_DIR} -DGRAPHBLAS_LIBRARY=${GRAPHBLAS_LIBRARY}
38+
cmake .. -DCOVERAGE=1 -DGRAPHBLAS_INCLUDE_DIR=${GRAPHBLAS_INCLUDE_DIR} -DGRAPHBLAS_LIBRARY=${GRAPHBLAS_LIBRARY} -DLAGRAPH_VANILLA=${{ matrix.config.vanilla }}
3939
JOBS=2 make
4040
make test_coverage
4141
- name: Deploy
4242
uses: JamesIves/[email protected]
43-
if: matrix.config.deployit && github.event_name == 'push' && github.ref == 'refs/heads/stable'
43+
if: matrix.deploy_test_results && github.event_name == 'push' && github.ref == 'refs/heads/stable'
4444
with:
4545
branch: gh-pages
4646
folder: build/test_coverage/
@@ -50,12 +50,14 @@ jobs:
5050
with:
5151
name: test_coverage
5252
path: build/test_coverage/
53+
if: github.event_name == 'push' && github.ref == 'refs/heads/stable'
5354
macos:
5455
runs-on: macos-12
5556
strategy:
5657
matrix:
5758
config:
58-
- {grb_version: 9.3.1}
59+
- {grb_version: 7.4.4, conda_grb_package_hash: ha894c9a, conda_extension: conda, vanilla: 0}
60+
- {grb_version: 7.4.4, conda_grb_package_hash: ha894c9a, conda_extension: conda, vanilla: 1}
5961
steps:
6062
- name: Checkout
6163
uses: actions/[email protected]
@@ -79,6 +81,6 @@ jobs:
7981
# adding an extra line to the CMakeLists.txt file to locate the libomp instance installed by brew
8082
echo 'include_directories("/usr/local/opt/libomp/include")' | cat - CMakeLists.txt
8183
cd build
82-
CC=gcc cmake .. -DGRAPHBLAS_INCLUDE_DIR=${GRAPHBLAS_INCLUDE_DIR} -DGRAPHBLAS_LIBRARY=${GRAPHBLAS_LIBRARY}
84+
CC=gcc cmake .. -DGRAPHBLAS_INCLUDE_DIR=${GRAPHBLAS_INCLUDE_DIR} -DGRAPHBLAS_LIBRARY=${GRAPHBLAS_LIBRARY} -DLAGRAPH_VANILLA=${{ matrix.config.vanilla }}
8385
JOBS=2 make
8486
make test

.vscode/settings.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"files.associations": {
3+
"lg_internal.h": "c"
4+
}
5+
}

CMakeLists.txt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -39,10 +39,10 @@
3939
cmake_minimum_required ( VERSION 3.20 ) # LAGraph can be built stand-alone
4040

4141
# version of LAGraph
42-
set ( LAGraph_DATE "Aug 20, 2024" )
42+
set ( LAGraph_DATE "Feb XX, 2024" )
4343
set ( LAGraph_VERSION_MAJOR 1 CACHE STRING "" FORCE )
44-
set ( LAGraph_VERSION_MINOR 1 CACHE STRING "" FORCE )
45-
set ( LAGraph_VERSION_SUB 4 CACHE STRING "" FORCE )
44+
set ( LAGraph_VERSION_MINOR 2 CACHE STRING "" FORCE )
45+
set ( LAGraph_VERSION_SUB 0 CACHE STRING "" FORCE )
4646

4747
message ( STATUS "Building LAGraph version: v"
4848
${LAGraph_VERSION_MAJOR}.

ChangeLog

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
1-
Aug 20, 2024: version 1.1.4
1+
Version 1.2.0: in progress
22

3-
* fix MMWrite when matrix is dense
3+
* v2.1 C API: using the new GrB_get/set methods in the C API;
4+
LAGraph can now use a "vanilla" GraphBLAS that supports the v2.1
5+
C API. If SuiteSparse:GraphBLAS is used, v9.0.0 is required.
46

5-
Mar 22, 2024: version 1.1.3
7+
Feb XX, 2024: version 1.1.3
68

79
* minor updates to build system
810

TODO.txt

Lines changed: 113 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,113 @@
1+
LAGraph TODO:
2+
3+
Aug 21, 2024:
4+
5+
(1) LAGraph 1.1.4 release, with latest GraphBLAS compiled in CI, not
6+
from conda. But see comment in PR first.
7+
8+
LAGraph v1.2:
9+
(3) doesn't compile for vanilla GraphBLAS; add vanilla case to CI
10+
(4) new algorithms, many ready for src, many need a little work.
11+
(5) FIXMEs in src: use GrB_get instead of GxB*
12+
(6) MaximalMatching and CoarsenMatching tests pass with the new
13+
random number generator, but they require LAGraph_Incidence_Matrix,
14+
which needs work to be ready for src
15+
16+
May 29, 2024:
17+
18+
since last meeting: added better random number generator, and argmin/argmax
19+
agenda: see May 15:
20+
(1) many FIXMEs
21+
(2) need latest GraphBLAS (at least 9.1.0)
22+
(3) test coverage
23+
(4) fix MaximalMatching and CoarsenMatching (change in random number
24+
generator broke their tests)
25+
26+
May 15, 2024:
27+
28+
agenda:
29+
need to start moving algorithms from experimental to src;
30+
see all the FIXMEs.
31+
need conda forge with GraphBLAS 9.1.x for github CI
32+
discussion: on random number generation
33+
34+
May 1, 2024:
35+
36+
discussed random number generation.
37+
See commit to v1.2 branch. We also need a more robust
38+
method (Tim Mattson is working on it).
39+
40+
Apr 3, 2024:
41+
42+
candidates for moving experimental into src:
43+
44+
Need a good set of random # generators:
45+
both quick and "dirty", and slow and good.
46+
47+
experimental/algorithm/LAGraph_AllKCore.c
48+
experimental/algorithm/LAGraph_AllKTruss.c
49+
experimental/algorithm/LAGraph_Coarsen_Matching.c
50+
experimental/algorithm/LAGraph_EstimateDiameter.c
51+
experimental/algorithm/LAGraph_ExactDiameter.c
52+
experimental/algorithm/LAGraph_FastGraphletTransform.c
53+
experimental/algorithm/LAGraph_HITS.c
54+
experimental/algorithm/LAGraph_Hdip_Fiedler.c
55+
experimental/algorithm/LAGraph_KCore.c
56+
experimental/algorithm/LAGraph_KCoreDecompose.c
57+
experimental/algorithm/LAGraph_KTruss.c
58+
experimental/algorithm/LAGraph_MaximalIndependentSet.c
59+
experimental/algorithm/LAGraph_MaximalMatching.c
60+
experimental/algorithm/LAGraph_MultiSourceBFS.c
61+
experimental/algorithm/LAGraph_SquareClustering.c
62+
experimental/algorithm/LAGraph_VertexCentrality_Triangle.c
63+
experimental/algorithm/LAGraph_lcc.c
64+
experimental/algorithm/LAGraph_scc.c
65+
experimental/utility/LAGraph_Incidence_Matrix.c
66+
67+
Notes from LAGraph meeting, Mar 20, 2024:
68+
69+
v1.2:
70+
* now using v2.1 C API, but requires a recent SS:GraphBLAS
71+
(add v8.3.x and latest v9.0.3 to CI)?
72+
* test coverage of new experimental methods
73+
* any polished algorithms to move from experimental -> src?
74+
75+
Future:
76+
* add support for complex data types in LAGraph? GrB?
77+
see sparse BLAS effort; they need complex
78+
79+
Notes from LAGraph meeting, June 14, 2023:
80+
81+
For LAGraph 1.2:
82+
83+
* move algorithms from experimental to src
84+
* use v2.1 C API spec
85+
86+
* test coverage of new experimental methods
87+
* need faster MM reader/writer
88+
89+
90+
LDBC: updates, in src, and experimental <<<<
91+
polished experimental --> to src
92+
93+
94+
document promotion from experimental to src
95+
(checklist)
96+
97+
(1) doxygen comments in LAGraphX.h -> LAGraph.h
98+
(2) match error codes, msg usage
99+
(3) unit test, experimental/test/test_HelloWorld
100+
kinds of tests
101+
(a) reimplement algo in C, compare w LAGraph
102+
(b) check validity after getting LAGraph result
103+
(c) bespoke sample results from other packages
104+
for specific graph test cases
105+
(d) smoke test ... need more than this
106+
(4) experimental/benchmark/hello_demo.c
107+
(5) performance OK? compared to what baseline?
108+
time and memory
109+
110+
(6) How GraphBLASy is it?
111+
(7) GxB or vanilla?
112+
113+

data/A_cluster.mtx

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
%%MatrixMarket matrix array integer general
2+
%%GraphBLAS type int64_t
3+
7 1 7
4+
0
5+
0
6+
0
7+
0
8+
0
9+
0
10+
0

0 commit comments

Comments
 (0)