Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
scalar_multiplication.test.cpp File Reference

Go to the source code of this file.

Classes

class  ScalarMultiplicationTest< Curve >
 
class  ScalarMultiplicationTest< Curve >::ConcurrencyScope
 RAII helper to scope a bb::set_parallel_for_concurrency change to one test. More...
 
class  VariableWindowSplitDispatchTest< Curve >
 

Typedefs

using CurveTypes = ::testing::Types< bb::curve::BN254, bb::curve::Grumpkin >
 
using VariableWindowCurveTypes = ::testing::Types< bb::curve::BN254, bb::curve::Grumpkin >
 

Functions

 TYPED_TEST_SUITE (ScalarMultiplicationTest, CurveTypes)
 
 TEST (ScalarMultiplicationArenaTest, LargeBn254RecursionVkShapeFitsComputedArena)
 
 TEST (ScalarMultiplicationArenaTest, ArenaLayoutFitsAcrossDispatchSpace)
 
 TYPED_TEST (ScalarMultiplicationTest, PippengerLowMemory)
 
 TYPED_TEST (ScalarMultiplicationTest, BatchMultiScalarMul)
 
 TYPED_TEST (ScalarMultiplicationTest, BatchMultiScalarMulSparse)
 
 TYPED_TEST (ScalarMultiplicationTest, BatchMultiScalarMulLargeDense)
 
 TYPED_TEST (ScalarMultiplicationTest, BatchMultiScalarMulRagged)
 
 TYPED_TEST (ScalarMultiplicationTest, MSM)
 
 TYPED_TEST (ScalarMultiplicationTest, MSMAllZeroes)
 
 TYPED_TEST (ScalarMultiplicationTest, MSMEmptyPolynomial)
 
 TYPED_TEST (ScalarMultiplicationTest, ScalarsUnchangedAfterMSM)
 
 TYPED_TEST (ScalarMultiplicationTest, ScalarsUnchangedAfterBatchMultiScalarMul)
 
 TYPED_TEST (ScalarMultiplicationTest, ScalarsUnchangedAfterLargeNonGlvMSM)
 
 TYPED_TEST (ScalarMultiplicationTest, ScalarOne)
 
 TYPED_TEST (ScalarMultiplicationTest, ScalarMinusOne)
 
 TYPED_TEST (ScalarMultiplicationTest, SinglePoint)
 
 TYPED_TEST (ScalarMultiplicationTest, SizeThresholds)
 
 TYPED_TEST (ScalarMultiplicationTest, DuplicatePoints)
 
 TYPED_TEST (ScalarMultiplicationTest, MixedZeroScalars)
 
 TYPED_TEST (ScalarMultiplicationTest, PippengerFreeFunction)
 
 TYPED_TEST (ScalarMultiplicationTest, PippengerUnsafeFreeFunction)
 
 TYPED_TEST (ScalarMultiplicationTest, OffsetSpan)
 
 TYPED_TEST (ScalarMultiplicationTest, LargeNNonGLV)
 
 TYPED_TEST (ScalarMultiplicationTest, MSMSingleDigitMegaRun)
 
 TYPED_TEST (ScalarMultiplicationTest, MSMDedupCapAndCarry)
 
 TYPED_TEST (ScalarMultiplicationTest, MSMDedupManySmallClustersCap)
 
 TYPED_TEST (ScalarMultiplicationTest, PippengerInternalSingleThread)
 
 TYPED_TEST (ScalarMultiplicationTest, PippengerInternalSingleThreadAtDispatchThresholdPlusOne)
 
 TYPED_TEST (ScalarMultiplicationTest, PippengerInternalDispatchThresholdPerThreadCount)
 
 TYPED_TEST (ScalarMultiplicationTest, PippengerInternalOffsetSpanDispatch)
 
 TYPED_TEST (ScalarMultiplicationTest, PippengerInternalAllZeroScalars)
 
 TYPED_TEST (ScalarMultiplicationTest, PippengerInternalMixedZeroScalars)
 
 TYPED_TEST (ScalarMultiplicationTest, PippengerInternalExtremeScalars)
 
 TYPED_TEST (ScalarMultiplicationTest, TrivialMsmThreadedPerWorkerPaths)
 
 TYPED_TEST (ScalarMultiplicationTest, PippengerInternalGlvBoundary)
 
 TYPED_TEST (ScalarMultiplicationTest, PippengerInternalMisalignedExternalArena)
 
 TYPED_TEST (ScalarMultiplicationTest, HandleEdgeCasesPointAtInfinity)
 
 TYPED_TEST (ScalarMultiplicationTest, HandleEdgeCasesInversePairs)
 
 TYPED_TEST (ScalarMultiplicationTest, ExternalGlvDoubledDirect)
 
 TYPED_TEST (ScalarMultiplicationTest, GlvExtremeMagnitudeScalars)
 
 TYPED_TEST (ScalarMultiplicationTest, EffectiveNumBitsBandSmallScalars)
 
 TYPED_TEST (ScalarMultiplicationTest, DedupLargeClusterCarryAndCaps)
 
 TYPED_TEST (ScalarMultiplicationTest, BatchDriverSharedPathRagged)
 
 TYPED_TEST_SUITE (VariableWindowSplitDispatchTest, VariableWindowCurveTypes)
 
 TYPED_TEST (VariableWindowSplitDispatchTest, Cliff)
 
 TYPED_TEST (VariableWindowSplitDispatchTest, Decaying)
 
 TYPED_TEST (VariableWindowSplitDispatchTest, UniformRandom)
 
 TYPED_TEST (VariableWindowSplitDispatchTest, AllZero)
 
 TYPED_TEST (VariableWindowSplitDispatchTest, HalfZero)
 
 TYPED_TEST (VariableWindowSplitDispatchTest, AllLarge)
 
 TYPED_TEST (VariableWindowSplitDispatchTest, MidDistribution)
 
 TYPED_TEST (VariableWindowSplitDispatchTest, Below192)
 
 TYPED_TEST (VariableWindowSplitDispatchTest, ForceSplitBitwiseIdentity)
 
 TEST (ScalarMultiplication, SmallInputsExplicit)
 

