Skip to content

Conversation

@kshitij12345
Copy link
Collaborator

Fixes #51242

@facebook-github-bot
Copy link
Contributor

facebook-github-bot commented Feb 12, 2021

💊 CI failures summary and remediations

As of commit 0f1846f (more details on the Dr. CI page):


  • 1/1 failures possibly* introduced in this PR
    • 1/1 non-scanned failure(s)

This comment was automatically generated by Dr. CI (expand for details).Follow this link to opt-out of these comments for your Pull Requests.

Please report bugs/suggestions to the (internal) Dr. CI Users group.

@kshitij12345 kshitij12345 marked this pull request as ready for review March 15, 2021 04:44
@kshitij12345 kshitij12345 requested a review from mruberry March 15, 2021 04:44
@mruberry
Copy link
Collaborator

This looks reasonable to me. This was a tricky design, and this seems like a minimally invasive and clever way to enable clamp to run the unary ufunc tests. There is one real test failure that needs investigation, however.

@kshitij12345
Copy link
Collaborator Author

pytest test/test_unary_ufuncs.py -k _clamp
======================================================================= test session starts ========================================================================
platform linux -- Python 3.8.6, pytest-6.1.2, py-1.9.0, pluggy-0.13.1
rootdir: /home/kshiteej/Pytorch/pytorch_test_op_info_kwarg, configfile: pytest.ini
plugins: hypothesis-5.38.1
collected 5590 items / 5480 deselected / 110 selected                                                                                                              

test/test_unary_ufuncs.py .................................................sssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss                     [100%]

===================================================================== short test summary info ======================================================================

Test passes locally (with gcc 9.3).

Will try to reproduce it locally (failed CI looks to use gcc5.4).
Otherwise will skip this particular test to unblock the PR. Let me know if that sounds good.

Thanks!

@mruberry
Copy link
Collaborator

Skipping it on the earlier gcc sounds OK. We have some mechanisms for getting the gcc version in Python, although I'm not sure what the best one is:

https://github.com/pytorch/pytorch/blob/42635c3e597ed1c8d436d97220efb61047641baa/torch/utils/collect_env.py

https://github.com/pytorch/pytorch/blob/547f43576399eb4237eb005ffb91039f29bdab58/.circleci/cimodel/data/pytorch_build_definitions.py

There may even be another mechanism I'm not familiar with.

@kshitij12345
Copy link
Collaborator Author

I tried building with Ubuntu Xenial VM (wih gcc 5.4 and python 3.6) but unable to reproduce the error (logs below). Is it okay to just skip the extremal test for bfloat16 directly.

VM Log

Build Info using python -c 'import torch; print(torch.__config__.show())'

PyTorch built with:
  - GCC 5.4
  - C++ Version: 201402
  - OpenMP 201307 (a.k.a. OpenMP 4.0)
  - CPU capability usage: AVX
  - Build settings: BUILD_TYPE=Release, CXX_COMPILER=/usr/bin/c++, CXX_FLAGS= -Wno-deprecated -fvisibility-inlines-hidden -DUSE_PTHREADPOOL -fopenmp -DNDEBUG -DUSE_PYTORCH_QNNPACK -O2 -fPIC -Wno-narrowing -Wall -Wextra -Werror=return-type -Wno-missing-field-initializers -Wno-type-limits -Wno-array-bounds -Wno-unknown-pragmas -Wno-sign-compare -Wno-unused-parameter -Wno-unused-variable -Wno-unused-function -Wno-unused-result -Wno-unused-local-typedefs -Wno-strict-overflow -Wno-strict-aliasing -Wno-error=deprecated-declarations -Wno-psabi -Wno-error=pedantic -Wno-error=redundant-decls -Wno-error=old-style-cast -fdiagnostics-color=always -Wno-unused-but-set-variable -Wno-maybe-uninitialized -fno-math-errno -fno-trapping-math -Werror=format, PERF_WITH_AVX=1, PERF_WITH_AVX2=1, PERF_WITH_AVX512=1, TORCH_VERSION=1.9.0, USE_CUDA=OFF, USE_CUDNN=OFF, USE_EIGEN_FOR_BLAS=ON, USE_EXCEPTION_PTR=1, USE_GFLAGS=OFF, USE_GLOG=OFF, USE_MKL=OFF, USE_MKLDNN=OFF, USE_MPI=OFF, USE_NCCL=OFF, USE_NNPACK=0, USE_OPENMP=ON, 

