question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Performance of ChainerX Linear Algebra routines

See original GitHub issue

Some chainerx.linalg routines (tracked at #6764) run more slowly compared to numpy.linalg and cupy.linalg. Performance results & code to obtain them is available in this gist.

The reason for slowness of qr, solve, inv is allocating temporary arrays in the kernel and copying data from them to routine level arrays. Also repeated transpose-copy operations (because of ChainerX’s row-major vs column-major ordering of LAPACK/cuSOLVER) have an effect. Routines that don’t require such manipulations run almost one to one with NumPy/CuPy.

Issue Analytics

  • State:closed
  • Created 4 years ago
  • Comments:5 (2 by maintainers)

github_iconTop GitHub Comments

1reaction
hvycommented, Aug 13, 2019

This is a linalg kernel design matter by the way. For the record, @IvanYashchuk and I have discussed this matter outside GitHub and decided to wait with addressing this issue until all ongoing linalg PRs have been merged. The reasons is that some routines are already merged, and they basically all share the same routine-kernel delegation

0reactions
stale[bot]commented, Apr 14, 2020

This issue is closed as announced. Feel free to re-open it if needed.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Add Linear Algebra routines in ChainerX · Issue #6764 - GitHub
I'd like to work on adding linear algebra routines to ChainerX during GSoC. Most of the numpy.linalg functions listed in ChainerX routines ......
Read more >
Ivan Yashchuk - Ivan Yashchuk
This summer I am going to work on extending ChainerX with some Linear Algebra routines. The goal is to implement common routines that...
Read more >
Released Chainer v7.0.0b4 - Google Groups
Many updates to ChainerX including new routines and support for loss scaling. New Features. Support all float dtypes in F.n_step_rnn and F.
Read more >
chainerx.huber_loss — Chainer 7.8.1 documentation
Element-wise Huber loss. The Huber loss is similar to the squared error but is less sensitive to outliers in the data. It is...
Read more >
chainerx.hstack — Chainer 7.8.1 documentation
chainerx.hstack(arrays)¶. Stack arrays in sequence horizontally (column wise). Parameters. arrays (sequence of ndarray s) – Arrays to be stacked. Returns.
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found