pytorch/caffe2/python/operator_test
Janusz Kudelka 34269a6fda caffe2: datasets pack/unpack
Summary:
Two new operators to pack and unpack a dataset. This is so that we can
re-use other operators that do not understand the schema format. The immediate
use-case is to use it with a partition operator.

Packing works by splitting the input into separate tensors, putting them in a
vector and wrapping in a shared_ptr (as opposed to a unique_ptr, so we can
copy).

Unpack takes the packed input and concatenates it back to the original.

I also had a gard time understanding the iteration, so I created a TreeWalker
that just hides the complexity of operating with all the arrays and makes the
short functions for a given purpose that at least for me are easier to
understand.

Reviewed By: dzhulgakov

Differential Revision: D4870606

fbshipit-source-id: dc29428de5c96cc3039af2885d9e4b026d9f482d
2017-04-18 13:31:10 -07:00
..
activation_ops_test.py Caffe2: CUDA implementation for LeakyReluOp 2017-03-28 08:48:25 -07:00
adagrad_test.py Add tests and GPU impls for sparse optimizers 2017-04-13 11:07:40 -07:00
adam_test.py Add tests and GPU impls for sparse optimizers 2017-04-13 11:07:40 -07:00
atomic_ops_test.py
checkpoint_test.py
conv_test.py Conv-ND NCHW CUP/CUDA implementation 2017-03-20 14:01:07 -07:00
conv_transpose_test.py
copy_ops_test.py make CopyGPUToCPU/CPUToGPU handle sparse gradients 2017-04-13 17:16:26 -07:00
cosine_embedding_criterion_op_test.py
counter_ops_test.py AtomicCounter to return previous value on Reset. 2017-02-02 14:59:30 -08:00
crf_test.py CRF layer in caffe2 2017-03-23 22:02:02 -07:00
cross_entropy_ops_test.py CUDA version of SigmoidCrossEntropyWithLogits 2017-04-14 16:07:33 -07:00
dataset_ops_test.py caffe2: datasets pack/unpack 2017-04-18 13:31:10 -07:00
duplicate_operands_test.py
elementwise_linear_op_test.py ElementwiseLinearOp 2017-04-17 14:18:27 -07:00
elementwise_op_broadcast_test.py new SumReduceLike op CPU/GPU implementation and doc 2017-04-13 10:28:46 -07:00
elementwise_ops_test.py Sqr op and gradient 2017-03-07 03:03:07 -08:00
emptysample_ops_test.py
extend_tensor_op_test.py
fc_operator_test.py Test for FC operator + fix for docs 2017-01-27 10:44:24 -08:00
filler_ops_test.py add exception for empty shape param 2017-03-10 00:33:59 -08:00
gather_ops_test.py Add GatherOp for GPU, and update its tests. 2017-03-31 13:20:09 -07:00
gather_ranges_op_test.py
given_tensor_fill_op_test.py Fixes for ops without a CUDA backend 2017-03-29 14:36:09 -07:00
group_conv_test.py
hsm_test.py
index_ops_test.py Change the schema of IndexLoad & IndexFreeze so that state change is captured by the framework 2017-02-14 10:05:12 -08:00
instance_norm_test.py instance norm test fix 2017-02-25 14:31:42 -08:00
lengths_tile_op_test.py Renaming DuplicateOp to LengthsTileOp 2017-04-12 22:04:20 -07:00
loss_ops_test.py Caffe2: consolidate AveragedLoss with SumElementsOp 2017-04-06 10:35:01 -07:00
margin_ranking_criterion_op_test.py
matmul_op_test.py BatchMatMulOp: use cuBLAS batched strided gemm for CUDA 2017-03-28 11:54:09 -07:00
mkl_conv_op_test.py
mkl_packed_fc_op_test.py
mkl_speed_test.py
momentum_sgd_test.py Add tests and GPU impls for sparse optimizers 2017-04-13 11:07:40 -07:00
mpi_test.py
one_hot_ops_test.py feature processing ops 2017-04-11 07:07:51 -07:00
pack_ops_test.py Registering GPU version of PackSegments using GPUFallbackOp 2017-03-24 16:01:53 -07:00
pad_test.py Support cropping with negative pad sizes in PadImage 2017-04-03 23:47:54 -07:00
partition_ops_test.py
piecewise_linear_transform_test.py PiecewiseLinearTransformOp supports passing params from input blobs. 2017-04-08 11:02:35 -07:00
pooling_test.py Generalize PoolingOp(CUDA) to compute 1D, 2D and 3D pooling. 2017-04-12 09:16:45 -07:00
pow_op_test.py CUDA version of elementwise power + rename to Pow + gradient 2017-03-07 10:20:40 -08:00
python_op_test.py
rank_loss_operator_test.py
record_queue_test.py
recurrent_network_test.py RNNCell, LSTMCell, LSTMWithAttentionCell 2017-04-18 00:47:20 -07:00
reduce_ops_test.py ReduceBack{Sum|Mean}Op CPU & GPU implementation 2017-03-13 16:19:58 -07:00
reduction_ops_test.py SumSqrElements 2017-04-10 16:16:52 -07:00
relu_op_test.py Change back the function signature of relu gradient to only use 2017-04-13 22:08:09 -07:00
reshape_ops_test.py Allow test discovery in caffe2/python/ 2017-03-14 18:16:41 -07:00
resize_op_test.py Add ResizeNearest operator 2017-03-16 18:49:01 -07:00
rnn_cell_test.py RNNCell, LSTMCell, LSTMWithAttentionCell 2017-04-18 00:47:20 -07:00
segment_ops_test.py Allow test discovery in caffe2/python/ 2017-03-14 18:16:41 -07:00
sequence_ops_test.py add gpu support for caffe2-seq2seq 2017-03-17 05:19:14 -07:00
shape_inference_test.py create_net: explicitly specify if one wants to overwrite the network. 2017-04-17 21:46:53 -07:00
softmax_ops_test.py memory-saving only_loss argument for SoftmaxWithLoss 2017-04-06 13:04:31 -07:00
sparse_gradient_checker_test.py Fixes for ops without a CUDA backend 2017-03-29 14:36:09 -07:00
sparse_ops_test.py
spatial_bn_op_test.py
square_root_divide_op_test.py
stats_ops_test.py Performance counters 2017-02-21 16:31:24 -08:00
string_ops_test.py
text_file_reader_test.py
tile_op_test.py Added tiles and axis as input parameters to Tile Operator 2017-04-17 15:31:20 -07:00
top_k_test.py Implement TopK op in caffe2 2017-03-16 17:32:20 -07:00
unique_uniform_fill_op_test.py UniqueUniformFillOp 2017-02-15 16:00:44 -08:00
utility_ops_test.py Renaming DuplicateOp to LengthsTileOp 2017-04-12 22:04:20 -07:00