Skip to content

Commit 207603f

Browse files
committed
feat: cache locality imporved
--- type: pre_commit_static_analysis_report description: Results of running static analysis checks when committing changes. report: - task: lint_filenames status: passed - task: lint_editorconfig status: passed - task: lint_markdown status: na - task: lint_package_json status: na - task: lint_repl_help status: na - task: lint_javascript_src status: passed - task: lint_javascript_cli status: na - task: lint_javascript_examples status: na - task: lint_javascript_tests status: na - task: lint_javascript_benchmarks status: na - task: lint_python status: na - task: lint_r status: na - task: lint_c_src status: na - task: lint_c_examples status: na - task: lint_c_benchmarks status: na - task: lint_c_tests_fixtures status: na - task: lint_shell status: na - task: lint_typescript_declarations status: passed - task: lint_typescript_tests status: na - task: lint_license_headers status: passed ---
1 parent eaf4a76 commit 207603f

1 file changed

Lines changed: 7 additions & 6 deletions

File tree

  • lib/node_modules/@stdlib/blas/base/chbmv/lib

lib/node_modules/@stdlib/blas/base/chbmv/lib/base.js

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -169,9 +169,10 @@ function chbmv( uplo, N, K, alpha, A, strideA1, strideA2, offsetA, x, strideX, o
169169
iy = oy + ( i1 * sy );
170170
viewY[ iy ] += f32( retmp1 * rea );
171171
viewY[ iy + 1 ] += f32( imtmp1 * rea );
172+
m = -i1;
173+
oa2 = oa + ( i1 * sa1 ) + ( m * sa0 );
172174
for ( i0 = i1 + 1; i0 < min( N, i1 + K + 1 ); i0++ ) {
173-
m = i0 - i1;
174-
ia = oa2 + ( m * sa0 );
175+
ia = oa2 + ( i0 * sa0 );
175176
rea = viewA[ ia ];
176177
ima = viewA[ ia + 1 ];
177178
cima = sign * ima;
@@ -198,10 +199,10 @@ function chbmv( uplo, N, K, alpha, A, strideA1, strideA2, offsetA, x, strideX, o
198199
imtmp1 = f32( ( realpha * imx ) + ( imalpha * rex ) );
199200
retmp2 = 0.0;
200201
imtmp2 = 0.0;
201-
oa2 = oa + ( i1 * sa1 );
202+
m = K - i1;
203+
oa2 = oa + ( i1 * sa1 ) + ( m * sa0 );
202204
for ( i0 = max( 0, i1 - K ); i0 < i1; i0++ ) {
203-
m = i0 - i1;
204-
ia = oa2 + ( ( K + m ) * sa0 );
205+
ia = oa2 + ( i0 * sa0 );
205206
rea = viewA[ ia ];
206207
ima = viewA[ ia + 1 ];
207208
cima = sign * ima;
@@ -213,7 +214,7 @@ function chbmv( uplo, N, K, alpha, A, strideA1, strideA2, offsetA, x, strideX, o
213214
retmp2 += f32( ( rea * rex ) + ( cima * imx ) );
214215
imtmp2 += f32( ( rea * imx ) - ( cima * rex ) );
215216
}
216-
ia = oa2 + ( K * sa0 );
217+
ia = oa2 + ( i1 * sa0 );
217218
rea = viewA[ ia ];
218219
iy = oy + ( i1 * sy );
219220
viewY[ iy ] += f32( retmp1 * rea );

0 commit comments

Comments
 (0)