Skip to content

Commit 99b55df

Browse files
author
Denis Jelovina
committed
item error fix
1 parent 19cbcc5 commit 99b55df

File tree

1 file changed

+1
-3
lines changed

1 file changed

+1
-3
lines changed

ALP_Transition_Path_Tutorial.tex

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -79,8 +79,6 @@ \section{Overview of ALP's Non-Blocking Sparse CG API}\label{sec:api}
7979

8080
\item \textbf{sparse\_cg\_solve(handle, x, b):} Runs the CG iteration to solve $Ax = b$. Here b is the right-hand side vector (input), and x is the solution vector (output). You should allocate both of these arrays of length n beforehand. The solver will iterate until it converges to a solution within some default tolerance or until it reaches an iteration limit. On input, you may put an initial guess in x. If not, it's safe to initialize x to zero (the solver will start from $x_0 = 0$ by default in that case). Upon return, x will contain the approximate solution. Return: 0 if the solution converged (or still 0 if it ran the maximum iterations – specific error codes might indicate divergence or other issues in future versions).
8181

82-
\end{itemize}
83-
8482
\item \textbf{sparse\_cg\_destroy(handle):} Destroys the solver instance and releases any resources associated with the given handle. After this, the handle becomes invalid. Always call this when you are done solving to avoid memory leaks. Return: 0 on success (and the handle pointer may be set to NULL or invalid after). This API is non-blocking in the sense that internally ALP may overlap operations (like sparse matrix-vector multiplications and vector updates) and use asynchronous execution for performance. However, the above functions themselves appear synchronous. For example, sparse\_cg\_solve will only return after the solve is complete (there’s no separate “wait” call exposed in this C interface). The benefit of ALP’s approach is that you, the developer, don’t need to manage threads or message passing at all ALP’s GraphBLAS engine handles parallelism behind the scenes. You just call these routines as you would any standard library. Now, let’s put these functions into practice with a concrete example.
8583
\end{itemize}
8684

@@ -193,7 +191,7 @@ \section{Example: Solving a Linear System with ALP’s CG Solver}
193191

194192

195193

196-
\section{Building and Running the Example}
194+
\section*{Building and Running the Example}
197195
To compile the above code with ALP, we will use the direct linking option as discussed.
198196
\begin{lstlisting}[language=bash]
199197
g++ example.cpp -o cg_demo \

0 commit comments

Comments
 (0)