Skip to content

Tags: SparseDifferentiation/SparseDiffEngine

Tags

v0.5.0

Toggle v0.5.0's commit message
Set version to 0.5.0 for release

v0.4.0

Toggle v0.4.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Add stacked permuted dense logic

* stacked_pd struct, constructor, and BA_spd_csc

* first draft of coalesce

* first draft of transpose

* DA_spd_fill_values

* chain rule infrastructure

* BA_pd_spd

* BA_spd_spd

* polymorphism

* index, broadcast, diag_vec etc.

* BA_spd_pd

* continguous memory between blocks so we can just x field in matrix

* bug wrong ordering of rows

* small bug fixes

* before refactor

* split up stacked pd into two files

* accumulate in ATDA_spd_fill_values

* move coalesce to stacked_pd + general clean up

* split up permuted dense into permuted_dense_linalg.h

* split up permuted dense into permuted_dense_linalg.h

* unify code in stacked_pd

* clean up BA_pd_spd

* wire vtable refactor

* remove unnecessary polymorphishm

* clean up and coalesce in new file

* happy with stacked_pd.c

* clean up coalesce

* update some comments

* remove A_spd from left_matmul by implementing kron wrappers

* the actual kron wrappers

* clean up left matmul

* get rid of to_csr in sum.c by computing a different idx map

* small kron debug

* remove to-csr in multiply by building correct idx map for stacked pd

* remove to-csr in matmul by building correct idx map for stacked pd

* simplify idx map

* run formatter

* remove to_csr in problem.c by updating idx map for stacked_Pdd

* general clean up

* kernel work

* BTA_pd_spd

* BTDA_spd_pd_fill_values

* unify BTA_pd_spd like kernels

* BTA_spd_spd

* BTA_spd_matrix dispatcher

* add BTA_pd_matrices

* BTA_csc_spd

* BTA sparse matrix dispatcher

* wire in new dispatchers

* clarify contract for kron

* improve matmul dispatchers interface

* unify kron functions

* fix comments

* update version to 0.4.0

v0.3.0

Toggle v0.3.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
[WIP] New matrix abstraction (#87)

* start with permuted dense struct, without integration

* better polymorphism

* make hessian matrix

* dispatch for elementwise chainr rule hessian

* better polymorphism for copying sparsity pattern

* remove many to_csr

* remove memcpy in to_csr

* add profile for trimmed log reg

* infrastructure for matrix multiplication when one matrix is permuted_dense

* ran formatter

* better BTDA for permuted dense x permuted_dense

* more cache friendly BA_pd_csc_fill_values

* edits

* better permuted dense times CSC function

* better infrastructure permuted dense

* get rid of unnecessary allocation

* change name of some functions

* run formatter

* permutation dense preserving transpose implementation via index polymorhpim

* clean up multiply

* clean up matrix.h

* lazy allocation of dwork in permuted_dense

* Implement block_left_mult on permuted_dense

* swap dense matrix for permuted dense and delete dense_matrix

* more infrastructure

* better BA_pd_pd_fill_values

* add permuted dense polymorphism to left matmul

* minor

* add test

* clean up left_matmul and enable parameter

* fix filename

v0.2.2

Toggle v0.2.2's commit message
new convolve atom (#85)

* initial iteration for convolve atom

* apply formatter

* adds test for row convolve in case it is 1d in python

* improve convention of data pointer when we have parameters for left and right matmul

* get rid of sparse matrix abstraction and just do CSR instead

* get rid of block abstraction and use non-block logic instead

* happy with convolve.c

---------

Co-authored-by: dance858 <danielcederberg1@gmail.com>

v0.2.1

Toggle v0.2.1's commit message
Change license header (#81)

* update license header line for all source files

* add license to new files

* remove empty lines at the end of files

v0.2.0

Toggle v0.2.0's commit message
set version to 0.2.0 for release

v0.1.6

Toggle v0.1.6's commit message
update version

v0.1.5

Toggle v0.1.5's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Add Gaussian cdf as atom (#50)

* normal cdf

* broadcast bug fix

* run formatter

* update version

v0.1.4

Toggle v0.1.4's commit message
fix: install OpenBLAS in release CI for Ubuntu

The release workflow was missing the libopenblas-dev install step that
cmake.yml already has, causing BLAS-dependent builds to fail on Linux.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

v0.1.3

Toggle v0.1.3's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
COO support (#47)

* basic coo support

* run formatter only on macos

* ran formatter

* added comment

* formatter

* updated version number