Test Log

user@user-VirtualBox:~/Desktop/pytorch/pytorch$ pytest test/test_unary_ufuncs.py -k _clamp -v
============================= test session starts ==============================
platform linux -- Python 3.6.13, pytest-6.2.2, py-1.10.0, pluggy-0.13.1 -- /usr/bin/python3.6
cachedir: .pytest_cache
rootdir: /home/user/Desktop/pytorch/pytorch, configfile: pytest.ini
collected 4929 items / 4819 deselected / 110 selected                          

test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_batch_vs_slicing_clamp_cpu_bfloat16 PASSED [  0%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_batch_vs_slicing_clamp_cpu_float32 PASSED [  1%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_batch_vs_slicing_clamp_cpu_int64 PASSED [  2%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_batch_vs_slicing_clamp_cpu_uint8 PASSED [  3%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_contig_size1_clamp_cpu_bfloat16 PASSED [  4%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_contig_size1_clamp_cpu_float32 PASSED [  5%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_contig_size1_clamp_cpu_int64 PASSED [  6%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_contig_size1_clamp_cpu_uint8 PASSED [  7%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_contig_size1_large_dim_clamp_cpu_bfloat16 PASSED [  8%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_contig_size1_large_dim_clamp_cpu_float32 PASSED [  9%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_contig_size1_large_dim_clamp_cpu_int64 PASSED [ 10%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_contig_size1_large_dim_clamp_cpu_uint8 PASSED [ 10%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_contig_vs_every_other_clamp_cpu_bfloat16 PASSED [ 11%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_contig_vs_every_other_clamp_cpu_float32 PASSED [ 12%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_contig_vs_every_other_clamp_cpu_int64 PASSED [ 13%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_contig_vs_every_other_clamp_cpu_uint8 PASSED [ 14%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_contig_vs_transposed_clamp_cpu_bfloat16 PASSED [ 15%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_contig_vs_transposed_clamp_cpu_float32 PASSED [ 16%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_contig_vs_transposed_clamp_cpu_int64 PASSED [ 17%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_contig_vs_transposed_clamp_cpu_uint8 PASSED [ 18%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_non_contig_clamp_cpu_bfloat16 PASSED [ 19%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_non_contig_clamp_cpu_float32 PASSED [ 20%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_non_contig_clamp_cpu_int64 PASSED [ 20%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_non_contig_clamp_cpu_uint8 PASSED [ 21%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_non_contig_expand_clamp_cpu_bfloat16 PASSED [ 22%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_non_contig_expand_clamp_cpu_float32 PASSED [ 23%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_non_contig_expand_clamp_cpu_int64 PASSED [ 24%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_non_contig_expand_clamp_cpu_uint8 PASSED [ 25%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_non_contig_index_clamp_cpu_bfloat16 PASSED [ 26%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_non_contig_index_clamp_cpu_float32 PASSED [ 27%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_non_contig_index_clamp_cpu_int64 PASSED [ 28%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_non_contig_index_clamp_cpu_uint8 PASSED [ 29%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_out_arg_all_dtypes_clamp_cpu_bfloat16 PASSED [ 30%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_out_arg_all_dtypes_clamp_cpu_float32 PASSED [ 30%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_out_arg_all_dtypes_clamp_cpu_float64 PASSED [ 31%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_out_arg_all_dtypes_clamp_cpu_int16 PASSED [ 32%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_out_arg_all_dtypes_clamp_cpu_int32 PASSED [ 33%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_out_arg_all_dtypes_clamp_cpu_int64 PASSED [ 34%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_out_arg_all_dtypes_clamp_cpu_int8 PASSED [ 35%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_out_arg_all_dtypes_clamp_cpu_uint8 PASSED [ 36%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_reference_numerics_extremal_clamp_cpu_bfloat16 PASSED [ 37%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_reference_numerics_extremal_clamp_cpu_float32 PASSED            [ 38%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_reference_numerics_hard_clamp_cpu_bfloat16 PASSED               [ 39%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_reference_numerics_hard_clamp_cpu_float32 PASSED                [ 40%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_reference_numerics_hard_clamp_cpu_int64 PASSED                  [ 40%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_reference_numerics_normal_clamp_cpu_bfloat16 PASSED             [ 41%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_reference_numerics_normal_clamp_cpu_float32 PASSED              [ 42%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_reference_numerics_normal_clamp_cpu_int64 PASSED                [ 43%]
test/test_unary_ufuncs.py::TestUnaryUfuncsCPU::test_reference_numerics_normal_clamp_cpu_uint8 PASSED                [ 44%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_batch_vs_slicing_clamp_meta_bfloat16 SKIPPED (not implemen...) [ 45%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_batch_vs_slicing_clamp_meta_float16 SKIPPED (not implement...) [ 46%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_batch_vs_slicing_clamp_meta_float32 SKIPPED (not implement...) [ 47%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_batch_vs_slicing_clamp_meta_int64 SKIPPED (not implemented...) [ 48%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_batch_vs_slicing_clamp_meta_uint8 SKIPPED (not implemented...) [ 49%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_contig_size1_clamp_meta_bfloat16 SKIPPED (not implemented:...) [ 50%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_contig_size1_clamp_meta_float16 SKIPPED (not implemented: ...) [ 50%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_contig_size1_clamp_meta_float32 SKIPPED (not implemented: ...) [ 51%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_contig_size1_clamp_meta_int64 SKIPPED (not implemented: Co...) [ 52%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_contig_size1_clamp_meta_uint8 SKIPPED (not implemented: Co...) [ 53%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_contig_size1_large_dim_clamp_meta_bfloat16 SKIPPED (not im...) [ 54%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_contig_size1_large_dim_clamp_meta_float16 SKIPPED (not imp...) [ 55%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_contig_size1_large_dim_clamp_meta_float32 SKIPPED (not imp...) [ 56%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_contig_size1_large_dim_clamp_meta_int64 SKIPPED (not imple...) [ 57%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_contig_size1_large_dim_clamp_meta_uint8 SKIPPED (not imple...) [ 58%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_contig_vs_every_other_clamp_meta_bfloat16 SKIPPED (not imp...) [ 59%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_contig_vs_every_other_clamp_meta_float16 SKIPPED (not impl...) [ 60%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_contig_vs_every_other_clamp_meta_float32 SKIPPED (not impl...) [ 60%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_contig_vs_every_other_clamp_meta_int64 SKIPPED (not implem...) [ 61%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_contig_vs_every_other_clamp_meta_uint8 SKIPPED (not implem...) [ 62%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_contig_vs_transposed_clamp_meta_bfloat16 SKIPPED (not impl...) [ 63%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_contig_vs_transposed_clamp_meta_float16 SKIPPED (not imple...) [ 64%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_contig_vs_transposed_clamp_meta_float32 SKIPPED (not imple...) [ 65%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_contig_vs_transposed_clamp_meta_int64 SKIPPED (not impleme...) [ 66%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_contig_vs_transposed_clamp_meta_uint8 SKIPPED (not impleme...) [ 67%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_non_contig_clamp_meta_bfloat16 SKIPPED (not implemented: C...) [ 68%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_non_contig_clamp_meta_float16 SKIPPED (not implemented: Co...) [ 69%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_non_contig_clamp_meta_float32 SKIPPED (not implemented: Co...) [ 70%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_non_contig_clamp_meta_int64 SKIPPED (not implemented: Coul...) [ 70%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_non_contig_clamp_meta_uint8 SKIPPED (not implemented: Coul...) [ 71%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_non_contig_expand_clamp_meta_bfloat16 SKIPPED (not impleme...) [ 72%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_non_contig_expand_clamp_meta_float16 SKIPPED (not implemen...) [ 73%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_non_contig_expand_clamp_meta_float32 SKIPPED (not implemen...) [ 74%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_non_contig_expand_clamp_meta_int64 SKIPPED (not implemente...) [ 75%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_non_contig_expand_clamp_meta_uint8 SKIPPED (not implemente...) [ 76%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_non_contig_index_clamp_meta_bfloat16 SKIPPED (not implemen...) [ 77%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_non_contig_index_clamp_meta_float16 SKIPPED (not implement...) [ 78%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_non_contig_index_clamp_meta_float32 SKIPPED (not implement...) [ 79%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_non_contig_index_clamp_meta_int64 SKIPPED (not implemented...) [ 80%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_non_contig_index_clamp_meta_uint8 SKIPPED (not implemented...) [ 80%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_out_arg_all_dtypes_clamp_meta_bfloat16 SKIPPED (not implem...) [ 81%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_out_arg_all_dtypes_clamp_meta_float16 SKIPPED (not impleme...) [ 82%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_out_arg_all_dtypes_clamp_meta_float32 SKIPPED (not impleme...) [ 83%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_out_arg_all_dtypes_clamp_meta_float64 SKIPPED (not impleme...) [ 84%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_out_arg_all_dtypes_clamp_meta_int16 SKIPPED (not implement...) [ 85%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_out_arg_all_dtypes_clamp_meta_int32 SKIPPED (not implement...) [ 86%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_out_arg_all_dtypes_clamp_meta_int64 SKIPPED (not implement...) [ 87%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_out_arg_all_dtypes_clamp_meta_int8 SKIPPED (not implemente...) [ 88%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_out_arg_all_dtypes_clamp_meta_uint8 SKIPPED (not implement...) [ 89%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_reference_numerics_extremal_clamp_meta_bfloat16 SKIPPED (n...) [ 90%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_reference_numerics_extremal_clamp_meta_float16 SKIPPED (no...) [ 90%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_reference_numerics_extremal_clamp_meta_float32 SKIPPED (no...) [ 91%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_reference_numerics_hard_clamp_meta_bfloat16 SKIPPED (not i...) [ 92%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_reference_numerics_hard_clamp_meta_float16 SKIPPED (not im...) [ 93%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_reference_numerics_hard_clamp_meta_float32 SKIPPED (not im...) [ 94%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_reference_numerics_hard_clamp_meta_int64 SKIPPED (not impl...) [ 95%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_reference_numerics_normal_clamp_meta_bfloat16 SKIPPED (not...) [ 96%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_reference_numerics_normal_clamp_meta_float16 SKIPPED (not ...) [ 97%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_reference_numerics_normal_clamp_meta_float32 SKIPPED (not ...) [ 98%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_reference_numerics_normal_clamp_meta_int64 SKIPPED (not im...) [ 99%]
test/test_unary_ufuncs.py::TestUnaryUfuncsMETA::test_reference_numerics_normal_clamp_meta_uint8 SKIPPED (not im...) [100%]

================================================= short test summary info =================================================

@mruberry
Copy link
Collaborator

I tried building with Ubuntu Xenial VM (wih gcc 5.4 and python 3.6) but unable to reproduce the error (logs below). Is it okay to just skip the extremal test for bfloat16 directly.

VM Log

Sure, see my above comment. Can we add a skip that's only active if the gcc is 5.4 or earlier, though?

@kshitij12345
Copy link
Collaborator Author

What I meant was that gcc 5.4 version itself doesn't look to be the culprit (as tests pass with gcc5.4 and python3.6). So adding such skip might be deceiving 🤔

@mruberry
Copy link
Collaborator

What I meant was that gcc 5.4 version itself doesn't look to be the culprit (as tests pass with gcc5.4 and python3.6). So adding such skip might be deceiving 🤔

I see, thank you for clarifying. We can skip it in this PR but let's file and link an issue so we don't forget the history and in the future when people look at the skip they'll understand it and maybe fix it.

Copy link
Collaborator

@mruberry mruberry left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cool!

@facebook-github-bot
Copy link
Contributor

@mruberry has imported this pull request. If you are a Facebook employee, you can view this diff on Phabricator.

@mruberry
Copy link
Collaborator

Here's the challenging follow-up question to this PR:

What about the existing clamp tests?

def test_clamp(self, device, dtype):

I think most of them can be removed or at least reduced now, right?

@codecov
Copy link

codecov bot commented Mar 28, 2021

Codecov Report

Merging #52194 (0f1846f) into master (6eaf969) will decrease coverage by 0.19%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master   #52194      +/-   ##
==========================================
- Coverage   77.44%   77.24%   -0.20%     
==========================================
  Files        1892     1892              
  Lines      186297   186306       +9     
==========================================
- Hits       144274   143912     -362     
- Misses      42023    42394     +371     

@facebook-github-bot
Copy link
Contributor

@mruberry merged this pull request in b7c5d57.

@kshitij12345
Copy link
Collaborator Author

Here's the challenging follow-up question to this PR:
What about the existing clamp tests?

Ah right! Will have a look and push a PR to remove or simplify redundancy. Thanks!!

@kshitij12345 kshitij12345 deleted the develop/support/unary-op-arg-kwarg branch March 30, 2021 05:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[tests][UnaryUfuncInfo] Improve TestUnaryUfuncs for ops with args/kwargs

4 participants