public class IntConvolutionBuilder extends AbstractConvolutionBuilder
int
type.IntShortConvolutionStrategy
,
IntMediumConvolutionStrategy
,
IntKaratsubaConvolutionStrategy
,
ThreeNTTConvolutionStrategy
Constructor and Description |
---|
IntConvolutionBuilder()
Default constructor.
|
Modifier and Type | Method and Description |
---|---|
protected ConvolutionStrategy |
createKaratsubaConvolutionStrategy(int radix)
Create a Karatsuba convolution strategy.
|
protected ConvolutionStrategy |
createMediumConvolutionStrategy(int radix)
Create a medium-length convolution strategy where the size of one
of the data sets is relatively small (but more than one).
|
protected ConvolutionStrategy |
createShortConvolutionStrategy(int radix)
Create a short-length convolution strategy where the size of either
data set is one.
|
protected ConvolutionStrategy |
createThreeNTTConvolutionStrategy(int radix,
NTTStrategy nttStrategy)
Create a 3-NTT convolution strategy.
|
protected float |
getKaratsubaCostFactor()
Get the Karatsuba convolution cost factor.
|
protected int |
getKaratsubaCutoffPoint()
Get the Karatsuba convolution cutoff point.
|
protected float |
getNTTCostFactor()
Get the NTT convolution cost factor.
|
createConvolution
protected int getKaratsubaCutoffPoint()
AbstractConvolutionBuilder
getKaratsubaCutoffPoint
in class AbstractConvolutionBuilder
protected float getKaratsubaCostFactor()
AbstractConvolutionBuilder
getKaratsubaCostFactor
in class AbstractConvolutionBuilder
protected float getNTTCostFactor()
AbstractConvolutionBuilder
getNTTCostFactor
in class AbstractConvolutionBuilder
protected ConvolutionStrategy createShortConvolutionStrategy(int radix)
AbstractConvolutionBuilder
createShortConvolutionStrategy
in class AbstractConvolutionBuilder
radix
- The radix that will be used.protected ConvolutionStrategy createMediumConvolutionStrategy(int radix)
AbstractConvolutionBuilder
createMediumConvolutionStrategy
in class AbstractConvolutionBuilder
radix
- The radix that will be used.protected ConvolutionStrategy createKaratsubaConvolutionStrategy(int radix)
AbstractConvolutionBuilder
createKaratsubaConvolutionStrategy
in class AbstractConvolutionBuilder
radix
- The radix that will be used.protected ConvolutionStrategy createThreeNTTConvolutionStrategy(int radix, NTTStrategy nttStrategy)
AbstractConvolutionBuilder
createThreeNTTConvolutionStrategy
in class AbstractConvolutionBuilder
radix
- The radix that will be used.nttStrategy
- The underlying NTT strategy.Copyright © 2018. All rights reserved.