Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

FYI/Clarification for `*_like(arr)` functions using `arr.device`

オープン
#1,013 コメント 3 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
5/5
見積もり時間
1週間以上
初心者へのやさしさ
35/100
issue の種類
機能追加
明瞭さ
説明が足りない
活発さ
活発
技術スタック
python
領域
api

調査の方向性

まず、*_like(arr) の device 処理に関する Array API の要件と、issue で報告されている CuPy、JAX、torch の挙動を確認します。完了条件は、標準に明確化または挙動の変更が必要かどうかをメンテナーが判断し、互換性への予想される影響が文書化されていることです。

索引モデルが issue の本文から書いたものです。

説明

This may be more of a CuPy question about how comfortable CuPy is with changing behavior and pushing through the change in v15. But it does come from the Array API so just bringing it up here once for awareness.

The standard states that empty_like(arr) should allocate as if empty_like(arr, device=arr.device) was passed. And that is actually what JAX and torch do:

import cupy as cp

arr = cp.arange(1000)  # arr.device == Device(0)
with cp.cuda.Device(1)
    print(cp.empty_like(arr).device)  # Device(1) for cupy, 0 for JAX/torch

CuPy does currently not do this (I half suspect this was missed at the time), CuPy completely relies on context managers right now (to the point that even a NumPy array works there).

CC @leofang

主要言語
Python
スター
281
フォーク
52
PR マージ指標
30日以内にマージされた PR はありません

環境構築

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

data-apis/array-api のほかの issue

data-apis/array-api の issue をすべて見る

似ている issue

Python の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。