Example 5.3: Sparsity Benchmark

Hardware Specification for Rerun

Desktop workstation with 2x (AMD EPYC 7702 64-Core) with total of 128 physical and 256 logical cores, 1024 GB DDR4 with Ubuntu 22.04 LTS operating system.

[2]:
import molli as ml
import h5py
import numpy as np

for g in "15", "10", "07":
    with h5py.File(f"bpa_aligned_grid{g}_aso.hdf5") as f:
        descriptors = np.asarray([f[k] for k in f.keys()])
        sparsity = 1 - np.count_nonzero(descriptors, axis=1) / descriptors.shape[1]
        print(
            f"ASO Sparsity for {g=} {np.mean(sparsity)=:.2%}, {np.std(sparsity)=:.2%}"
        )

    with h5py.File(f"bpa_aligned_grid{g}.hdf5") as f:
        N = f["grid"].shape[0]
        pruned_grp = f["grid_pruned_idx"]
        sparsity = 1 - np.asarray(
            [pruned_grp[k].shape[0] / N for k in pruned_grp.keys()]
        )
        print(
            f"PRUNED Sparsity for {g=} {np.mean(sparsity)=:.2%}, {np.std(sparsity)=:.2%}"
        )
ASO Sparsity for g='15' np.mean(sparsity)=92.00%, np.std(sparsity)=4.42%
PRUNED Sparsity for g='15' np.mean(sparsity)=86.65%, np.std(sparsity)=6.49%
ASO Sparsity for g='10' np.mean(sparsity)=91.60%, np.std(sparsity)=4.60%
PRUNED Sparsity for g='10' np.mean(sparsity)=86.03%, np.std(sparsity)=6.74%
ASO Sparsity for g='07' np.mean(sparsity)=91.54%, np.std(sparsity)=4.66%
PRUNED Sparsity for g='07' np.mean(sparsity)=85.92%, np.std(sparsity)=6.78%