Typedef Documentation

◆ CurveTypes

using CurveTypes = ::testing::Types<bb::curve::BN254, bb::curve::Grumpkin>

Definition at line 1660 of file scalar_multiplication.test.cpp.

◆ VariableWindowCurveTypes

Function Documentation

◆ TEST() [1/3]

TEST ( ScalarMultiplication  ,
SmallInputsExplicit   
)

Definition at line 2157 of file scalar_multiplication.test.cpp.

◆ TEST() [2/3]

TEST ( ScalarMultiplicationArenaTest  ,
ArenaLayoutFitsAcrossDispatchSpace   
)

Definition at line 1698 of file scalar_multiplication.test.cpp.

◆ TEST() [3/3]

TEST ( ScalarMultiplicationArenaTest  ,
LargeBn254RecursionVkShapeFitsComputedArena   
)

Definition at line 1663 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [1/50]

TYPED_TEST ( ScalarMultiplicationTest  ,
BatchDriverSharedPathRagged   
)

Definition at line 1921 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [2/50]

TYPED_TEST ( ScalarMultiplicationTest  ,
BatchMultiScalarMul   
)

Definition at line 1747 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [3/50]

TYPED_TEST ( ScalarMultiplicationTest  ,
BatchMultiScalarMulLargeDense   
)

Definition at line 1755 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [4/50]

TYPED_TEST ( ScalarMultiplicationTest  ,
BatchMultiScalarMulRagged   
)

Definition at line 1759 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [5/50]

TYPED_TEST ( ScalarMultiplicationTest  ,
BatchMultiScalarMulSparse   
)

Definition at line 1751 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [6/50]

TYPED_TEST ( ScalarMultiplicationTest  ,
DedupLargeClusterCarryAndCaps   
)

Definition at line 1917 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [7/50]

TYPED_TEST ( ScalarMultiplicationTest  ,
DuplicatePoints   
)

Definition at line 1803 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [8/50]

TYPED_TEST ( ScalarMultiplicationTest  ,
EffectiveNumBitsBandSmallScalars   
)

Definition at line 1913 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [9/50]

TYPED_TEST ( ScalarMultiplicationTest  ,
ExternalGlvDoubledDirect   
)

Definition at line 1902 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [10/50]

TYPED_TEST ( ScalarMultiplicationTest  ,
GlvExtremeMagnitudeScalars   
)

Definition at line 1909 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [11/50]

TYPED_TEST ( ScalarMultiplicationTest  ,
HandleEdgeCasesInversePairs   
)

Definition at line 1898 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [12/50]

TYPED_TEST ( ScalarMultiplicationTest  ,
HandleEdgeCasesPointAtInfinity   
)

Definition at line 1894 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [13/50]

TYPED_TEST ( ScalarMultiplicationTest  ,
LargeNNonGLV   
)

Definition at line 1824 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [14/50]

TYPED_TEST ( ScalarMultiplicationTest  ,
MixedZeroScalars   
)

Definition at line 1807 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [15/50]

TYPED_TEST ( ScalarMultiplicationTest  ,
MSM   
)

Definition at line 1763 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [16/50]

TYPED_TEST ( ScalarMultiplicationTest  ,
MSMAllZeroes   
)

Definition at line 1767 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [17/50]

TYPED_TEST ( ScalarMultiplicationTest  ,
MSMDedupCapAndCarry   
)

Definition at line 1838 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [18/50]

TYPED_TEST ( ScalarMultiplicationTest  ,
MSMDedupManySmallClustersCap   
)

Definition at line 1845 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [19/50]

TYPED_TEST ( ScalarMultiplicationTest  ,
MSMEmptyPolynomial   
)

