John’s Reviews > Parallel and High Performance Computing > Status Update
John
is on page 127 of 704
Interesting bits so far: perspective on benchmarking (measure the machine you're running on), fortran array layout, structure-of-arrays vs array-of-structures choice depends on cache access patterns, simple performance models for small kernels, dense representations of sparse 2d arrays (but this approach doesn't generalize to 1d)
— Sep 06, 2025 03:43PM
Like flag
John’s Previous Updates
John
is on page 304 of 704
Skimmed vectorization, threading, and multiprocessing chapters. Multiprocessing and threading are tightly-bound to implementations (OpenMP and MPI) and not very general. Discussion of halo cells / ghost cells buried in OpenMP chapter was interesting.
— Sep 07, 2025 04:07PM
John
is on page 169 of 704
Verdict on algorithms chapter: wrong level of abstraction. Very concrete: here's an incomplete description of a problem that we solved with spatial hashing in our research, here's the code for the spatial hashing technique, graph of speedup. Preconditions unstated. Poor job conveying general structure or intuition behind techniques. Critical parts of eg parallel prefix-sum buried in diagram and not described in text.
— Sep 07, 2025 02:09PM
John
is on page 151 of 704
I did like the note on better cache behavior of quadratic probing over double hashing at least
— Sep 07, 2025 01:39PM
John
is on page 153 of 704
This algorithm for finding neighbors of irregular polygons doesn't work correctly if the edge of a single cell continues without bending while in contact with edges of two more cells (like, say, the eastern edge of Wyoming abutting both Nebraska and South Dakota).
— Sep 07, 2025 01:32PM
John
is on page 148 of 704
Forward reference to prefix sum, a concept introduced later in the chapter, makes this paragraph on performance characteristics of sorting using spatial hashing require rereading later
— Sep 07, 2025 01:23PM
John
is on page 135 of 704
"The neighbor list of each cell on each side is just one of the [possibly multiple] neighbor cells and the choice is to be the lower cell or the cell to the left of each pair" - sounds like knowingly sacrificing correctness?
— Sep 07, 2025 01:16PM
John
is on page 131 of 704
This explanation of hashing and hashtables is atrocious; provides a concrete example of inputs and outputs but doesn't clearly describe the hash function being used, and terminologically unclear around hash vs hashtable.
— Sep 07, 2025 12:43PM

