Progress of CUDA kernelize (Feature point of View)
Store
https://github.com/ruby-numo/narray/wiki/Numo::NArray%E6%A6%82%E8%A6%81#%E8%A6%81%E7%B4%A0%E3%81%AE%E6%A0%BC%E7%B4%8D
- [x] store(another_array)
- [x] fill(item)
- [x] seq([begin, step]), indgen
- [x] logseq(begin, step [,base])
- [x] eye([element, offset])
- [ ] rand([[low,] high])
Data Creation
https://github.com/ruby-numo/narray/wiki/Numo::NArray%E6%A6%82%E8%A6%81#%E3%83%87%E3%83%BC%E3%82%BF%E7%94%9F%E6%88%90
- [x] Cumo::DFloat[1,2,3,5,7,11]
- [x] Cumo::DFloat[1..100]
- [x] Cumo::DFloat.cast(Cumo::Int32[1,2,3,5,7,11])
- [x] Cumo::DFloat.zeros(120)
- [x] Cumo::DFloat.ones(2,4,6)
- [ ] Cumo::DFloat.linspace(-5,5,7)
- [ ] Cumo::DFloat.logspace(4,0,5,2)
Indexing
https://github.com/ruby-numo/narray/wiki/Numo::NArray%E6%A6%82%E8%A6%81#%E9%85%8D%E5%88%97%E3%81%AE%E3%82%A4%E3%83%B3%E3%83%87%E3%83%83%E3%82%AF%E3%82%B9
- [x] a[1,2,3] (synchronizes, though)
- [x] a[39] (synchronizes, though)
View
https://github.com/ruby-numo/narray/wiki/Numo::NArray%E6%A6%82%E8%A6%81#%E9%85%8D%E5%88%97%E3%81%AE%E3%83%93%E3%83%A5%E3%83%BC
Reshape
https://github.com/ruby-numo/narray/wiki/Numo::NArray%E6%A6%82%E8%A6%81#%E9%85%8D%E5%88%97%E6%93%8D%E4%BD%9C
- [ ] flatten([dim0,dim1,...])
- [x] transpose([dim0,dim1,...])
- [ ] expand_dims(dim)
- [x] diagonal(offset, [ax1,ax2])
- [x] reshape
Operations
https://github.com/ruby-numo/narray/wiki/Numo::NArray%E6%A6%82%E8%A6%81#%E9%85%8D%E5%88%97%E6%BC%94%E7%AE%97
- [x] + (binary)
- [x] - (binary)
- [x] * (binary)
- [x] / (binary)
- [x] % (binary)
- [ ] divmod (binary2)
- [x] ** (pow)
- [x] -@ (unary_s)
- [ ] abs (unary2)
All of upcast, broadcast, coerce, inplace operations are supported by numo #framework.
Condition and Bit
https://github.com/ruby-numo/narray/wiki/Numo::NArray%E6%A6%82%E8%A6%81#%E6%9D%A1%E4%BB%B6%E5%BC%8F%E3%81%A8bit%E5%9E%8B
narray
- [x] eq (binary)
- [x] ne (binary)
- [x] gt (>) (cond_binary)
- [x] ge (>=) (cond_binary)
- [x] lt (<) (cond_binary)
- [x] le (<=) (cond_binary)
- [ ] neary_eq (cond_unary)
- [ ] isnan (cond_unary)
- [ ] isinf (cond_unary)
- [ ] isfinite (cond_unary)
Bit
- [ ] and (&)
- [ ] or (|)
- [ ] xor (^)
- [ ] not (~)
- [ ] count_true
- [ ] count_false
- [ ] all?
- [ ] any?
- [ ] none?
- [ ] where
Statistics
https://github.com/ruby-numo/narray/wiki/Numo::NArray%E6%A6%82%E8%A6%81#%E7%B5%B1%E8%A8%88%E3%83%A1%E3%82%BD%E3%83%83%E3%83%89
- [x] sum
- [x] prod
- [x] mean
- [x] stddev
- [x] var
- [x] rms
- [x] min
- [x] min_index
- [x] max
- [x] max_index
- [ ] minmax
- [ ] cumsum
- [ ] cumprod
- [ ] sort
- [ ] sort_index
- [ ] median
Math
https://github.com/ruby-numo/narray/wiki/Numo::NArray%E6%A6%82%E8%A6%81#nmath
unary functions
- [x] reciprocal
- [x] sign
- [x] square
- [x] floor (float)
- [x] round (float)
- [x] ceil (float)
- [x] trunc (float)
- [x] rint (float)
- [x] conj (complex)
- [x] im (complex)
- [x] sqrt
- [x] pow
- [x] exp
- [x] log
- [x] 三角関数
For red-chainer mnist:
- [ ] Warning: Method "rand" for dtype "dfloat" is running under CPU.
- [x] Warning: Method "dfloat" for dtype "DFloat" is running under CPU.
- [x] Warning: Method "array" for dtype "int32" is running under CPU.
- [x] Warning: Method "uint8" for dtype "UInt8" is running under CPU.
- [x] Warning: Method "uint8" for dtype "UInt8" is running under CPU.
- [x] Warning: Method "array" for dtype "int64" is running under CPU.
- [x] Warning: Method "array" for dtype "dfloat" is running under CPU.
- [ ] Warning: Method "rand_norm" for dtype "dfloat" is running under CPU.
- [x] Warning: Method "le" for dtype "dfloat" is running under CPU.
- [x] Warning: Method "int64" for dtype "Int64" is running under CPU.
- [x] Warning: Method "int32" for dtype "Int32" is running under CPU.
- [x] Warning: Method "lt" for dtype "int32" is running under CPU.
- [x] Warning: Method "seq" for dtype "int32" is running under CPU.
- [x] Warning: Method "int32" for dtype "Int32" is running under CPU.
- [x] Warning: Method "eq" for dtype "dfloat" is running under CPU.
- [x] Warning: Method "ne" for dtype "int32" is running under CPU.
- [x] Warning: Method "max_index" for dtype "dfloat" is running under CPU.
- [x] Warning: Method "int32" for dtype "Int32" is running under CPU.
- [ ] Warning: Method "bit" for dtype "Bit" is running under CPU.
- [x] Warning: Method "gt" for dtype "dfloat" is running under CPU.