HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
MasonProtter
Gaius.jl
Julia2020–2020
MasonProtter / Gaius.jl

Gaius.jl

Divide and Conquer Linear Algebra

3Distinct people
5Mentions
0Explicit recommenders
119GitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

Divide and Conquer Linear Algebra

GitHub

Where it is used

No documented product use has been verified yet.

What people are saying

No recommendation phrase was found in the indexed comments.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

Mentioned in the same Hacker News threads. That is not proof they are substitutes.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 5:04:57 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by week5 dated mentions

Observed mentions: 2020-03-22 16:33:28 UTC to 2020-10-20 18:34:12 UTC. Weeks start Monday, UTC.

0122020-03-16 00:00:00 UTC to 2020-03-23 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 commentsMar 162020-03-23 00:00:00 UTC to 2020-03-30 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2020-03-30 00:00:00 UTC to 2020-04-06 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2020-04-06 00:00:00 UTC to 2020-04-13 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments2020-04-13 00:00:00 UTC to 2020-04-20 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2020-04-20 00:00:00 UTC to 2020-04-27 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2020-04-27 00:00:00 UTC to 2020-05-04 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2020-05-04 00:00:00 UTC to 2020-05-11 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2020-05-11 00:00:00 UTC to 2020-05-18 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2020-05-18 00:00:00 UTC to 2020-05-25 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2020-05-25 00:00:00 UTC to 2020-06-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2020-06-01 00:00:00 UTC to 2020-06-08 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2020-06-08 00:00:00 UTC to 2020-06-15 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2020-06-15 00:00:00 UTC to 2020-06-22 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2020-06-22 00:00:00 UTC to 2020-06-29 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2020-06-29 00:00:00 UTC to 2020-07-06 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 commentsJun 292020-07-06 00:00:00 UTC to 2020-07-13 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2020-07-13 00:00:00 UTC to 2020-07-20 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2020-07-20 00:00:00 UTC to 2020-07-27 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2020-07-27 00:00:00 UTC to 2020-08-03 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2020-08-03 00:00:00 UTC to 2020-08-10 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2020-08-10 00:00:00 UTC to 2020-08-17 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2020-08-17 00:00:00 UTC to 2020-08-24 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2020-08-24 00:00:00 UTC to 2020-08-31 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2020-08-31 00:00:00 UTC to 2020-09-07 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2020-09-07 00:00:00 UTC to 2020-09-14 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2020-09-14 00:00:00 UTC to 2020-09-21 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2020-09-21 00:00:00 UTC to 2020-09-28 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2020-09-28 00:00:00 UTC to 2020-10-05 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2020-10-05 00:00:00 UTC to 2020-10-12 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2020-10-12 00:00:00 UTC to 2020-10-19 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2020-10-19 00:00:00 UTC to 2020-10-26 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 commentsOct 19

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
Mar 162020-03-16 00:00:00 UTC2020-03-23 00:00:00 UTC101
Mar 232020-03-23 00:00:00 UTC2020-03-30 00:00:00 UTC000
Mar 302020-03-30 00:00:00 UTC2020-04-06 00:00:00 UTC000
Apr 62020-04-06 00:00:00 UTC2020-04-13 00:00:00 UTC202
Apr 132020-04-13 00:00:00 UTC2020-04-20 00:00:00 UTC000
Apr 202020-04-20 00:00:00 UTC2020-04-27 00:00:00 UTC000
Apr 272020-04-27 00:00:00 UTC2020-05-04 00:00:00 UTC000
May 42020-05-04 00:00:00 UTC2020-05-11 00:00:00 UTC000
May 112020-05-11 00:00:00 UTC2020-05-18 00:00:00 UTC000
May 182020-05-18 00:00:00 UTC2020-05-25 00:00:00 UTC000
May 252020-05-25 00:00:00 UTC2020-06-01 00:00:00 UTC000
Jun 12020-06-01 00:00:00 UTC2020-06-08 00:00:00 UTC000
Jun 82020-06-08 00:00:00 UTC2020-06-15 00:00:00 UTC000
Jun 152020-06-15 00:00:00 UTC2020-06-22 00:00:00 UTC000
Jun 222020-06-22 00:00:00 UTC2020-06-29 00:00:00 UTC000
Jun 292020-06-29 00:00:00 UTC2020-07-06 00:00:00 UTC000
Jul 62020-07-06 00:00:00 UTC2020-07-13 00:00:00 UTC000
Jul 132020-07-13 00:00:00 UTC2020-07-20 00:00:00 UTC000
Jul 202020-07-20 00:00:00 UTC2020-07-27 00:00:00 UTC000
Jul 272020-07-27 00:00:00 UTC2020-08-03 00:00:00 UTC000
Aug 32020-08-03 00:00:00 UTC2020-08-10 00:00:00 UTC000
Aug 102020-08-10 00:00:00 UTC2020-08-17 00:00:00 UTC000
Aug 172020-08-17 00:00:00 UTC2020-08-24 00:00:00 UTC000
Aug 242020-08-24 00:00:00 UTC2020-08-31 00:00:00 UTC000
Aug 312020-08-31 00:00:00 UTC2020-09-07 00:00:00 UTC000
Sep 72020-09-07 00:00:00 UTC2020-09-14 00:00:00 UTC000
Sep 142020-09-14 00:00:00 UTC2020-09-21 00:00:00 UTC000
Sep 212020-09-21 00:00:00 UTC2020-09-28 00:00:00 UTC101
Sep 282020-09-28 00:00:00 UTC2020-10-05 00:00:00 UTC000
Oct 52020-10-05 00:00:00 UTC2020-10-12 00:00:00 UTC000
Oct 122020-10-12 00:00:00 UTC2020-10-19 00:00:00 UTC000
Oct 192020-10-19 00:00:00 UTC2020-10-26 00:00:00 UTC101

