systemml-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Nakul Jindal (JIRA)" <>
Subject [jira] [Commented] (SYSTEMML-1216) implement local svd function
Date Sat, 26 Aug 2017 19:16:02 GMT


Nakul Jindal commented on SYSTEMML-1216:

Good work with the local svd implementation.
Please also consider opening a PR for documenting the {{svd}} function at
To do so, please update

Here are some resource to get you started:
SVD documentation from cusolver:

Example of adding the solve function for GPU:
(Some stuff has been updated since that PR in the GPU infrastructure).

The basic steps to adding a GPU implementation are as follows:
1. Enable GPU implementation from the HOPS level
Pick the appropriate class for your function ({{svd}}) and enable it from the {{isGPUEnabled}}

2. Adjust the appropriate cost if applicable in CostEstimator.

3. Change GPUInstructionParser to have svd

4. Make a new class class or use one of the existing classes in the {{src/main/java/org/apache/sysml/runtime/instructions/gpu}}
package which most appropriately fits {{svd}}

5. Add a GPU implementation for {{svd}} in {{src/main/java/org/apache/sysml/runtime/matrix/data/}}

6. Add tests in the {{src/test/java/org/apache/sysml/test/gpu}} package. Either by adding
a new class or adding the test to an existing class.

7. Thoroughly document any and all functions you add. 

> implement local svd function
> ----------------------------
>                 Key: SYSTEMML-1216
>                 URL:
>             Project: SystemML
>          Issue Type: New Feature
>            Reporter: Imran Younus
>            Assignee: Janardhan
>         Attachments: svd.txt
> SystemML currently provides several local matrix decompositions (qr(), lu(), cholesky()).
But local version of svd is missing. This is also needed to scalable SVD implementation.
> Also, implement local {{svd()}} function with {{cusolver}}.

This message was sent by Atlassian JIRA

View raw message