Skip to content

Switched to ACM TOMS template + stylistic adjustements - #14

Open
vincent-maillou wants to merge 4 commits into
SparseBLAS:mainfrom
vincent-maillou:vmaillou-tomstemplate
Open

Switched to ACM TOMS template + stylistic adjustements#14
vincent-maillou wants to merge 4 commits into
SparseBLAS:mainfrom
vincent-maillou:vmaillou-tomstemplate

Conversation

@vincent-maillou

Copy link
Copy Markdown

This PR:

  • Switch the template to ACM TOMS
  • Generated with AI (!) \city for each author, this need to be checked.
  • Removed or commented out unnecessary packages or conflicting ones with acmart
  • Unify the style of the listings (fontsize, background color)
  • Put captions above table and listings (https://www.acm.org/publications/taps/latex-best-practices)
  • Made tables full widths
  • Introduce a new "compressed Listing" and a "Summary Table" (Ai generated!) for SpMV API comparisons [...]". The compressed listing is essentially the same as the initial one but under a single listing env for acmart it might be better, also take less space. The compressed table is a proposition that might be convenient for the reader to get at a glance the differences between APIs.

I also noticed that the way that the Pre-condition and Post-condition are written with the \\ can lead to weird placements with figures, listings and table (I had a post-condition alone one page further cut by a figure). This might need attention when finalizing the formatting of the document.

\begin{enumerate}
    \item \texttt{inspect phase} -- (optional) prepare any potential optimizations for subsequent phases (e.g.  internal transpose copies as applicable), or may do nothing
    \item \texttt{compute symbolic} -- computing the size of the sparse output structure, which typically requires significant work\\
    \textit{Post-Condition: The size of the sparse output structure is known.}
    \item \texttt{allocation phase} -- allocating the memory for the sparse output data structure and placing it in the output matrix object to be filled.
    \\
    \textit{Pre-Condition: The size of the sparse output structure is known.}\\
    \textit{Post-Condition: Sparse output structure is allocated.}
    \item \texttt{fill symbolic} -- filling the sparsity pattern into the output data structure
    \textit{Pre-Condition: Sparse output structure is allocated.}\\
    \textit{Post-Condition: Sparsity pattern in sparse output structure is filled and valid.}
    \item \texttt{compute numeric} -- complete the numerical computations and fill the result in the output data structure.\\
    \textit{Pre-Condition: Sparsity pattern in the sparse output structure is filled and valid.\\
    Post-Condition: Numeric values in the sparse output structure are filled and valid.}
\end{enumerate}

Global:
- CCS concepts (http://dl.acm.org/ccs.cfm) and Keywords need to be decided for the submission.
- no emails for authors, should I add them?
- should we add ORCID?

Some changes related to the template adaptation:
- Removed table of content (commented out), I don't think that this is standard in ACM TOMS format?
- Replaced `~\Cref` by `~\ref`
- Replaced `listing` listings by `minted` and removed `listing` package. Moved listing captions above, I think that is ACM convention for both table and listing. (https://www.acm.org/publications/taps/latex-best-practices)
- Moved captions above tables.
- Cleaned (commented out) packages conflicting with `acmart`
- I have *generated (AI!)* `\city` for each author as required by the `acmart`, I went over it quickly, and it seems fine, but I don't exclude mistakes there.

Stylistic: I have made some stylistic proposition, you keep, you delete. I kept the original commented out. The numbering I give hereafter is based on the current state of the document:
- 2.4 Review of existing API designs for the SpMV operation:
    - I *generated (AI!)* a table (Table 1) that summarize this SpMV execution comparison. This compress quite a lot this part (loosing some content on the way but make a nice direct overview of it. Maybe interesting to develop?
    - I made a single-block listing (Listing 1) instead of the sequence of unique ones. That might be better to keep the document coherent as `acmart` will treat this full listing as a coherent piece instead of many separated ones. Also takes less space, tho currently removes some comments of the original listing and only keep the fundamental API call (I can revert that).
- I made tables 2,3,4, and 5 full width. That brings their fonts closer to the overall reading font of the document, I think that makes them easier for me to read, but that takes more space.
- I made dedicated explicit listings for what is now *Listing 5 Three-stage API* and *Listing 6. Alternative two-stage API* for SpGeMM. I adapted slightly the text (kept old in comment) to fix mention to the listings.
- Cleaned style *Table 6 instances of the view wrapper in SparseBLAS.*
- Made *Table 8 List of the SparseBLAS functionalities.* full width.
-> Only table 7 is untouched besides caption put above.
- verified all \Cref for duplication of style: "Table Table 3.2" etc
-> Removed old tables/listings in favour of full width version
-> fixed a but with the enumeration env in Listing 1
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant