ManifoldsGPU

Benchmarks

Device: NVIDIA GeForce RTX 5070 Ti, eltype: Float32/ComplexF32

ManifoldOperationCPU median [ms]GPU median [ms]Speedup CPU/GPURelative error
Euclidean(32, 16, 2048)exp0.540.182.930.0
Euclidean(32, 16, 2048)log!0.460.192.440.0
Euclidean(32, 16, 2048)inner0.280.141.991.871e-7
Euclidean(32, 16, 2048)norm0.160.190.878.423e-8
Euclidean(32, 16, 2048)project!0.360.142.660.0
PowerManifold(Sphere(31), 2048)exp0.0547.610.06.877e-8
PowerManifold(Sphere(31), 2048)log!0.1784.270.04.262e-8
PowerManifold(Sphere(31), 2048)inner0.020.140.165.86e-7
PowerManifold(Sphere(31), 2048)norm0.030.150.211.064e-7
PowerManifold(Sphere(31), 2048)project!0.0441.050.02.813e-8
PowerManifold(Rotations(32), 2048)exp41.42.4217.142.594e-6
PowerManifold(Rotations(32), 2048)log!557.8272.727.679.157e-5
PowerManifold(Rotations(32), 2048)inner0.580.153.814.708e-6
PowerManifold(Rotations(32), 2048)norm1.510.1410.531.109e-6
PowerManifold(Rotations(32), 2048)project!22.730.2687.153.644e-7
PowerManifold(UnitaryMatrices(32), 2048)exp89.117.6811.61.957e-6
PowerManifold(UnitaryMatrices(32), 2048)log!775.6472.0310.770.0001844
PowerManifold(UnitaryMatrices(32), 2048)inner1.1675.780.025.979e-5
PowerManifold(UnitaryMatrices(32), 2048)norm1.8745.720.041.516e-6
PowerManifold(UnitaryMatrices(32), 2048)project!33.50.3888.745.512e-7
PowerManifold(Grassmann(32, 16), 2048)exp74.281064.360.078.275e-7
PowerManifold(Grassmann(32, 16), 2048)log!68.931033.570.071.854e-5
PowerManifold(Grassmann(32, 16), 2048)inner0.280.161.778.056e-7
PowerManifold(Grassmann(32, 16), 2048)norm0.850.155.51.848e-7
PowerManifold(Grassmann(32, 16), 2048)project!1.1554.210.021.329e-7
PowerManifold(Stiefel(32, 16), 2048)exp(ExponentialRetraction)76.593.5621.541.164e-6
PowerManifold(Stiefel(32, 16), 2048)retract_fused!(PolarRetraction)45.232.9715.241.37e-6