Definition at line 1771 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [20/50]

TYPED_TEST ( ScalarMultiplicationTest  ,
MSMSingleDigitMegaRun   
)

Definition at line 1831 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [21/50]

TYPED_TEST ( ScalarMultiplicationTest  ,
OffsetSpan   
)

Definition at line 1819 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [22/50]

TYPED_TEST ( ScalarMultiplicationTest  ,
PippengerFreeFunction   
)

Definition at line 1811 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [23/50]

TYPED_TEST ( ScalarMultiplicationTest  ,
PippengerInternalAllZeroScalars   
)

Definition at line 1870 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [24/50]

TYPED_TEST ( ScalarMultiplicationTest  ,
PippengerInternalDispatchThresholdPerThreadCount   
)

Definition at line 1862 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [25/50]

TYPED_TEST ( ScalarMultiplicationTest  ,
PippengerInternalExtremeScalars   
)

Definition at line 1878 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [26/50]

TYPED_TEST ( ScalarMultiplicationTest  ,
PippengerInternalGlvBoundary   
)

Definition at line 1886 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [27/50]

TYPED_TEST ( ScalarMultiplicationTest  ,
PippengerInternalMisalignedExternalArena   
)

Definition at line 1890 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [28/50]

TYPED_TEST ( ScalarMultiplicationTest  ,
PippengerInternalMixedZeroScalars   
)

Definition at line 1874 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [29/50]

TYPED_TEST ( ScalarMultiplicationTest  ,
PippengerInternalOffsetSpanDispatch   
)

Definition at line 1866 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [30/50]

TYPED_TEST ( ScalarMultiplicationTest  ,
PippengerInternalSingleThread   
)

Definition at line 1854 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [31/50]

TYPED_TEST ( ScalarMultiplicationTest  ,
PippengerInternalSingleThreadAtDispatchThresholdPlusOne   
)

Definition at line 1858 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [32/50]

TYPED_TEST ( ScalarMultiplicationTest  ,
PippengerLowMemory   
)

Definition at line 1743 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [33/50]

TYPED_TEST ( ScalarMultiplicationTest  ,
PippengerUnsafeFreeFunction   
)

Definition at line 1815 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [34/50]

TYPED_TEST ( ScalarMultiplicationTest  ,
ScalarMinusOne   
)

Definition at line 1791 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [35/50]

TYPED_TEST ( ScalarMultiplicationTest  ,
ScalarOne   
)

Definition at line 1787 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [36/50]

TYPED_TEST ( ScalarMultiplicationTest  ,
ScalarsUnchangedAfterBatchMultiScalarMul   
)

Definition at line 1779 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [37/50]

TYPED_TEST ( ScalarMultiplicationTest  ,
ScalarsUnchangedAfterLargeNonGlvMSM   
)

Definition at line 1783 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [38/50]

TYPED_TEST ( ScalarMultiplicationTest  ,
ScalarsUnchangedAfterMSM   
)

Definition at line 1775 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [39/50]

TYPED_TEST ( ScalarMultiplicationTest  ,
SinglePoint   
)

Definition at line 1795 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [40/50]

TYPED_TEST ( ScalarMultiplicationTest  ,
SizeThresholds   
)

Definition at line 1799 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [41/50]

TYPED_TEST ( ScalarMultiplicationTest  ,
TrivialMsmThreadedPerWorkerPaths   
)

Definition at line 1882 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [42/50]

TYPED_TEST ( VariableWindowSplitDispatchTest  ,
AllLarge   
)

Definition at line 2138 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [43/50]

TYPED_TEST ( VariableWindowSplitDispatchTest  ,
AllZero   
)

Definition at line 2130 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [44/50]

TYPED_TEST ( VariableWindowSplitDispatchTest  ,
Below192   
)

Definition at line 2146 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [45/50]

TYPED_TEST ( VariableWindowSplitDispatchTest  ,
Cliff   
)

Definition at line 2118 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [46/50]

TYPED_TEST ( VariableWindowSplitDispatchTest  ,
Decaying   
)

Definition at line 2122 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [47/50]

TYPED_TEST ( VariableWindowSplitDispatchTest  ,
ForceSplitBitwiseIdentity   
)

Definition at line 2150 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [48/50]

TYPED_TEST ( VariableWindowSplitDispatchTest  ,
HalfZero   
)

Definition at line 2134 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [49/50]

TYPED_TEST ( VariableWindowSplitDispatchTest  ,
MidDistribution   
)

Definition at line 2142 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST() [50/50]

TYPED_TEST ( VariableWindowSplitDispatchTest  ,
UniformRandom   
)

Definition at line 2126 of file scalar_multiplication.test.cpp.

◆ TYPED_TEST_SUITE() [1/2]

TYPED_TEST_SUITE ( ScalarMultiplicationTest  ,
CurveTypes   
)

◆ TYPED_TEST_SUITE() [2/2]