Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: add lapack/base/dpotf2 #2771

Open
wants to merge 7 commits into
base: develop
Choose a base branch
from

Conversation

Pranavchiku
Copy link
Member

@Pranavchiku Pranavchiku commented Aug 10, 2024

Towards #2464.

Description

What is the purpose of this pull request?

This pull request adds JS implementation of lapack/base/dpotf2

Related Issues

Does this pull request have any related issues?

NA

Questions

Any questions for reviewers of this pull request?

No.

Other

Any other information relevant to this pull request? This may include screenshots, references, and/or implementation notes.

No.

Checklist

Please ensure the following tasks are completed before submitting this pull request.

  • Read, understood, and followed the contributing guidelines.
  • check for possible optimisations in base implementation

@stdlib-js/reviewers

@Pranavchiku Pranavchiku added Feature Issue or pull request for adding a new feature. Base Issue or pull requests related to "low-level" functionality oriented toward library consumers. JavaScript Issue involves or relates to JavaScript. LAPACK Issue or pull request related to the Linear Algebra Package (LAPACK). labels Aug 10, 2024
Signed-off-by: Pranav <85227306+Pranavchiku@users.noreply.github.com>
@Pranavchiku Pranavchiku marked this pull request as ready for review August 10, 2024 08:28
var sa1;
var j;

upper = ( uplo === 'upper' );
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't believe this temporary variable is necessary. Just inline at L75.

if ( upper ) {
for ( j = 0; j < N; j++ ) {
// Compute U( j, j ) and test for non-positive-definiteness...
ajj = A[ offsetA + ( j * sa1 ) + ( j * sa0 ) ] - ddot( j, A, sa1, offsetA + ( j * sa0 ), A, sa1, offsetA + ( j * sa0 ) );
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You have a lot of repeated computation of index offsets. Refactor to reduce flops.

}
});

tape( 'the function supports accessing elements from non-contiguous rows and columns ( row-major )', function test( t ) {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You need more systematic tests. And also, you only include row-major tests here. What about column-major behavior?

@kgryte kgryte added the Needs Changes Pull request which needs changes before being merged. label Sep 17, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Base Issue or pull requests related to "low-level" functionality oriented toward library consumers. Feature Issue or pull request for adding a new feature. JavaScript Issue involves or relates to JavaScript. LAPACK Issue or pull request related to the Linear Algebra Package (LAPACK). Needs Changes Pull request which needs changes before being merged.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants