DIAGONAL DATASETS

Research note

30° and 60°: A Peer Review Update

A faction within the institute has proposed non-45° orientations. This is our position, which is that they are wrong, and the reasoning, which is that 45° is the only self-inverse angle.

Since publication of the founding note we have received a steady volume of correspondence proposing angles other than 45 degrees. Thirty degrees is the most common. Sixty is second. One correspondent has repeatedly proposed 22.5 degrees and has begun signing his emails "the half-diagonal," which we would ask him to stop.

The Standards Committee has now formally considered non-45° orientations. Our finding is that they are not diagonal. They are tilted, and tilt is not an orientation, it is an accident with a slope.

The argument

Take any angle θ. Store your data along a band at θ. Now transpose the matrix.

At 45 degrees, the band maps exactly onto itself. Your storage layout after the transpose is bit-for-bit identical to your layout before it. The orientation is self-inverse. It is the only angle in the entire continuous range for which this is true, and the fact that it is unique is not an aesthetic argument — it is a structural one.

At 30 degrees, the transpose sends your band to 60 degrees. You now have two layouts. You need a canonical form. You need a normalization step. You need to write a document explaining which of the two is correct and, critically, you need to defend that document, because the 60-degree faction will read it and they will not be persuaded.

Every angle except 45 requires a committee. Forty-five degrees requires only arithmetic.

An orientation that changes when you look at it from the other side is not an orientation. It is a preference.

On the internal faction

Two members of the institute continue to hold that 30° is viable for what they call "asymmetric workloads." Their argument is that when your matrix is not square, the main diagonal does not reach the far corners, and a shallower angle covers more of the address space.

This is true. It is also a description of the problem, not a solution to it. If your matrix is not square, the correct response is not to bend the diagonal to fit the rectangle. The correct response is to fix the rectangle.

We have documented this position as RFC-D45 §7, and we have documented the dissent as §7.1, because a standard that does not record its dissent is just a memo.

Current status

  • 45° — Ratified. Canonical. Self-inverse. Closed for discussion.
  • 30° / 60° — Under peer review. Peer review is ongoing. Peer review consists of the Standards Committee, which consists of one person, who has already written this post.
  • 22.5° — Not under consideration. Please stop.
  • 0° / 90° — Historical. See the entire rest of the industry.

Every claim in this note is false. The angle is real. Do not cite this in a design review.

← Newer: Sparsity Is Not a Bug Report
→ Older: Your ORM Cannot Express This

All research notes · RSS