What Hacker News says

5 sources
Julia's SIMD programming model is still very much a work in progress; I think we have a way to go in providing the kind of flexibility and control that languages such as ISPC, Halide, TVM, etc... provide. That being said, packages such as SIMD.jl [0], and LoopVectorization.jl [1] are making fantastic progress, to the point that LoopVectorization forms the basis of a legitimate BLAS contender, in pure Julia [2]. It's not totally there yet, but it's close enough that real work is being done in LV at OpenBLAS-like speeds. As an aside, I find it incredible that these kinds of extensions can be built in packages thanks to the fact that Julia's compiler is extensible enough to allow for direct manipulation of the LLVM intrinsics being emitted by user code. [0] https://github.com/eschnett/SIMD.jl [1] https://github.com/chriselrod/LoopVectorizat
Read the rest
In The Accelerating Adoption of Julia
Note that a lot of Julia are using Julia-based BLAS implementations now (of which there are multiple) https://discourse.julialang.org/t/ann-paddedmatrices-jl-juli... https://github.com/MasonProtter/Gaius.jl https://github.com/mcabbott/Tullio.jl These libraries have been incorporated in various spots in the machine learning, scientific machine learning, differential equation, and other libraries due to how they often outperform BLAS's like OpenBLAS. While the core language still links to OpenBLAS by default, this is up for debate for future versions of Julia given these developments (and movements in the standard library are being done to better incorporate the use of different BLAS implementations).
In The Rise and Fall of High Performance Fortran (2011)
You could just use LoopVectorization on the CPU side. It's been shown to match well-tuned C++ BLAS implementations, for example with the pure Julia Gaius.jl (https://github.com/MasonProtter/Gaius.jl), so you can follow that as an example for getting BLAS-speed CPU side kernels. For the GPU side, there's CUDAnative.jl and KernelAbstractions.jl, and indeed benchmarks from NVIDIA show that it at least rivals directly writing CUDA (https://devblogs.nvidia.com/gpu-computing-julia-programming-...), so you won't be missing anything just by learning Julia and sticking to using just Julia for researching new kernel implementations.
In Swift: Google’s Bet on Differentiable Programming
A lot of the wrappers are largely legacy at this point. BLAS1 and BLAS2 operations are handled in pure Julia through the broadcast system, there's no performance degradation there and the fusion of operations actually makes for a lot of performance advantages over simple BLAS calls. For BLAS3, tools like LoopVectorization let you write a pure BLAS3 in Julia and get good performance, Gaius.jl is a good example of this by matching OpenBLAS with pure Julia code. Of course you still have to write out how to do blocking, but that's about it. At this point it's mostly needing more coverage before deprecating BLAS bindings in a Julia 2.0 down the line. https://github.com/MasonProtter/Gaius.jl
In CuPy Accelerates NumPy on the GPU? Hold My Cider, Here's Clojure

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.