deeplearning4j/deeplearning4j

View on GitHub
nd4j/nd4j-backends/nd4j-api-parent/nd4j-api/src/main/java/org/nd4j/linalg/api/blas/impl/BaseLevel2.java

Summary

Maintainability
F
1 wk
Test Coverage

BaseLevel2 has 48 methods (exceeds 20 allowed). Consider refactoring.
Open

public abstract class BaseLevel2 extends BaseLevel implements Level2 {
    /**
     * gemv computes a matrix-vector product using a general matrix and performs one of the following matrix-vector operations:
     * y := alpha*a*x + beta*y  for trans = 'N'or'n';
     * y := alpha*a'*x + beta*y  for trans = 'T'or't';

    File BaseLevel2.java has 315 lines of code (exceeds 250 allowed). Consider refactoring.
    Open

    /*
     *  ******************************************************************************
     *  *
     *  *
     *  * This program and the accompanying materials are made available under the

      Method dgbmv has 14 arguments (exceeds 4 allowed). Consider refactoring.
      Open

          protected abstract void dgbmv(char order, char TransA, int M, int N, int KL, int KU, double alpha, INDArray A,
                          int lda, INDArray X, int incX, double beta, INDArray Y, int incY);

        Method sgbmv has 14 arguments (exceeds 4 allowed). Consider refactoring.
        Open

            protected abstract void sgbmv(char order, char TransA, int M, int N, int KL, int KU, float alpha, INDArray A,
                            int lda, INDArray X, int incX, float beta, INDArray Y, int incY);

          Method dsbmv has 12 arguments (exceeds 4 allowed). Consider refactoring.
          Open

              protected abstract void dsbmv(char order, char Uplo, int N, int K, double alpha, INDArray A, int lda, INDArray X,
                              int incX, double beta, INDArray Y, int incY);

            Method ssbmv has 12 arguments (exceeds 4 allowed). Consider refactoring.
            Open

                protected abstract void ssbmv(char order, char Uplo, int N, int K, float alpha, INDArray A, int lda, INDArray X,
                                int incX, float beta, INDArray Y, int incY);

              Method dgemv has 12 arguments (exceeds 4 allowed). Consider refactoring.
              Open

                  protected abstract void dgemv(char order, char TransA, int M, int N, double alpha, INDArray A, int lda, INDArray X,
                                  int incX, double beta, INDArray Y, int incY);

                Method sgemv has 12 arguments (exceeds 4 allowed). Consider refactoring.
                Open

                    protected abstract void sgemv(char order, char TransA, int M, int N, float alpha, INDArray A, int lda, INDArray X,
                                    int incX, float beta, INDArray Y, int incY);

                  Method dsymv has 11 arguments (exceeds 4 allowed). Consider refactoring.
                  Open

                      protected abstract void dsymv(char order, char Uplo, int N, double alpha, INDArray A, int lda, INDArray X, int incX,
                                      double beta, INDArray Y, int incY);

                    Method ssymv has 11 arguments (exceeds 4 allowed). Consider refactoring.
                    Open

                        protected abstract void ssymv(char order, char Uplo, int N, float alpha, INDArray A, int lda, INDArray X, int incX,
                                        float beta, INDArray Y, int incY);

                      Method sger has 10 arguments (exceeds 4 allowed). Consider refactoring.
                      Open

                          protected abstract void sger(char order, int M, int N, float alpha, INDArray X, int incX, INDArray Y, int incY,
                                          INDArray A, int lda);

                        Method dtbsv has 10 arguments (exceeds 4 allowed). Consider refactoring.
                        Open

                            protected abstract void dtbsv(char order, char Uplo, char TransA, char Diag, int N, int K, INDArray A, int lda,
                                            INDArray X, int incX);

                          Method ssyr2 has 10 arguments (exceeds 4 allowed). Consider refactoring.
                          Open

                              protected abstract void ssyr2(char order, char Uplo, int N, float alpha, INDArray X, int incX, INDArray Y, int incY,
                                              INDArray A, int lda);

                            Method dspmv has 10 arguments (exceeds 4 allowed). Consider refactoring.
                            Open

                                protected abstract void dspmv(char order, char Uplo, int N, double alpha, INDArray Ap, INDArray X, int incX,
                                                double beta, INDArray Y, int incY);

                              Method dtbmv has 10 arguments (exceeds 4 allowed). Consider refactoring.
                              Open

                                  protected abstract void dtbmv(char order, char Uplo, char TransA, char Diag, int N, int K, INDArray A, int lda,
                                                  INDArray X, int incX);

                                Method sspmv has 10 arguments (exceeds 4 allowed). Consider refactoring.
                                Open

                                    protected abstract void sspmv(char order, char Uplo, int N, float alpha, INDArray Ap, INDArray X, int incX,
                                                    float beta, INDArray Y, int incY);

                                  Method stbmv has 10 arguments (exceeds 4 allowed). Consider refactoring.
                                  Open

                                      protected abstract void stbmv(char order, char Uplo, char TransA, char Diag, int N, int K, INDArray A, int lda,
                                                      INDArray X, int incX);

                                    Method dger has 10 arguments (exceeds 4 allowed). Consider refactoring.
                                    Open

                                        protected abstract void dger(char order, int M, int N, double alpha, INDArray X, int incX, INDArray Y, int incY,
                                                        INDArray A, int lda);

                                      Method dsyr2 has 10 arguments (exceeds 4 allowed). Consider refactoring.
                                      Open

                                          protected abstract void dsyr2(char order, char Uplo, int N, double alpha, INDArray X, int incX, INDArray Y,
                                                          int incY, INDArray A, int lda);

                                        Method stbsv has 10 arguments (exceeds 4 allowed). Consider refactoring.
                                        Open

                                            protected abstract void stbsv(char order, char Uplo, char TransA, char Diag, int N, int K, INDArray A, int lda,
                                                            INDArray X, int incX);

                                          Method dtrmv has 9 arguments (exceeds 4 allowed). Consider refactoring.
                                          Open

                                              protected abstract void dtrmv(char order, char Uplo, char TransA, char Diag, int N, INDArray A, int lda, INDArray X,
                                                              int incX);

                                            Method strsv has 9 arguments (exceeds 4 allowed). Consider refactoring.
                                            Open

                                                protected abstract void strsv(char order, char Uplo, char TransA, char Diag, int N, INDArray A, int lda, INDArray X,
                                                                int incX);

                                              Method strmv has 9 arguments (exceeds 4 allowed). Consider refactoring.
                                              Open

                                                  protected abstract void strmv(char order, char Uplo, char TransA, char Diag, int N, INDArray A, int lda, INDArray X,
                                                                  int incX);

                                                Method dspr2 has 9 arguments (exceeds 4 allowed). Consider refactoring.
                                                Open

                                                    protected abstract void dspr2(char order, char Uplo, int N, double alpha, INDArray X, int incX, INDArray Y,
                                                                    int incY, INDArray A);

                                                  Method sspr2 has 9 arguments (exceeds 4 allowed). Consider refactoring.
                                                  Open

                                                      protected abstract void sspr2(char order, char Uplo, int N, float alpha, INDArray X, int incX, INDArray Y, int incY,
                                                                      INDArray A);

                                                    Method gbmv has 9 arguments (exceeds 4 allowed). Consider refactoring.
                                                    Open

                                                        public void gbmv(char order, char TransA, int KL, int KU, double alpha, INDArray A, INDArray X, double beta,
                                                                        INDArray Y) {

                                                      Method dtrsv has 9 arguments (exceeds 4 allowed). Consider refactoring.
                                                      Open

                                                          protected abstract void dtrsv(char order, char Uplo, char TransA, char Diag, int N, INDArray A, int lda, INDArray X,
                                                                          int incX);

                                                        Method stpmv has 8 arguments (exceeds 4 allowed). Consider refactoring.
                                                        Open

                                                            protected abstract void stpmv(char order, char Uplo, char TransA, char Diag, int N, INDArray Ap, INDArray X,
                                                                            int incX);

                                                          Method dsyr has 8 arguments (exceeds 4 allowed). Consider refactoring.
                                                          Open

                                                              protected abstract void dsyr(char order, char Uplo, int N, double alpha, INDArray X, int incX, INDArray A, int lda);

                                                            Method dtpsv has 8 arguments (exceeds 4 allowed). Consider refactoring.
                                                            Open

                                                                protected abstract void dtpsv(char order, char Uplo, char TransA, char Diag, int N, INDArray Ap, INDArray X,
                                                                                int incX);

                                                              Method dtpmv has 8 arguments (exceeds 4 allowed). Consider refactoring.
                                                              Open

                                                                  protected abstract void dtpmv(char order, char Uplo, char TransA, char Diag, int N, INDArray Ap, INDArray X,
                                                                                  int incX);

                                                                Method ssyr has 8 arguments (exceeds 4 allowed). Consider refactoring.
                                                                Open

                                                                    protected abstract void ssyr(char order, char Uplo, int N, float alpha, INDArray X, int incX, INDArray A, int lda);

                                                                  Method stpsv has 8 arguments (exceeds 4 allowed). Consider refactoring.
                                                                  Open

                                                                      protected abstract void stpsv(char order, char Uplo, char TransA, char Diag, int N, INDArray Ap, INDArray X,
                                                                                      int incX);

                                                                    Method dspr has 7 arguments (exceeds 4 allowed). Consider refactoring.
                                                                    Open

                                                                        protected abstract void dspr(char order, char Uplo, int N, double alpha, INDArray X, int incX, INDArray Ap);

                                                                      Method spmv has 7 arguments (exceeds 4 allowed). Consider refactoring.
                                                                      Open

                                                                          public void spmv(char order, char Uplo, double alpha, INDArray Ap, INDArray X, double beta, INDArray Y) {

                                                                        Method symv has 7 arguments (exceeds 4 allowed). Consider refactoring.
                                                                        Open

                                                                            public void symv(char order, char Uplo, double alpha, INDArray A, INDArray X, double beta, INDArray Y) {

                                                                          Method gemv has 7 arguments (exceeds 4 allowed). Consider refactoring.
                                                                          Open

                                                                              public void gemv(char order, char transA, double alpha, INDArray A, INDArray X, double beta, INDArray Y) {

                                                                            Method sbmv has 7 arguments (exceeds 4 allowed). Consider refactoring.
                                                                            Open

                                                                                public void sbmv(char order, char Uplo, double alpha, INDArray A, INDArray X, double beta, INDArray Y) {

                                                                              Method sspr has 7 arguments (exceeds 4 allowed). Consider refactoring.
                                                                              Open

                                                                                  protected abstract void sspr(char order, char Uplo, int N, float alpha, INDArray X, int incX, INDArray Ap);

                                                                                Method tpsv has 6 arguments (exceeds 4 allowed). Consider refactoring.
                                                                                Open

                                                                                    public void tpsv(char order, char Uplo, char TransA, char Diag, INDArray Ap, INDArray X) {

                                                                                  Method spr2 has 6 arguments (exceeds 4 allowed). Consider refactoring.
                                                                                  Open

                                                                                      public void spr2(char order, char Uplo, double alpha, INDArray X, INDArray Y, INDArray A) {

                                                                                    Method tbmv has 6 arguments (exceeds 4 allowed). Consider refactoring.
                                                                                    Open

                                                                                        public void tbmv(char order, char Uplo, char TransA, char Diag, INDArray A, INDArray X) {

                                                                                      Method syr2 has 6 arguments (exceeds 4 allowed). Consider refactoring.
                                                                                      Open

                                                                                          public void syr2(char order, char Uplo, double alpha, INDArray X, INDArray Y, INDArray A) {

                                                                                        Method tpmv has 6 arguments (exceeds 4 allowed). Consider refactoring.
                                                                                        Open

                                                                                            public void tpmv(char order, char Uplo, char TransA, char Diag, INDArray Ap, INDArray X) {

                                                                                          Method trsv has 6 arguments (exceeds 4 allowed). Consider refactoring.
                                                                                          Open

                                                                                              public void trsv(char order, char Uplo, char TransA, char Diag, INDArray A, INDArray X) {

                                                                                            Method syr has 6 arguments (exceeds 4 allowed). Consider refactoring.
                                                                                            Open

                                                                                                public void syr(char order, char Uplo, int N, double alpha, INDArray X, INDArray A) {

                                                                                              Method tbsv has 6 arguments (exceeds 4 allowed). Consider refactoring.
                                                                                              Open

                                                                                                  public void tbsv(char order, char Uplo, char TransA, char Diag, INDArray A, INDArray X) {

                                                                                                Method trmv has 6 arguments (exceeds 4 allowed). Consider refactoring.
                                                                                                Open

                                                                                                    public void trmv(char order, char Uplo, char TransA, char Diag, INDArray A, INDArray X) {

                                                                                                  Method spr has 5 arguments (exceeds 4 allowed). Consider refactoring.
                                                                                                  Open

                                                                                                      public void spr(char order, char Uplo, double alpha, INDArray X, INDArray Ap) {

                                                                                                    Method ger has 5 arguments (exceeds 4 allowed). Consider refactoring.
                                                                                                    Open

                                                                                                        public void ger(char order, double alpha, INDArray X, INDArray Y, INDArray A) {

                                                                                                      Method gbmv has a Cognitive Complexity of 6 (exceeds 5 allowed). Consider refactoring.
                                                                                                      Open

                                                                                                          @Override
                                                                                                          public void gbmv(char order, char TransA, int KL, int KU, double alpha, INDArray A, INDArray X, double beta,
                                                                                                                          INDArray Y) {
                                                                                                              if (OpProfiler.getInstance().getConfig().isCheckElapsedTime())
                                                                                                                  OpProfiler.getInstance().processBlasCall(false, A, X, Y);

                                                                                                      Cognitive Complexity

                                                                                                      Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

                                                                                                      A method's cognitive complexity is based on a few simple rules:

                                                                                                      • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
                                                                                                      • Code is considered more complex for each "break in the linear flow of the code"
                                                                                                      • Code is considered more complex when "flow breaking structures are nested"

                                                                                                      Further reading

                                                                                                      Method ger has a Cognitive Complexity of 6 (exceeds 5 allowed). Consider refactoring.
                                                                                                      Open

                                                                                                          @Override
                                                                                                          public void ger(char order, double alpha, INDArray X, INDArray Y, INDArray A) {
                                                                                                              if (OpProfiler.getInstance().getConfig().isCheckElapsedTime())
                                                                                                                  OpProfiler.getInstance().processBlasCall(false, A, X, Y);
                                                                                                      
                                                                                                      

                                                                                                      Cognitive Complexity

                                                                                                      Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

                                                                                                      A method's cognitive complexity is based on a few simple rules:

                                                                                                      • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
                                                                                                      • Code is considered more complex for each "break in the linear flow of the code"
                                                                                                      • Code is considered more complex when "flow breaking structures are nested"

                                                                                                      Further reading

                                                                                                      Similar blocks of code found in 2 locations. Consider refactoring.
                                                                                                      Open

                                                                                                          @Override
                                                                                                          public void tbsv(char order, char Uplo, char TransA, char Diag, INDArray A, INDArray X) {
                                                                                                              if (OpProfiler.getInstance().getConfig().isCheckElapsedTime())
                                                                                                                  OpProfiler.getInstance().processBlasCall(false, A, X);
                                                                                                      
                                                                                                      
                                                                                                      nd4j/nd4j-backends/nd4j-api-parent/nd4j-api/src/main/java/org/nd4j/linalg/api/blas/impl/BaseLevel2.java on lines 384..400

                                                                                                      Duplicated Code

                                                                                                      Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                                                                                      Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                                                                                      When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                                                                                      Tuning

                                                                                                      This issue has a mass of 211.

                                                                                                      We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                                                                                      The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                                                                                      If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                                                                                      See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                                                                                      Refactorings

                                                                                                      Further Reading

                                                                                                      Similar blocks of code found in 2 locations. Consider refactoring.
                                                                                                      Open

                                                                                                          @Override
                                                                                                          public void tbmv(char order, char Uplo, char TransA, char Diag, INDArray A, INDArray X) {
                                                                                                              if (OpProfiler.getInstance().getConfig().isCheckElapsedTime())
                                                                                                                  OpProfiler.getInstance().processBlasCall(false, A, X);
                                                                                                      
                                                                                                      
                                                                                                      nd4j/nd4j-backends/nd4j-api-parent/nd4j-api/src/main/java/org/nd4j/linalg/api/blas/impl/BaseLevel2.java on lines 412..429

                                                                                                      Duplicated Code

                                                                                                      Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                                                                                      Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                                                                                      When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                                                                                      Tuning

                                                                                                      This issue has a mass of 211.

                                                                                                      We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                                                                                      The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                                                                                      If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                                                                                      See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                                                                                      Refactorings

                                                                                                      Further Reading

                                                                                                      Similar blocks of code found in 2 locations. Consider refactoring.
                                                                                                      Open

                                                                                                          @Override
                                                                                                          public void trsv(char order, char Uplo, char TransA, char Diag, INDArray A, INDArray X) {
                                                                                                              if (OpProfiler.getInstance().getConfig().isCheckElapsedTime())
                                                                                                                  OpProfiler.getInstance().processBlasCall(false, A, X);
                                                                                                      
                                                                                                      
                                                                                                      nd4j/nd4j-backends/nd4j-api-parent/nd4j-api/src/main/java/org/nd4j/linalg/api/blas/impl/BaseLevel2.java on lines 499..516

                                                                                                      Duplicated Code

                                                                                                      Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                                                                                      Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                                                                                      When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                                                                                      Tuning

                                                                                                      This issue has a mass of 193.

                                                                                                      We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                                                                                      The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                                                                                      If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                                                                                      See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                                                                                      Refactorings

                                                                                                      Further Reading

                                                                                                      Similar blocks of code found in 2 locations. Consider refactoring.
                                                                                                      Open

                                                                                                          @Override
                                                                                                          public void trmv(char order, char Uplo, char TransA, char Diag, INDArray A, INDArray X) {
                                                                                                              if (OpProfiler.getInstance().getConfig().isCheckElapsedTime())
                                                                                                                  OpProfiler.getInstance().processBlasCall(false, A, X);
                                                                                                      
                                                                                                      
                                                                                                      nd4j/nd4j-backends/nd4j-api-parent/nd4j-api/src/main/java/org/nd4j/linalg/api/blas/impl/BaseLevel2.java on lines 528..545

                                                                                                      Duplicated Code

                                                                                                      Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                                                                                      Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                                                                                      When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                                                                                      Tuning

                                                                                                      This issue has a mass of 193.

                                                                                                      We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                                                                                      The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                                                                                      If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                                                                                      See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                                                                                      Refactorings

                                                                                                      Further Reading

                                                                                                      Similar blocks of code found in 2 locations. Consider refactoring.
                                                                                                      Open

                                                                                                              } else {
                                                                                                                  DefaultOpExecutioner.validateDataType(DataType.FLOAT, Ap, X);
                                                                                                                  stpsv(order, Uplo, TransA, Diag, (int) X.length(), Ap, X, X.stride(-1));
                                                                                                              }
                                                                                                      nd4j/nd4j-backends/nd4j-api-parent/nd4j-api/src/main/java/org/nd4j/linalg/api/blas/impl/BaseLevel2.java on lines 478..481

                                                                                                      Duplicated Code

                                                                                                      Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                                                                                      Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                                                                                      When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                                                                                      Tuning

                                                                                                      This issue has a mass of 46.

                                                                                                      We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                                                                                      The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                                                                                      If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                                                                                      See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                                                                                      Refactorings

                                                                                                      Further Reading

                                                                                                      Similar blocks of code found in 2 locations. Consider refactoring.
                                                                                                      Open

                                                                                                              if (X.data().dataType() == DataType.DOUBLE) {
                                                                                                                  DefaultOpExecutioner.validateDataType(DataType.DOUBLE, X, Ap);
                                                                                                                  dtpsv(order, Uplo, TransA, Diag, (int) X.length(), Ap, X, X.stride(-1));
                                                                                                              } else {
                                                                                                      nd4j/nd4j-backends/nd4j-api-parent/nd4j-api/src/main/java/org/nd4j/linalg/api/blas/impl/BaseLevel2.java on lines 481..484

                                                                                                      Duplicated Code

                                                                                                      Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                                                                                      Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                                                                                      When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                                                                                      Tuning

                                                                                                      This issue has a mass of 46.

                                                                                                      We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                                                                                      The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                                                                                      If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                                                                                      See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                                                                                      Refactorings

                                                                                                      Further Reading

                                                                                                      Similar blocks of code found in 2 locations. Consider refactoring.
                                                                                                      Open

                                                                                                              if (X.data().dataType() == DataType.DOUBLE) {
                                                                                                                  DefaultOpExecutioner.validateDataType(DataType.DOUBLE, X);
                                                                                                                  dtpmv(order, Uplo, TransA, Diag, (int) Ap.length(), Ap, X, X.stride(-1));
                                                                                                              } else {
                                                                                                      nd4j/nd4j-backends/nd4j-api-parent/nd4j-api/src/main/java/org/nd4j/linalg/api/blas/impl/BaseLevel2.java on lines 452..455

                                                                                                      Duplicated Code

                                                                                                      Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                                                                                      Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                                                                                      When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                                                                                      Tuning

                                                                                                      This issue has a mass of 44.

                                                                                                      We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                                                                                      The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                                                                                      If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                                                                                      See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                                                                                      Refactorings

                                                                                                      Further Reading

                                                                                                      Similar blocks of code found in 2 locations. Consider refactoring.
                                                                                                      Open

                                                                                                              } else {
                                                                                                                  DefaultOpExecutioner.validateDataType(DataType.FLOAT, X);
                                                                                                                  stpmv(order, Uplo, TransA, Diag, (int) Ap.length(), Ap, X, X.stride(-1));
                                                                                                              }
                                                                                                      nd4j/nd4j-backends/nd4j-api-parent/nd4j-api/src/main/java/org/nd4j/linalg/api/blas/impl/BaseLevel2.java on lines 449..452

                                                                                                      Duplicated Code

                                                                                                      Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                                                                                      Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                                                                                      When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                                                                                      Tuning

                                                                                                      This issue has a mass of 44.

                                                                                                      We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                                                                                      The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                                                                                      If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                                                                                      See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                                                                                      Refactorings

                                                                                                      Further Reading

                                                                                                      Identical blocks of code found in 2 locations. Consider refactoring.
                                                                                                      Open

                                                                                                                  if (A.rows() > Integer.MAX_VALUE || A.columns() > Integer.MAX_VALUE || A.size(0) > Integer.MAX_VALUE)
                                                                                                                      throw new ND4JArraySizeException();
                                                                                                      nd4j/nd4j-backends/nd4j-api-parent/nd4j-api/src/main/java/org/nd4j/linalg/api/blas/impl/BaseLevel2.java on lines 120..121

                                                                                                      Duplicated Code

                                                                                                      Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                                                                                      Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                                                                                      When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                                                                                      Tuning

                                                                                                      This issue has a mass of 42.

                                                                                                      We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                                                                                      The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                                                                                      If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                                                                                      See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                                                                                      Refactorings

                                                                                                      Further Reading

                                                                                                      Identical blocks of code found in 2 locations. Consider refactoring.
                                                                                                      Open

                                                                                                                  if (A.rows() > Integer.MAX_VALUE || A.columns() > Integer.MAX_VALUE || A.size(0) > Integer.MAX_VALUE)
                                                                                                                      throw new ND4JArraySizeException();
                                                                                                      nd4j/nd4j-backends/nd4j-api-parent/nd4j-api/src/main/java/org/nd4j/linalg/api/blas/impl/BaseLevel2.java on lines 149..150

                                                                                                      Duplicated Code

                                                                                                      Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                                                                                      Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                                                                                      When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                                                                                      Tuning

                                                                                                      This issue has a mass of 42.

                                                                                                      We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                                                                                      The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                                                                                      If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                                                                                      See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                                                                                      Refactorings

                                                                                                      Further Reading

                                                                                                      There are no issues that match your filters.

                                                                                                      Category
                                                                                                      Status