| Package | Description |
|---|---|
| org.nd4j.autodiff.samediff.optimize | |
| org.nd4j.autodiff.samediff.optimize.debug | |
| org.nd4j.autodiff.samediff.optimize.optimizations |
| Modifier and Type | Method and Description |
|---|---|
List<Optimizer> |
OptimizerSet.getOptimizers() |
| Modifier and Type | Method and Description |
|---|---|
void |
OptimizationDebugger.afterOptimizationsCheck(SameDiff sd,
SameDiffOp op,
Optimizer o,
boolean wasApplied) |
void |
OptimizationDebugger.beforeOptimizationCheck(SameDiff sd,
SameDiffOp op,
Optimizer o) |
| Modifier and Type | Class and Description |
|---|---|
static class |
ConstantFunctionOptimizations.FoldConstantFunctions |
static class |
CuDNNFunctionOptimizations.CudnnConv2dNCHWtoNHWCConversion
https://docs.nvidia.com/deeplearning/sdk/dl-performance-guide/index.html#tensor-layout
For tensor cores: we want NHWC layout:
Section 7.3.1
"Layout choice has an effect on performance, as convolutions implemented for Tensor Cores require NHWC layout and are fastest when input tensors are laid out in NHWC."
"To maximize performance, we recommend using NHWC tensor layout."
As for weights format: cuDNN docs are vague - but TF uses NCHW+OIHW or NHWC+OHWI
|
static class |
IdentityFunctionOptimizations.RemoveIdentityOps
Remove identity(x)
|
static class |
IdentityFunctionOptimizations.RemoveIdentityPermute
Remove permute(0,1,2,...,rank-1) as this is a no-op
|
static class |
ShapeFunctionOptimizations.FuseChainedConcatOps
Fuse [concat(concat(concat(x,y,dim=D), z, dim=D), a, dim=D)] into a single concat op, concat(x,y,z,a, dim=D)
As long as the intermediate outputs aren't needed elsewhere
|
static class |
ShapeFunctionOptimizations.FuseChainedPermutes
Fuse [permute1 -> permute2 -> ...
|
static class |
ShapeFunctionOptimizations.FuseChainedReshapes
Fuse [reshape1 -> reshape2 -> ...
|
static class |
UnusedFunctionOptimizations.RemoveUnusedConstants |
| Modifier and Type | Method and Description |
|---|---|
List<Optimizer> |
BaseOptimizerSet.getOptimizers() |
Copyright © 2022. All rights reserved.